GUIDialog_AboutSUMO.cpp

Go to the documentation of this file.
00001 /****************************************************************************/
00007 // The application's "About" - dialog
00008 /****************************************************************************/
00009 // SUMO, Simulation of Urban MObility; see http://sumo.sourceforge.net/
00010 // Copyright 2001-2010 DLR (http://www.dlr.de/) and contributors
00011 /****************************************************************************/
00012 //
00013 //   This program is free software; you can redistribute it and/or modify
00014 //   it under the terms of the GNU General Public License as published by
00015 //   the Free Software Foundation; either version 2 of the License, or
00016 //   (at your option) any later version.
00017 //
00018 /****************************************************************************/
00019 
00020 
00021 // ===========================================================================
00022 // included modules
00023 // ===========================================================================
00024 #ifdef _MSC_VER
00025 #include <windows_config.h>
00026 #else
00027 #include <config.h>
00028 #endif
00029 
00030 #ifdef HAVE_VERSION_H
00031 #include <version.h>
00032 #endif
00033 
00034 #include "GUIDialog_AboutSUMO.h"
00035 #include <utils/gui/windows/GUIAppGlobals.h>
00036 #include <utils/foxtools/FXLinkLabel.h>
00037 #include <utils/gui/images/GUIIconSubSys.h>
00038 
00039 #ifdef CHECK_MEMORY_LEAKS
00040 #include <foreign/nvwa/debug_new.h>
00041 #endif // CHECK_MEMORY_LEAKS
00042 
00043 
00044 // ===========================================================================
00045 // bitmap definitions
00046 // ===========================================================================
00047 static const char* dlr_icon[] = {
00048     "40 42 3 1",
00049     "# c #000000",
00050     "a c #333333",
00051     ". c #ffffff",
00052     "........................................",
00053     "........................................",
00054     "...........................#............",
00055     "..........................##............",
00056     ".........................###............",
00057     "........................####............",
00058     ".......................#####............",
00059     "......................###.##............",
00060     ".....................###..##............",
00061     "....................###...##............",
00062     "...................###....##............",
00063     "..................###.....##............",
00064     ".........##############################.",
00065     "........##############################..",
00066     ".......###.....###.......###......###...",
00067     "......###.....###.......###......###....",
00068     ".....###.....###.......###......###.....",
00069     "....###.....###.......###......###......",
00070     "...###.....###.......###......###.......",
00071     "..##############################........",
00072     ".##############################.........",
00073     "...........##.....###...................",
00074     "...........##....###....................",
00075     "...........##...###.....................",
00076     "...........##..###......................",
00077     "...........##.###.......................",
00078     "...........#####........................",
00079     "...........####.........................",
00080     "...........###..........................",
00081     "...........##...........................",
00082     "...........#...#####....##.....#####....",
00083     "...............######...##.....######...",
00084     "...............##..###..##.....##..##...",
00085     "...............##...##..##.....##..##...",
00086     "...............##...##..##.....#####....",
00087     "...............##...##..##.....#####....",
00088     "...............##..###..##.....##.###...",
00089     "...............######...#####..##..##...",
00090     "...............#####....#####..##..###..",
00091     "........................................",
00092     "........................................",
00093     "........................................"
00094 };
00095 
00096 
00097 // ===========================================================================
00098 // method definitions
00099 // ===========================================================================
00100 GUIDialog_AboutSUMO::GUIDialog_AboutSUMO(FXWindow* parent,  const char* name,
00101         int x, int y)
00102         : FXDialogBox(parent, name, DECOR_CLOSE|DECOR_TITLE, x, y, 0, 0) {
00103     FXVerticalFrame *f1 =
00104         new FXVerticalFrame(this,
00105                             LAYOUT_TOP|FRAME_NONE|LAYOUT_FILL_X,
00106                             0,0,0,0, 0,0,1,1);
00107     // build icons
00108     FXHorizontalFrame *f2 =
00109         new FXHorizontalFrame(f1,
00110                               LAYOUT_TOP|LAYOUT_CENTER_X|FRAME_NONE, 0,0,0,0, 0, 0, 1, 1);
00111     myDLRIcon = new FXXPMIcon(getApp(), dlr_icon);
00112     new FXButton(f2,"\tDLR\t.", myDLRIcon, 0, 0,
00113                  LAYOUT_CENTER_Y|TEXT_OVER_ICON, 5, 0, 40+5, 0,  0,0,0,0);
00114     // "SUMO <VERSION>"
00115     FXVerticalFrame *f4 =
00116         new FXVerticalFrame(f2, FRAME_NONE, 0,0,0,0,   20,0,0,0);
00117     FXFont *fnt = new FXFont(getApp(), "Arial", 18, FXFont::Bold);
00118     FXLabel *l = new FXLabel(f4, (FXString)"SUMO " + VERSION_STRING, 0,
00119                              LAYOUT_CENTER_Y|LAYOUT_CENTER_X|JUSTIFY_CENTER_X|LABEL_NORMAL,
00120                              0,0,0,0, 0,0,0,0);
00121     l->setFont(fnt);
00122     new FXLabel(f4, "Simulation of Urban MObility", 0,
00123                 LAYOUT_CENTER_Y|LAYOUT_CENTER_X|JUSTIFY_CENTER_X|LABEL_NORMAL,
00124                 0,0,0,0, 0,0,0,0);
00125     //
00126     // additional infos
00127     FXVerticalFrame *f3 =
00128         new FXVerticalFrame(f1,
00129                             FRAME_NONE,
00130                             0,0,0,0, 0,0,0,0);
00131     // copyright notice
00132     new FXLabel(f3, "A microscopic, multi-modal, open source",
00133                 0, LABEL_NORMAL, 0,0,0,0, 0,0,0,0);
00134     new FXLabel(f3, "road traffic simulation.",
00135                 0, LABEL_NORMAL, 0,0,0,0, 0,0,0,0);
00136 
00137     new FXLabel(f3, "Copyright 2001-2010 DLR / Institute of Transportation Systems",
00138                 0, LAYOUT_CENTER_X|JUSTIFY_CENTER_X|LABEL_NORMAL, 0,0,0,0, 0,0,0,0);
00139 
00140     FXLinkLabel *link = new FXLinkLabel(f3, "http://sumo.sourceforge.net",
00141                                         0, LAYOUT_CENTER_X|JUSTIFY_CENTER_X|LABEL_NORMAL, 0,0,0,0, 5,5,5,5);
00142     link->setTipText("http://sumo.sourceforge.net");
00143     // ok-button
00144     new FXButton(f1,"OK\t\t", 0, this, ID_ACCEPT,
00145                  LAYOUT_FIX_WIDTH|LAYOUT_CENTER_X|JUSTIFY_CENTER_X|FRAME_THICK|FRAME_RAISED,
00146                  0, 0, 50, 30);
00147     setIcon(GUIIconSubSys::getIcon(ICON_APP));
00148 }
00149 
00150 
00151 void
00152 GUIDialog_AboutSUMO::create() {
00153     FXDialogBox::create();
00154     myDLRIcon->create();
00155 }
00156 
00157 
00158 GUIDialog_AboutSUMO::~GUIDialog_AboutSUMO() {
00159     delete myDLRIcon;
00160 }
00161 
00162 
00163 
00164 /****************************************************************************/
00165 

Generated on Wed May 5 00:06:29 2010 for Sumo - Simulation of Urban MObility by  doxygen 1.5.6