Line data Source code
1 : /****************************************************************************/ 2 : // Eclipse SUMO, Simulation of Urban MObility; see https://eclipse.dev/sumo 3 : // Copyright (C) 2001-2024 German Aerospace Center (DLR) and others. 4 : // This program and the accompanying materials are made available under the 5 : // terms of the Eclipse Public License 2.0 which is available at 6 : // https://www.eclipse.org/legal/epl-2.0/ 7 : // This Source Code may also be made available under the following Secondary 8 : // Licenses when the conditions for such availability set forth in the Eclipse 9 : // Public License 2.0 are satisfied: GNU General Public License, version 2 10 : // or later which is available at 11 : // https://www.gnu.org/licenses/old-licenses/gpl-2.0-standalone.html 12 : // SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-or-later 13 : /****************************************************************************/ 14 : /// @file GUIDialog_AboutSUMO.cpp 15 : /// @author Daniel Krajzewicz 16 : /// @author Michael Behrisch 17 : /// @date Mon, 08.03.2004 18 : /// 19 : // The application's "About" - dialog 20 : /****************************************************************************/ 21 : #include <config.h> 22 : 23 : #ifdef HAVE_VERSION_H 24 : #include <version.h> 25 : #endif 26 : 27 : #include <utils/common/MsgHandler.h> 28 : #include <utils/common/StdDefs.h> 29 : #include <utils/foxtools/MFXLinkLabel.h> 30 : #include <utils/gui/images/GUIIconSubSys.h> 31 : #include <utils/gui/div/GUIDesigns.h> 32 : #include "GUIDialog_AboutSUMO.h" 33 : 34 : 35 : // =========================================================================== 36 : // method definitions 37 : // =========================================================================== 38 0 : GUIDialog_AboutSUMO::GUIDialog_AboutSUMO(FXWindow* parent) : 39 0 : FXDialogBox(parent, TL("About Eclipse SUMO sumo-gui"), GUIDesignDialogBox) { 40 : // set dialog icon 41 0 : setIcon(GUIIconSubSys::getIcon(GUIIcon::SUMO_MINI)); 42 : 43 : // create frame for main info 44 0 : FXHorizontalFrame* mainInfoFrame = new FXHorizontalFrame(this, GUIDesignAuxiliarHorizontalFrame); 45 : 46 : // SUMO Icon 47 0 : new FXLabel(mainInfoFrame, "", GUIIconSubSys::getIcon(GUIIcon::SUMO_LOGO), GUIDesignLabelIcon); 48 : 49 : // "SUMO <VERSION>" 50 0 : FXVerticalFrame* descriptionFrame = new FXVerticalFrame(mainInfoFrame, GUIDesignLabelAboutInfo); 51 0 : myHeadlineFont = new FXFont(getApp(), "Arial", 18, FXFont::Bold); 52 0 : (new FXLabel(descriptionFrame, "SUMO sumo-gui " VERSION_STRING, nullptr, GUIDesignLabelAboutInfo))->setFont(myHeadlineFont); 53 0 : new FXLabel(descriptionFrame, "Eclipse SUMO - Simulation of Urban MObility", nullptr, GUIDesignLabelAboutInfo); 54 0 : new FXLabel(descriptionFrame, TL("Graphical user interface for the microscopic, multi-modal traffic simulation SUMO."), nullptr, GUIDesignLabelAboutInfo); 55 : #ifdef JPS_VERSION 56 : new FXLabel(descriptionFrame, TLF("Includes JuPedSim %.%.%", int(JPS_VERSION / 100), int(JPS_VERSION % 100 / 10), JPS_VERSION % 10).c_str(), nullptr, GUIDesignLabelAboutInfo); 57 : #endif 58 0 : new FXLabel(descriptionFrame, HAVE_ENABLED, nullptr, GUIDesignLabelAboutInfo); 59 : 60 : // copyright notice 61 0 : new FXLabel(this, "Copyright (C) 2001-2024 German Aerospace Center (DLR) and others.", nullptr, GUIDesignLabelAboutInfo); 62 0 : new FXLabel(this, TL("This application is based on code provided by the Eclipse SUMO project."), nullptr, GUIDesignLabelAboutInfo); 63 0 : new FXLabel(this, TL("These core components are available under the conditions of the Eclipse Public License v2."), nullptr, GUIDesignLabelAboutInfo); 64 0 : (new MFXLinkLabel(this, "SPDX-License-Identifier: EPL-2.0", nullptr, GUIDesignLabelAboutInfo))->setTipText("https://www.eclipse.org/legal/epl-v20.html"); 65 : 66 : // link to homepage 67 0 : (new MFXLinkLabel(this, "https://www.eclipse.dev/sumo", nullptr, GUIDesignLabel(JUSTIFY_NORMAL)))->setTipText("https://www.eclipse.dev/sumo"); 68 : 69 : // centered ok-button 70 0 : FXHorizontalFrame* buttonFrame = new FXHorizontalFrame(this, GUIDesignHorizontalFrame); 71 0 : new FXHorizontalFrame(buttonFrame, GUIDesignAuxiliarHorizontalFrame); 72 0 : GUIDesigns::buildFXButton(buttonFrame, TL("OK"), "", "", GUIIconSubSys::getIcon(GUIIcon::ACCEPT), this, ID_ACCEPT, GUIDesignButtonOK); 73 0 : new FXHorizontalFrame(buttonFrame, GUIDesignAuxiliarHorizontalFrame); 74 0 : } 75 : 76 : 77 : void 78 0 : GUIDialog_AboutSUMO::create() { 79 0 : FXDialogBox::create(); 80 0 : } 81 : 82 : 83 0 : GUIDialog_AboutSUMO::~GUIDialog_AboutSUMO() { 84 0 : delete myHeadlineFont; 85 0 : } 86 : 87 : 88 : /****************************************************************************/