#include <GUIApplicationWindow.h>

Contains the file opening support and a canvas to display the simulation representations in.
Beside views on the simulation, showed within a MDI-window, the main window may also have some further views (children) assigned which are stored within a separate list.
Definition at line 72 of file GUIApplicationWindow.h.
Public Member Functions | |
| void | addChild (FXMainWindow *child, bool updateOnSimStep=true) |
| void | addChild (FXMDIChild *child, bool updateOnSimStep=true) |
| Adds a further child window to the list. | |
| virtual void | create () |
| Creates the main window (required by FOX). | |
| void | dependentBuild (bool game) |
| virtual void | detach () |
| Detaches the tool/menu bar. | |
| FXFont * | getBoldFont () |
| FXGLCanvas * | getBuildGLCanvas () const |
| FXLabel & | getCartesianLabel () |
| SUMOTime | getCurrentSimTime () const |
| FXCursor * | getDefaultCursor () |
| FXLabel & | getGeoLabel () |
| FXGLVisual * | getGLVisual () const |
| GUIApplicationWindow (FXApp *a, const std::string &configPattern) | |
| Constructor. | |
| bool | isGaming () const throw () |
| void | loadOnStartup (const std::string &config, bool run) |
| bool | loadSelection (const std::string &file, std::string &msg) throw () |
| Loads a selection from a given file. | |
| void | removeChild (FXMainWindow *child) |
| void | removeChild (FXMDIChild *child) |
| removes the given child window from the list | |
| void | setStatusBarText (const std::string &) |
| void | updateChildren () |
| virtual | ~GUIApplicationWindow () |
| Destructor. | |
Inter-thread event handling | |
| virtual void | eventOccured () |
| void | handleEvent_Message (GUIEvent *e) |
| void | handleEvent_SimulationEnded (GUIEvent *e) |
| void | handleEvent_SimulationLoaded (GUIEvent *e) |
| void | handleEvent_SimulationStep (GUIEvent *e) |
FOX-callbacks | |
| long | onCmdAbout (FXObject *, FXSelector, void *) |
| Shows the about dialog. | |
| long | onCmdAppSettings (FXObject *, FXSelector, void *) |
| Opens the application settings menu. | |
| long | onCmdClearMsgWindow (FXObject *, FXSelector, void *) |
| long | onCmdClose (FXObject *, FXSelector, void *) |
| long | onCmdEditBreakpoints (FXObject *, FXSelector, void *) |
| long | onCmdEditChosen (FXObject *, FXSelector, void *) |
| long | onCmdGaming (FXObject *, FXSelector, void *) |
| Toggle gaming mode. | |
| long | onCmdNewView (FXObject *, FXSelector, void *) |
| long | onCmdOpenConfiguration (FXObject *, FXSelector, void *) |
| long | onCmdOpenNetwork (FXObject *, FXSelector, void *) |
| long | onCmdOpenRecent (FXObject *, FXSelector, void *) |
| long | onCmdQuit (FXObject *, FXSelector, void *) |
| Called by FOX if the application shall be closed Called either by FileMenu->Quit, the normal close-menu or SIGINT. | |
| long | onCmdReload (FXObject *, FXSelector, void *) |
| long | onCmdStart (FXObject *, FXSelector, void *) |
| long | onCmdStep (FXObject *, FXSelector, void *) |
| long | onCmdStop (FXObject *, FXSelector, void *) |
| long | onLoadThreadEvent (FXObject *, FXSelector, void *) |
| long | onRunThreadEvent (FXObject *, FXSelector, void *) |
| long | onUpdAddMicro (FXObject *, FXSelector, void *) |
| virtual long | onUpdEditBreakpoints (FXObject *, FXSelector, void *) |
| long | onUpdEditChosen (FXObject *sender, FXSelector, void *ptr) |
| long | onUpdOpen (FXObject *, FXSelector, void *) |
| long | onUpdOpenRecent (FXObject *, FXSelector, void *) |
| long | onUpdReload (FXObject *, FXSelector, void *) |
| virtual long | onUpdStart (FXObject *, FXSelector, void *) |
| long | onUpdStep (FXObject *, FXSelector, void *) |
| long | onUpdStop (FXObject *, FXSelector, void *) |
Protected Member Functions | |
| virtual void | addToWindowsMenu (FXMenuPane *) |
| virtual void | buildToolBars () |
| Builds the tool bar. | |
| virtual void | fillMenuBar () |
| Builds the menu bar. | |
| GUIApplicationWindow () | |
| FOX needs this for static members. | |
Protected Attributes | |
| bool | hadDependentBuild |
| bool | myAmGaming |
| information whether the gui is currently in gaming mode | |
| bool | myAmLoading |
| information whether the gui is currently loading and the load-options shall be greyed out | |
| FXFont * | myBoldFont |
| Font used for popup-menu titles. | |
| FXDockSite * | myBottomDock |
| FXLabel * | myCartesianCoordinate |
| Labels for the current cartesian and geo-coordinate. | |
| FXHorizontalFrame * | myCartesianFrame |
| std::string | myConfigPattern |
| Input file pattern. | |
| FXMenuPane * | myEditMenu |
| MFXEventQue | myEvents |
| List of got requests. | |
| FXMenuPane * | myFileMenu |
| the submenus | |
| FXLabel * | myGeoCoordinate |
| FXHorizontalFrame * | myGeoFrame |
| FXGLVisual * | myGLVisual |
| The gl-visual used. | |
| FXMenuPane * | myHelpMenu |
| FXEX::FXLCDLabel * | myLCDLabel |
| the simulation step display | |
| FXDockSite * | myLeftDock |
| GUILoadThread * | myLoadThread |
| FXEX::FXThreadEvent | myLoadThreadEvent |
| io-event with the load-thread | |
| FXSplitter * | myMainSplitter |
| The splitter that divides the main window into vies and the log window. | |
| FXMDIClient * | myMDIClient |
| The multi view panel. | |
| FXMDIMenu * | myMDIMenu |
| The menu used for the MDI-windows. | |
| FXMenuBar * | myMenuBar |
| The application menu bar. | |
| FXToolBarShell * | myMenuBarDrag |
| GUIMessageWindow * | myMessageWindow |
| A window to display messages, warnings and error in. | |
| std::string | myName |
| FXRecentFiles | myRecentConfigs |
| List of recent config files. | |
| FXRecentFiles | myRecentNets |
| List of recent nets. | |
| FXDockSite * | myRightDock |
| bool | myRunAtBegin |
| GUIRunThread * | myRunThread |
| FXEX::FXThreadEvent | myRunThreadEvent |
| io-event with the run-thread | |
| FXMenuPane * | mySettingsMenu |
| FXdouble | mySimDelay |
| The simulation delay. | |
| FXRealSpinDial * | mySimDelayTarget |
| FXStatusBar * | myStatusbar |
| The status bar. | |
| std::vector< FXMDIChild * > | mySubWindows |
| FXToolBar * | myToolBar1 |
| The application tool bar. | |
| FXToolBar * | myToolBar2 |
| FXToolBar * | myToolBar3 |
| FXToolBar * | myToolBar4 |
| FXToolBar * | myToolBar5 |
| FXToolBarShell * | myToolBarDrag1 |
| for some menu detaching fun | |
| FXToolBarShell * | myToolBarDrag2 |
| FXToolBarShell * | myToolBarDrag3 |
| FXToolBarShell * | myToolBarDrag4 |
| FXToolBarShell * | myToolBarDrag5 |
| FXDockSite * | myTopDock |
| MFXMutex | myTrackerLock |
| A lock to make the removal and addition of trackers secure. | |
| std::vector< FXMainWindow * > | myTrackerWindows |
| size_t | myViewNumber |
| The current view number. | |
| bool | myWasStarted |
| FXMenuPane * | myWindowsMenu |
Private Member Functions | |
| void | closeAllWindows () |
| void | load (const std::string &file, bool isNet, bool isReload=false) |
| GUISUMOAbstractView * | openNewView () |
| GUIApplicationWindow::GUIApplicationWindow | ( | FXApp * | a, | |
| const std::string & | configPattern | |||
| ) |
Constructor.
| [in] | a | The FOX application |
| [in] | configPattern | The pattern used for loading configurations |
| GUIApplicationWindow::~GUIApplicationWindow | ( | ) | [virtual] |
Destructor.
Definition at line 246 of file GUIApplicationWindow.cpp.
References GUITexturesHelper::close(), GUIIconSubSys::close(), closeAllWindows(), MFXEventQue::empty(), myEditMenu, myEvents, myFileMenu, GUIMainWindow::myGLVisual, myHelpMenu, myLoadThread, myRunThread, mySettingsMenu, myToolBarDrag1, myWindowsMenu, MFXEventQue::pop(), GUIRunThread::prepareDestruction(), and MFXEventQue::top().
00246 { 00247 myRunThread->prepareDestruction(); 00248 myRunThread->join(); 00249 closeAllWindows(); 00250 // 00251 GUIIconSubSys::close(); 00252 GUITexturesHelper::close(); 00253 delete myGLVisual; 00254 // delete some non-parented windows 00255 delete myToolBarDrag1; 00256 // 00257 delete myRunThread; 00258 delete myFileMenu; 00259 delete myEditMenu; 00260 delete mySettingsMenu; 00261 delete myWindowsMenu; 00262 delete myHelpMenu; 00263 00264 delete myLoadThread; 00265 00266 while (!myEvents.empty()) { 00267 // get the next event 00268 GUIEvent *e = static_cast<GUIEvent*>(myEvents.top()); 00269 myEvents.pop(); 00270 delete e; 00271 } 00272 }
| GUIApplicationWindow::GUIApplicationWindow | ( | ) | [inline, protected] |
| void GUIMainWindow::addChild | ( | FXMainWindow * | child, | |
| bool | updateOnSimStep = true | |||
| ) | [inherited] |
Definition at line 89 of file GUIMainWindow.cpp.
References MFXMutex::lock(), GUIMainWindow::myTrackerLock, GUIMainWindow::myTrackerWindows, and MFXMutex::unlock().
00089 { 00090 myTrackerLock.lock(); 00091 myTrackerWindows.push_back(child); 00092 myTrackerLock.unlock(); 00093 }
| void GUIMainWindow::addChild | ( | FXMDIChild * | child, | |
| bool | updateOnSimStep = true | |||
| ) | [inherited] |
Adds a further child window to the list.
Definition at line 73 of file GUIMainWindow.cpp.
References GUIMainWindow::mySubWindows.
Referenced by GUIParameterTableWindow::closeBuilding(), and GUIParameterTracker::GUIParameterTracker().
00073 { 00074 mySubWindows.push_back(child); 00075 }
| virtual void GUIApplicationWindow::addToWindowsMenu | ( | FXMenuPane * | ) | [inline, protected, virtual] |
| void GUIApplicationWindow::buildToolBars | ( | ) | [protected, virtual] |
Builds the tool bar.
Definition at line 410 of file GUIApplicationWindow.cpp.
References GUIIconSubSys::getIcon(), ICON_MICROVIEW, ICON_OPEN_CONFIG, ICON_OPEN_NET, ICON_RELOAD, ICON_START, ICON_STEP, ICON_STOP, FXEX::LCDLABEL_LEADING_ZEROS, MID_NEW_MICROVIEW, MID_OPEN_CONFIG, MID_OPEN_NETWORK, MID_RELOAD, MID_SIMDELAY, MID_START, MID_STEP, MID_STOP, myLCDLabel, mySimDelayTarget, myToolBar1, myToolBar2, myToolBar3, myToolBar4, myToolBar5, myToolBarDrag1, myToolBarDrag2, myToolBarDrag3, myToolBarDrag4, myToolBarDrag5, GUIMainWindow::myTopDock, FXEX::FXLCDLabel::setGroove(), FXEX::FXLCDLabel::setHorizontal(), FX::FXRealSpinDial::setIncrements(), FX::FXRealSpinDial::setNumberFormat(), FX::FXRealSpinDial::setRange(), FXEX::FXLCDLabel::setText(), FXEX::FXLCDLabel::setThickness(), FX::FXRealSpinDial::setValue(), and FXEX::FXLCDLabel::setVertical().
Referenced by dependentBuild().
00410 { 00411 // build tool bars 00412 { 00413 // file and simulation tool bar 00414 myToolBarDrag1=new FXToolBarShell(this,FRAME_NORMAL); 00415 myToolBar1 = new FXToolBar(myTopDock,myToolBarDrag1, 00416 LAYOUT_DOCK_NEXT|LAYOUT_SIDE_TOP|FRAME_RAISED); 00417 new FXToolBarGrip(myToolBar1, myToolBar1, FXToolBar::ID_TOOLBARGRIP, 00418 TOOLBARGRIP_DOUBLE); 00419 // build file tools 00420 new FXButton(myToolBar1,"\t\tOpen a simulation (Configuration file).", 00421 GUIIconSubSys::getIcon(ICON_OPEN_CONFIG), this, MID_OPEN_CONFIG, 00422 ICON_ABOVE_TEXT|BUTTON_TOOLBAR|FRAME_RAISED|LAYOUT_TOP|LAYOUT_LEFT); 00423 new FXButton(myToolBar1,"\t\tOpen a network.", 00424 GUIIconSubSys::getIcon(ICON_OPEN_NET), this, MID_OPEN_NETWORK, 00425 ICON_ABOVE_TEXT|BUTTON_TOOLBAR|FRAME_RAISED|LAYOUT_TOP|LAYOUT_LEFT); 00426 new FXButton(myToolBar1,"\t\tReloads the simulation / the network.", 00427 GUIIconSubSys::getIcon(ICON_RELOAD), this, MID_RELOAD, 00428 ICON_ABOVE_TEXT|BUTTON_TOOLBAR|FRAME_RAISED|LAYOUT_TOP|LAYOUT_LEFT); 00429 } 00430 { 00431 // build simulation tools 00432 myToolBarDrag2=new FXToolBarShell(this,FRAME_NORMAL); 00433 myToolBar2 = new FXToolBar(myTopDock,myToolBarDrag2, 00434 LAYOUT_DOCK_SAME|LAYOUT_SIDE_TOP|FRAME_RAISED); 00435 new FXToolBarGrip(myToolBar2, myToolBar2, FXToolBar::ID_TOOLBARGRIP, 00436 TOOLBARGRIP_DOUBLE); 00437 new FXButton(myToolBar2,"\t\tStart the loaded simulation.", 00438 GUIIconSubSys::getIcon(ICON_START), this, MID_START, 00439 ICON_ABOVE_TEXT|BUTTON_TOOLBAR|FRAME_RAISED|LAYOUT_TOP|LAYOUT_LEFT); 00440 new FXButton(myToolBar2,"\t\tStop the running simulation.", 00441 GUIIconSubSys::getIcon(ICON_STOP), this, MID_STOP, 00442 ICON_ABOVE_TEXT|BUTTON_TOOLBAR|FRAME_RAISED|LAYOUT_TOP|LAYOUT_LEFT); 00443 new FXButton(myToolBar2,"\t\tPerform a single simulation step.", 00444 GUIIconSubSys::getIcon(ICON_STEP), this, MID_STEP, 00445 ICON_ABOVE_TEXT|BUTTON_TOOLBAR|FRAME_RAISED|LAYOUT_TOP|LAYOUT_LEFT); 00446 } 00447 { 00448 // Simulation Step Display 00449 myToolBarDrag3=new FXToolBarShell(this,FRAME_NORMAL); 00450 myToolBar3 = new FXToolBar(myTopDock,myToolBarDrag3, 00451 LAYOUT_DOCK_SAME|LAYOUT_SIDE_TOP|FRAME_RAISED); 00452 new FXToolBarGrip(myToolBar3, myToolBar3, FXToolBar::ID_TOOLBARGRIP, 00453 TOOLBARGRIP_DOUBLE); 00454 new FXLabel(myToolBar3, "Next Step:", 0, LAYOUT_CENTER_Y); 00455 myLCDLabel = new FXEX::FXLCDLabel(myToolBar3, 6, 0, 0, 00456 FXEX::LCDLABEL_LEADING_ZEROS); 00457 myLCDLabel->setHorizontal(2); 00458 myLCDLabel->setVertical(6); 00459 myLCDLabel->setThickness(2); 00460 myLCDLabel->setGroove(2); 00461 myLCDLabel->setText("-----------"); 00462 } 00463 { 00464 // Simulation Delay 00465 myToolBarDrag4=new FXToolBarShell(this,FRAME_NORMAL); 00466 myToolBar4 = new FXToolBar(myTopDock,myToolBarDrag4, 00467 LAYOUT_DOCK_SAME|LAYOUT_SIDE_TOP|FRAME_RAISED|LAYOUT_FILL_Y); 00468 new FXToolBarGrip(myToolBar4, myToolBar4, FXToolBar::ID_TOOLBARGRIP, 00469 TOOLBARGRIP_DOUBLE); 00470 new FXLabel(myToolBar4, "Delay (ms):", 0, LAYOUT_CENTER_Y); 00471 mySimDelayTarget = 00472 new FXRealSpinDial(myToolBar4, 7, 0, MID_SIMDELAY, 00473 LAYOUT_TOP|FRAME_SUNKEN|FRAME_THICK|LAYOUT_FILL_Y); 00474 mySimDelayTarget->setNumberFormat(0); 00475 mySimDelayTarget->setIncrements(1,10,10); 00476 mySimDelayTarget->setRange(0,1000); 00477 mySimDelayTarget->setValue(0); 00478 } 00479 { 00480 // Views 00481 myToolBarDrag5=new FXToolBarShell(this,FRAME_NORMAL); 00482 myToolBar5 = new FXToolBar(myTopDock,myToolBarDrag5, 00483 LAYOUT_DOCK_SAME|LAYOUT_SIDE_TOP|FRAME_RAISED); 00484 new FXToolBarGrip(myToolBar5, myToolBar5, FXToolBar::ID_TOOLBARGRIP, 00485 TOOLBARGRIP_DOUBLE); 00486 // build view tools 00487 new FXButton(myToolBar5,"\t\tOpen a new microscopic view.", 00488 GUIIconSubSys::getIcon(ICON_MICROVIEW), this, MID_NEW_MICROVIEW, 00489 ICON_ABOVE_TEXT|BUTTON_TOOLBAR|FRAME_RAISED|LAYOUT_TOP|LAYOUT_LEFT); 00490 } 00491 }
| void GUIApplicationWindow::closeAllWindows | ( | ) | [private] |
this method closes all windows and deletes the current simulation
Definition at line 955 of file GUIApplicationWindow.cpp.
References GUIMessageWindow::addSeparator(), GUISelectedStorage::clear(), GUIRunThread::deleteSim(), MFXUtils::getTitleText(), gSelected, MFXMutex::lock(), GUIMainWindow::myCartesianCoordinate, GUIMainWindow::myGeoCoordinate, myLCDLabel, myMessageWindow, myRunThread, GUIMainWindow::mySubWindows, GUIMainWindow::myTrackerLock, GUIMainWindow::myTrackerWindows, FXEX::FXLCDLabel::setText(), and MFXMutex::unlock().
Referenced by handleEvent_SimulationEnded(), handleEvent_SimulationLoaded(), load(), onCmdClose(), and ~GUIApplicationWindow().
00955 { 00956 myTrackerLock.lock(); 00957 myLCDLabel->setText("-----------"); 00958 // remove trackers and other external windows 00959 size_t i; 00960 for (i=0; i<mySubWindows.size(); ++i) { 00961 mySubWindows[i]->destroy(); 00962 } 00963 for (i=0; i<myTrackerWindows.size(); ++i) { 00964 myTrackerWindows[i]->destroy(); 00965 } 00966 // delete the simulation 00967 myRunThread->deleteSim(); 00968 // reset the caption 00969 setTitle(MFXUtils::getTitleText(("SUMO " + std::string(VERSION_STRING)).c_str())); 00970 // delete other children 00971 while (myTrackerWindows.size()!=0) { 00972 delete myTrackerWindows[0]; 00973 } 00974 while (mySubWindows.size()!=0) { 00975 delete mySubWindows[0]; 00976 } 00977 mySubWindows.clear(); 00978 // clear selected items 00979 gSelected.clear(); 00980 // add a separator to the log 00981 myMessageWindow->addSeparator(); 00982 myTrackerLock.unlock(); 00983 // remove coordinate information 00984 myGeoCoordinate->setText("N/A"); 00985 myCartesianCoordinate->setText("N/A"); 00986 // 00987 update(); 00988 }
| void GUIApplicationWindow::create | ( | ) | [virtual] |
Creates the main window (required by FOX).
Definition at line 217 of file GUIApplicationWindow.cpp.
References gCurrentFolder, GUIMainWindow::myCartesianFrame, myEditMenu, myFileMenu, GUIMainWindow::myGeoFrame, myHelpMenu, myMenuBarDrag, mySettingsMenu, myToolBarDrag1, myToolBarDrag2, and myWindowsMenu.
00217 { 00218 if (getApp()->reg().readIntEntry("SETTINGS", "maximized", 0)==0) { 00219 setX(getApp()->reg().readIntEntry("SETTINGS", "x", 150)); 00220 setY(getApp()->reg().readIntEntry("SETTINGS", "y", 150)); 00221 setWidth(getApp()->reg().readIntEntry("SETTINGS", "width", 600)); 00222 setHeight(getApp()->reg().readIntEntry("SETTINGS", "height", 400)); 00223 } 00224 gCurrentFolder = getApp()->reg().readStringEntry("SETTINGS", "basedir", ""); 00225 FXMainWindow::create(); 00226 myMenuBarDrag->create(); 00227 myToolBarDrag1->create(); 00228 myToolBarDrag2->create(); 00229 myFileMenu->create(); 00230 myEditMenu->create(); 00231 mySettingsMenu->create(); 00232 myWindowsMenu->create(); 00233 myHelpMenu->create(); 00234 00235 FXint width = getApp()->getNormalFont()->getTextWidth("8", 1)*22; 00236 myCartesianFrame->setWidth(width); 00237 myGeoFrame->setWidth(width); 00238 00239 show(PLACEMENT_SCREEN); 00240 if (getApp()->reg().readIntEntry("SETTINGS", "maximized", 0)==1) { 00241 maximize(); 00242 } 00243 }
| void GUIApplicationWindow::dependentBuild | ( | bool | game | ) |
Definition at line 140 of file GUIApplicationWindow.cpp.
References buildToolBars(), fillMenuBar(), GUIIconSubSys::getIcon(), MFXUtils::getTitleText(), hadDependentBuild, ICON_APP, ID_LOADTHREAD_EVENT, ID_RUNTHREAD_EVENT, GUITexturesHelper::init(), MID_WINDOW, GUIMainWindow::myCartesianCoordinate, GUIMainWindow::myCartesianFrame, myEvents, GUIMainWindow::myGeoCoordinate, GUIMainWindow::myGeoFrame, myLoadThread, myLoadThreadEvent, myMainSplitter, GUIMainWindow::myMDIClient, myMDIMenu, myMenuBar, myMenuBarDrag, myMessageWindow, myRunThread, myRunThreadEvent, mySimDelayTarget, GUIMainWindow::myStatusbar, GUIMainWindow::myTopDock, onCmdGaming(), FXEX::FXBaseObject::setSelector(), and FXEX::FXBaseObject::setTarget().
Referenced by main().
00140 { 00141 // do this not twice 00142 if (hadDependentBuild) { 00143 return; 00144 } 00145 hadDependentBuild = true; 00146 00147 setTarget(this); 00148 setSelector(MID_WINDOW); 00149 GUITexturesHelper::init(getApp()); 00150 00151 // build menu bar 00152 myMenuBarDrag=new FXToolBarShell(this,FRAME_NORMAL); 00153 myMenuBar = new FXMenuBar(myTopDock, myMenuBarDrag, 00154 LAYOUT_SIDE_TOP|LAYOUT_FILL_X|FRAME_RAISED); 00155 new FXToolBarGrip(myMenuBar, myMenuBar, FXMenuBar::ID_TOOLBARGRIP, 00156 TOOLBARGRIP_DOUBLE); 00157 buildToolBars(); 00158 // build the thread - io 00159 myLoadThreadEvent.setTarget(this), 00160 myLoadThreadEvent.setSelector(ID_LOADTHREAD_EVENT); 00161 myRunThreadEvent.setTarget(this), 00162 myRunThreadEvent.setSelector(ID_RUNTHREAD_EVENT); 00163 00164 // build the status bar 00165 myStatusbar = new FXStatusBar(this, LAYOUT_SIDE_BOTTOM|LAYOUT_FILL_X|FRAME_RAISED); 00166 { 00167 myGeoFrame = 00168 new FXHorizontalFrame(myStatusbar, LAYOUT_FIX_WIDTH|LAYOUT_FILL_Y|LAYOUT_RIGHT|FRAME_SUNKEN, 00169 0,0,20,0, 0,0,0,0, 0,0); 00170 myGeoCoordinate = new FXLabel(myGeoFrame, "N/A", 0, LAYOUT_CENTER_Y); 00171 myCartesianFrame = 00172 new FXHorizontalFrame(myStatusbar, LAYOUT_FIX_WIDTH|LAYOUT_FILL_Y|LAYOUT_RIGHT|FRAME_SUNKEN, 00173 0,0,20,0, 0,0,0,0, 0,0); 00174 myCartesianCoordinate = new FXLabel(myCartesianFrame, "N/A", 0, LAYOUT_CENTER_Y); 00175 } 00176 00177 // make the window a mdi-window 00178 myMainSplitter = new FXSplitter(this, 00179 SPLITTER_REVERSED|SPLITTER_VERTICAL|LAYOUT_FILL_X|LAYOUT_FILL_Y|SPLITTER_TRACKING|FRAME_RAISED|FRAME_THICK); 00180 myMDIClient = new FXMDIClient(myMainSplitter, 00181 LAYOUT_FILL_X|LAYOUT_FILL_Y|FRAME_SUNKEN|FRAME_THICK); 00182 myMDIMenu = new FXMDIMenu(this,myMDIClient); 00183 new FXMDIWindowButton(myMenuBar,myMDIMenu,myMDIClient, 00184 FXMDIClient::ID_MDI_MENUWINDOW,LAYOUT_LEFT); 00185 new FXMDIDeleteButton(myMenuBar,myMDIClient, 00186 FXMDIClient::ID_MDI_MENUCLOSE,FRAME_RAISED|LAYOUT_RIGHT); 00187 new FXMDIRestoreButton(myMenuBar,myMDIClient, 00188 FXMDIClient::ID_MDI_MENURESTORE,FRAME_RAISED|LAYOUT_RIGHT); 00189 new FXMDIMinimizeButton(myMenuBar,myMDIClient, 00190 FXMDIClient::ID_MDI_MENUMINIMIZE,FRAME_RAISED|LAYOUT_RIGHT); 00191 00192 // build the message window 00193 myMessageWindow = new GUIMessageWindow(myMainSplitter); 00194 // fill menu and tool bar 00195 fillMenuBar(); 00196 if (game) { 00197 onCmdGaming(0,0,0); 00198 myMenuBar->hide(); 00199 myTopDock->hide(); 00200 } 00201 // build additional threads 00202 myLoadThread = new GUILoadThread(this, myEvents, myLoadThreadEvent); 00203 myRunThread = new GUIRunThread(this, *mySimDelayTarget, myEvents, 00204 myRunThreadEvent); 00205 // set the status bar 00206 myStatusbar->getStatusLine()->setText("Ready."); 00207 // set the caption 00208 setTitle(MFXUtils::getTitleText(("SUMO " + std::string(VERSION_STRING)).c_str())); 00209 00210 // start the simulation-thread (it will loop until the application ends deciding by itself whether to perform a step or not) 00211 myRunThread->start(); 00212 setIcon(GUIIconSubSys::getIcon(ICON_APP)); 00213 }
| void GUIApplicationWindow::detach | ( | ) | [virtual] |
Detaches the tool/menu bar.
Definition at line 276 of file GUIApplicationWindow.cpp.
References myMenuBarDrag, and myToolBarDrag1.
00276 { 00277 FXMainWindow::detach(); 00278 myMenuBarDrag->detach(); 00279 myToolBarDrag1->detach(); 00280 }
| void GUIApplicationWindow::eventOccured | ( | ) | [virtual] |
Implements MFXInterThreadEventClient.
Definition at line 784 of file GUIApplicationWindow.cpp.
References MFXEventQue::empty(), EVENT_ERROR_OCCURED, EVENT_MESSAGE_OCCURED, EVENT_SIMULATION_ENDED, EVENT_SIMULATION_LOADED, EVENT_SIMULATION_STEP, EVENT_WARNING_OCCURED, GUIEvent::getOwnType(), handleEvent_Message(), handleEvent_SimulationEnded(), handleEvent_SimulationLoaded(), handleEvent_SimulationStep(), myEvents, myToolBar2, myToolBar3, MFXEventQue::pop(), and MFXEventQue::top().
Referenced by onLoadThreadEvent(), and onRunThreadEvent().
00784 { 00785 while (!myEvents.empty()) { 00786 // get the next event 00787 GUIEvent *e = static_cast<GUIEvent*>(myEvents.top()); 00788 myEvents.pop(); 00789 // process 00790 switch (e->getOwnType()) { 00791 case EVENT_SIMULATION_LOADED: 00792 handleEvent_SimulationLoaded(e); 00793 break; 00794 case EVENT_SIMULATION_STEP: 00795 handleEvent_SimulationStep(e); 00796 break; 00797 case EVENT_MESSAGE_OCCURED: 00798 case EVENT_WARNING_OCCURED: 00799 case EVENT_ERROR_OCCURED: 00800 handleEvent_Message(e); 00801 break; 00802 case EVENT_SIMULATION_ENDED: 00803 handleEvent_SimulationEnded(e); 00804 break; 00805 default: 00806 break; 00807 } 00808 delete e; 00809 } 00810 myToolBar2->forceRefresh(); 00811 myToolBar3->forceRefresh(); 00812 }
| void GUIApplicationWindow::fillMenuBar | ( | ) | [protected, virtual] |
Builds the menu bar.
Definition at line 284 of file GUIApplicationWindow.cpp.
References addToWindowsMenu(), GUIIconSubSys::getIcon(), ICON_APP, ICON_CLOSE, ICON_FLAG, ICON_OPEN_CONFIG, ICON_OPEN_NET, ICON_RELOAD, ICON_WINDOWS_CASCADE, ICON_WINDOWS_TILE_HORI, ICON_WINDOWS_TILE_VERT, MID_ABOUT, MID_APPSETTINGS, MID_CLEARMESSAGEWINDOW, MID_CLOSE, MID_EDIT_BREAKPOINTS, MID_EDITCHOSEN, MID_GAMING, MID_OPEN_CONFIG, MID_OPEN_NETWORK, MID_QUIT, MID_RECENTFILE, MID_RELOAD, myEditMenu, myFileMenu, myHelpMenu, GUIMainWindow::myMDIClient, myMenuBar, myMessageWindow, myRecentConfigs, myRecentNets, mySettingsMenu, GUIMainWindow::myStatusbar, myToolBar3, myToolBar4, and myWindowsMenu.
Referenced by dependentBuild().
00284 { 00285 // build file menu 00286 myFileMenu = new FXMenuPane(this); 00287 new FXMenuTitle(myMenuBar,"&File",NULL,myFileMenu); 00288 new FXMenuCommand(myFileMenu, 00289 "&Open Simulation...\tCtl-O\tOpen a simulation (Configuration file).", 00290 GUIIconSubSys::getIcon(ICON_OPEN_CONFIG),this,MID_OPEN_CONFIG); 00291 new FXMenuCommand(myFileMenu, 00292 "Open &Network...\tCtl-N\tOpen a network.", 00293 GUIIconSubSys::getIcon(ICON_OPEN_NET),this,MID_OPEN_NETWORK); 00294 new FXMenuCommand(myFileMenu, 00295 "&Reload\tCtl-R\tReloads the simulation / the network.", 00296 GUIIconSubSys::getIcon(ICON_RELOAD),this,MID_RELOAD); 00297 new FXMenuSeparator(myFileMenu); 00298 new FXMenuCommand(myFileMenu, 00299 "&Close\tCtl-C\tClose the simulation.", 00300 GUIIconSubSys::getIcon(ICON_CLOSE),this,MID_CLOSE); 00301 // Recent files 00302 FXMenuSeparator* sep1=new FXMenuSeparator(myFileMenu); 00303 sep1->setTarget(&myRecentConfigs); 00304 sep1->setSelector(FXRecentFiles::ID_ANYFILES); 00305 new FXMenuCommand(myFileMenu,"",0,&myRecentConfigs,FXRecentFiles::ID_FILE_1); 00306 new FXMenuCommand(myFileMenu,"",0,&myRecentConfigs,FXRecentFiles::ID_FILE_2); 00307 new FXMenuCommand(myFileMenu,"",0,&myRecentConfigs,FXRecentFiles::ID_FILE_3); 00308 new FXMenuCommand(myFileMenu,"",0,&myRecentConfigs,FXRecentFiles::ID_FILE_4); 00309 new FXMenuCommand(myFileMenu,"",0,&myRecentConfigs,FXRecentFiles::ID_FILE_5); 00310 new FXMenuCommand(myFileMenu,"",0,&myRecentConfigs,FXRecentFiles::ID_FILE_6); 00311 new FXMenuCommand(myFileMenu,"",0,&myRecentConfigs,FXRecentFiles::ID_FILE_7); 00312 new FXMenuCommand(myFileMenu,"",0,&myRecentConfigs,FXRecentFiles::ID_FILE_8); 00313 new FXMenuCommand(myFileMenu,"",0,&myRecentConfigs,FXRecentFiles::ID_FILE_9); 00314 new FXMenuCommand(myFileMenu,"",0,&myRecentConfigs,FXRecentFiles::ID_FILE_10); 00315 new FXMenuCommand(myFileMenu,"C&lear Recent Configurations",NULL,&myRecentConfigs,FXRecentFiles::ID_CLEAR); 00316 myRecentConfigs.setTarget(this); 00317 myRecentConfigs.setSelector(MID_RECENTFILE); 00318 FXMenuSeparator* sep2=new FXMenuSeparator(myFileMenu); 00319 sep2->setTarget(&myRecentNets); 00320 sep2->setSelector(FXRecentFiles::ID_ANYFILES); 00321 new FXMenuCommand(myFileMenu,"",0,&myRecentNets,FXRecentFiles::ID_FILE_1); 00322 new FXMenuCommand(myFileMenu,"",0,&myRecentNets,FXRecentFiles::ID_FILE_2); 00323 new FXMenuCommand(myFileMenu,"",0,&myRecentNets,FXRecentFiles::ID_FILE_3); 00324 new FXMenuCommand(myFileMenu,"",0,&myRecentNets,FXRecentFiles::ID_FILE_4); 00325 new FXMenuCommand(myFileMenu,"",0,&myRecentNets,FXRecentFiles::ID_FILE_5); 00326 new FXMenuCommand(myFileMenu,"",0,&myRecentNets,FXRecentFiles::ID_FILE_6); 00327 new FXMenuCommand(myFileMenu,"",0,&myRecentNets,FXRecentFiles::ID_FILE_7); 00328 new FXMenuCommand(myFileMenu,"",0,&myRecentNets,FXRecentFiles::ID_FILE_8); 00329 new FXMenuCommand(myFileMenu,"",0,&myRecentNets,FXRecentFiles::ID_FILE_9); 00330 new FXMenuCommand(myFileMenu,"",0,&myRecentNets,FXRecentFiles::ID_FILE_10); 00331 new FXMenuCommand(myFileMenu,"Cl&ear Recent Networks",NULL,&myRecentNets,FXRecentFiles::ID_CLEAR); 00332 myRecentNets.setTarget(this); 00333 myRecentNets.setSelector(MID_RECENTFILE); 00334 new FXMenuSeparator(myFileMenu); 00335 new FXMenuCommand(myFileMenu, 00336 "&Quit\tCtl-Q\tQuit the Application.", 00337 0, this, MID_QUIT, 0); 00338 00339 // build edit menu 00340 myEditMenu = new FXMenuPane(this); 00341 new FXMenuTitle(myMenuBar,"&Edit",NULL,myEditMenu); 00342 new FXMenuCommand(myEditMenu, 00343 "Edit Chosen...\t\tOpens a Dialog for editing the List of chosen Items.", 00344 GUIIconSubSys::getIcon(ICON_FLAG), this, MID_EDITCHOSEN); 00345 new FXMenuSeparator(myEditMenu); 00346 new FXMenuCommand(myEditMenu, 00347 "Edit Breakpoints...\t\tOpens a Dialog for editing breakpoints.", 00348 0, this, MID_EDIT_BREAKPOINTS); 00349 00350 // build settings menu 00351 mySettingsMenu = new FXMenuPane(this); 00352 new FXMenuTitle(myMenuBar,"&Settings",NULL,mySettingsMenu); 00353 new FXMenuCommand(mySettingsMenu, 00354 "Application Settings...\t\tOpen a Dialog for Application Settings editing.", 00355 NULL,this,MID_APPSETTINGS); 00356 new FXMenuCheck(mySettingsMenu, 00357 "Gaming Mode\t\tToggle gaming mode on/off.", 00358 this,MID_GAMING); 00359 00360 // build windows menu 00361 myWindowsMenu = new FXMenuPane(this); 00362 new FXMenuTitle(myMenuBar,"&Windows",NULL,myWindowsMenu); 00363 new FXMenuCheck(myWindowsMenu, 00364 "Show Status Line\t\tToggle this Status Bar on/off.", 00365 myStatusbar,FXWindow::ID_TOGGLESHOWN); 00366 new FXMenuCheck(myWindowsMenu, 00367 "Show Message Window\t\tToggle the Message Window on/off.", 00368 myMessageWindow,FXWindow::ID_TOGGLESHOWN); 00369 new FXMenuCheck(myWindowsMenu, 00370 "Show Simulation Time\t\tToggle the Simulation Time on/off.", 00371 myToolBar3, FXWindow::ID_TOGGLESHOWN); 00372 new FXMenuCheck(myWindowsMenu, 00373 "Show Simulation Delay\t\tToggle the Simulation Delay Entry on/off.", 00374 myToolBar4, FXWindow::ID_TOGGLESHOWN); 00375 addToWindowsMenu(myWindowsMenu); 00376 new FXMenuSeparator(myWindowsMenu); 00377 new FXMenuCommand(myWindowsMenu,"Tile &Horizontally", 00378 GUIIconSubSys::getIcon(ICON_WINDOWS_TILE_HORI), 00379 myMDIClient,FXMDIClient::ID_MDI_TILEHORIZONTAL); 00380 new FXMenuCommand(myWindowsMenu,"Tile &Vertically", 00381 GUIIconSubSys::getIcon(ICON_WINDOWS_TILE_VERT), 00382 myMDIClient,FXMDIClient::ID_MDI_TILEVERTICAL); 00383 new FXMenuCommand(myWindowsMenu,"C&ascade", 00384 GUIIconSubSys::getIcon(ICON_WINDOWS_CASCADE), 00385 myMDIClient,FXMDIClient::ID_MDI_CASCADE); 00386 new FXMenuCommand(myWindowsMenu,"&Close",NULL, 00387 myMDIClient,FXMDIClient::ID_MDI_CLOSE); 00388 sep1=new FXMenuSeparator(myWindowsMenu); 00389 sep1->setTarget(myMDIClient); 00390 sep1->setSelector(FXMDIClient::ID_MDI_ANY); 00391 new FXMenuCommand(myWindowsMenu,"",0,myMDIClient,FXMDIClient::ID_MDI_1); 00392 new FXMenuCommand(myWindowsMenu,"",0,myMDIClient,FXMDIClient::ID_MDI_2); 00393 new FXMenuCommand(myWindowsMenu,"",0,myMDIClient,FXMDIClient::ID_MDI_3); 00394 new FXMenuCommand(myWindowsMenu,"",0,myMDIClient,FXMDIClient::ID_MDI_4); 00395 new FXMenuCommand(myWindowsMenu,"&Others...",0,myMDIClient,FXMDIClient::ID_MDI_OVER_5); 00396 new FXMenuSeparator(myWindowsMenu); 00397 new FXMenuCommand(myWindowsMenu, 00398 "Clear Message Window\t\tClear the message window.", 00399 0, this, MID_CLEARMESSAGEWINDOW); 00400 00401 // build help menu 00402 myHelpMenu = new FXMenuPane(this); 00403 new FXMenuTitle(myMenuBar,"&Help",NULL,myHelpMenu); 00404 new FXMenuCommand(myHelpMenu,"&About", GUIIconSubSys::getIcon(ICON_APP), 00405 this, MID_ABOUT); 00406 }
| FXFont * GUIMainWindow::getBoldFont | ( | ) | [inherited] |
Definition at line 107 of file GUIMainWindow.cpp.
References GUIMainWindow::myBoldFont.
00107 { 00108 return myBoldFont; 00109 }
| FXGLCanvas * GUIApplicationWindow::getBuildGLCanvas | ( | ) | const [virtual] |
Implements GUIMainWindow.
Definition at line 944 of file GUIApplicationWindow.cpp.
References GUIGlChildWindow::getBuildGLCanvas(), and GUIMainWindow::myMDIClient.
Referenced by openNewView().
00944 { 00945 if (myMDIClient->numChildren()==0) { 00946 return 0; 00947 } 00948 GUISUMOViewParent *share_tmp1 = 00949 static_cast<GUISUMOViewParent*>(myMDIClient->childAtIndex(0)); 00950 return share_tmp1->getBuildGLCanvas(); 00951 }
| FXLabel & GUIMainWindow::getCartesianLabel | ( | ) | [inherited] |
Definition at line 132 of file GUIMainWindow.cpp.
References GUIMainWindow::myCartesianCoordinate.
Referenced by GUISUMOAbstractView::updatePositionInformation().
00132 { 00133 return *myCartesianCoordinate; 00134 }
| SUMOTime GUIApplicationWindow::getCurrentSimTime | ( | ) | const [virtual] |
Implements GUIMainWindow.
Definition at line 998 of file GUIApplicationWindow.cpp.
References MSNet::getCurrentTimeStep(), GUIRunThread::getNet(), and myRunThread.
00998 { 00999 return myRunThread->getNet().getCurrentTimeStep(); 01000 }
| FXCursor * GUIApplicationWindow::getDefaultCursor | ( | ) |
| FXLabel & GUIMainWindow::getGeoLabel | ( | ) | [inherited] |
Definition at line 138 of file GUIMainWindow.cpp.
References GUIMainWindow::myGeoCoordinate.
Referenced by GUISUMOAbstractView::updatePositionInformation().
00138 { 00139 return *myGeoCoordinate; 00140 }
| FXGLVisual * GUIMainWindow::getGLVisual | ( | ) | const [inherited] |
Definition at line 126 of file GUIMainWindow.cpp.
References GUIMainWindow::myGLVisual.
Referenced by GUISUMOViewParent::init().
00126 { 00127 return myGLVisual; 00128 }
| void GUIApplicationWindow::handleEvent_Message | ( | GUIEvent * | e | ) |
Definition at line 873 of file GUIApplicationWindow.cpp.
References GUIMessageWindow::appendText(), GUIEvent_Message::getMsg(), GUIEvent::getOwnType(), and myMessageWindow.
Referenced by eventOccured().
00873 { 00874 GUIEvent_Message *ec = static_cast<GUIEvent_Message*>(e); 00875 myMessageWindow->appendText(ec->getOwnType(), ec->getMsg()); 00876 }
| void GUIApplicationWindow::handleEvent_SimulationEnded | ( | GUIEvent * | e | ) |
Definition at line 880 of file GUIApplicationWindow.cpp.
References closeAllWindows(), GUIEvent_SimulationEnded::getReason(), MSNet::getStateMessage(), GUIEvent_SimulationEnded::getTimeStep(), gQuitOnEnd, onCmdStop(), and MSNet::SIMSTATE_ERROR_IN_SIM.
Referenced by eventOccured().
00880 { 00881 GUIEvent_SimulationEnded *ec = static_cast<GUIEvent_SimulationEnded*>(e); 00882 if (!gQuitOnEnd) { 00883 // build the text 00884 std::stringstream text; 00885 text << "The simulation has ended at time step " << ec->getTimeStep() << ".\n"; 00886 MSNet::SimulationState state = ec->getReason(); 00887 text << "Reason: " << MSNet::getStateMessage(state); 00888 onCmdStop(0, 0, 0); 00889 FXMessageBox::warning(this, MBOX_OK, "Simulation Ended", text.str().c_str()); 00890 } else { 00891 onCmdStop(0, 0, 0); 00892 } 00893 if (gQuitOnEnd) { 00894 closeAllWindows(); 00895 getApp()->exit(ec->getReason() == MSNet::SIMSTATE_ERROR_IN_SIM); 00896 } 00897 }
| void GUIApplicationWindow::handleEvent_SimulationLoaded | ( | GUIEvent * | e | ) |
Definition at line 816 of file GUIApplicationWindow.cpp.
References GUISUMOAbstractView::addDecals(), GUISettingsHandler::addSettings(), closeAllWindows(), MSNet::getCurrentTimeStep(), GUISettingsHandler::getDecals(), GUISettingsHandler::getDelay(), MFXUtils::getTitleText(), gQuitOnEnd, GUIRunThread::init(), GUITexturesHelper::init(), myAmLoading, GUIEvent_SimulationLoaded::myBegin, GUIEvent_SimulationLoaded::myEnd, GUIEvent_SimulationLoaded::myFile, myLCDLabel, GUIEvent_SimulationLoaded::myNet, GUIMainWindow::myRunAtBegin, myRunThread, GUIEvent_SimulationLoaded::mySettingsFile, mySimDelayTarget, myViewNumber, myWasStarted, onCmdStart(), openNewView(), GUISettingsHandler::setSnapshots(), setStatusBarText(), FXEX::FXLCDLabel::setText(), FX::FXRealSpinDial::setValue(), GUISettingsHandler::setViewport(), GUIRunThread::simulationIsStartable(), and time2string().
Referenced by eventOccured().
00816 { 00817 GUITexturesHelper::init(getApp()); 00818 myAmLoading = false; 00819 GUIEvent_SimulationLoaded *ec = static_cast<GUIEvent_SimulationLoaded*>(e); 00820 // check whether the loading was successfull 00821 if (ec->myNet==0) { 00822 // report failure 00823 setStatusBarText("Loading of '" + ec->myFile + "' failed!"); 00824 if (gQuitOnEnd) { 00825 closeAllWindows(); 00826 getApp()->exit(1); 00827 } 00828 } else { 00829 // report success 00830 setStatusBarText("'" + ec->myFile + "' loaded."); 00831 // initialise simulation thread 00832 myRunThread->init(ec->myNet, ec->myBegin, ec->myEnd); 00833 myWasStarted = false; 00834 // initialise views 00835 myViewNumber = 0; 00836 GUISUMOAbstractView* view = openNewView(); 00837 if (view && ec->mySettingsFile != "") { 00838 GUISettingsHandler settings(ec->mySettingsFile); 00839 std::string settingsName = settings.addSettings(view); 00840 view->addDecals(settings.getDecals()); 00841 settings.setViewport(view); 00842 settings.setSnapshots(view); 00843 if (settings.getDelay() > 0) { 00844 mySimDelayTarget->setValue(settings.getDelay()); 00845 } 00846 } 00847 // set simulation name on the caption 00848 std::string caption = "SUMO " + std::string(VERSION_STRING); 00849 setTitle(MFXUtils::getTitleText(caption.c_str(), ec->myFile.c_str())); 00850 // set simulation step begin information 00851 std::string t = time2string(ec->myNet->getCurrentTimeStep()); 00852 myLCDLabel->setText(t.substr(0, t.length()-3).c_str()); 00853 } 00854 getApp()->endWaitCursor(); 00855 // start if wished 00856 if (myRunAtBegin&&ec->myNet!=0&&myRunThread->simulationIsStartable()) { 00857 onCmdStart(0, 0, 0); 00858 } 00859 update(); 00860 }
| void GUIApplicationWindow::handleEvent_SimulationStep | ( | GUIEvent * | e | ) |
Definition at line 864 of file GUIApplicationWindow.cpp.
References MSNet::getCurrentTimeStep(), GUIRunThread::getNet(), myLCDLabel, myRunThread, FXEX::FXLCDLabel::setText(), time2string(), and GUIMainWindow::updateChildren().
Referenced by eventOccured().
00864 { 00865 updateChildren(); 00866 std::string t = time2string(myRunThread->getNet().getCurrentTimeStep()); 00867 myLCDLabel->setText(t.substr(0, t.length()-3).c_str()); 00868 update(); 00869 }
| bool GUIMainWindow::isGaming | ( | ) | const throw () [inherited] |
Definition at line 144 of file GUIMainWindow.cpp.
References GUIMainWindow::myAmGaming.
Referenced by GUISUMOAbstractView::onLeftBtnRelease().
00144 { 00145 return myAmGaming; 00146 }
| void GUIApplicationWindow::load | ( | const std::string & | file, | |
| bool | isNet, | |||
| bool | isReload = false | |||
| ) | [private] |
starts to load a simulation
Definition at line 902 of file GUIApplicationWindow.cpp.
References closeAllWindows(), gSchemeStorage, GUILoadThread::load(), myAmLoading, myLoadThread, GUICompleteSchemeStorage::saveViewport(), and setStatusBarText().
Referenced by loadOnStartup(), onCmdOpenConfiguration(), onCmdOpenNetwork(), onCmdOpenRecent(), and onCmdReload().
00902 { 00903 getApp()->beginWaitCursor(); 00904 myAmLoading = true; 00905 closeAllWindows(); 00906 if (isReload) { 00907 myLoadThread->start(); 00908 setStatusBarText("Reloading."); 00909 } else { 00910 gSchemeStorage.saveViewport(0, 0, 100); 00911 myLoadThread->load(file, isNet); 00912 setStatusBarText("Loading '" + file + "'."); 00913 } 00914 update(); 00915 }
| void GUIApplicationWindow::loadOnStartup | ( | const std::string & | config, | |
| bool | run | |||
| ) |
Definition at line 1004 of file GUIApplicationWindow.cpp.
References load(), and GUIMainWindow::myRunAtBegin.
Referenced by main().
01004 { 01005 myRunAtBegin = run; 01006 load(config, false); 01007 }
| bool GUIApplicationWindow::loadSelection | ( | const std::string & | file, | |
| std::string & | msg | |||
| ) | throw () [virtual] |
Loads a selection from a given file.
| [in] | file | The file to load the selection from |
| [out] | msg | The error message |
Implements GUIMainWindow.
Definition at line 1043 of file GUIApplicationWindow.cpp.
References GUISelectionLoader::loadSelection().
01043 { 01044 return GUISelectionLoader::loadSelection(file, msg); 01045 }
| long GUIApplicationWindow::onCmdAbout | ( | FXObject * | , | |
| FXSelector | , | |||
| void * | ||||
| ) |
Shows the about dialog.
Definition at line 760 of file GUIApplicationWindow.cpp.
References GUIDialog_AboutSUMO::create().
00760 { 00761 GUIDialog_AboutSUMO *about = 00762 new GUIDialog_AboutSUMO(this, "About SUMO", 0, 0); 00763 about->create(); 00764 about->show(PLACEMENT_OWNER); 00765 return 1; 00766 }
| long GUIApplicationWindow::onCmdAppSettings | ( | FXObject * | , | |
| FXSelector | , | |||
| void * | ||||
| ) |
Opens the application settings menu.
Definition at line 734 of file GUIApplicationWindow.cpp.
00734 { 00735 GUIDialog_AppSettings *d = new GUIDialog_AppSettings(this); 00736 d->create(); 00737 d->show(PLACEMENT_OWNER); 00738 return 1; 00739 }
| long GUIApplicationWindow::onCmdClearMsgWindow | ( | FXObject * | , | |
| FXSelector | , | |||
| void * | ||||
| ) |
Definition at line 677 of file GUIApplicationWindow.cpp.
References GUIMessageWindow::clear(), and myMessageWindow.
00677 { 00678 myMessageWindow->clear(); 00679 return 1; 00680 }
| long GUIApplicationWindow::onCmdClose | ( | FXObject * | , | |
| FXSelector | , | |||
| void * | ||||
| ) |
Definition at line 591 of file GUIApplicationWindow.cpp.
References closeAllWindows().
00591 { 00592 closeAllWindows(); 00593 return 1; 00594 }
| long GUIApplicationWindow::onCmdEditBreakpoints | ( | FXObject * | , | |
| FXSelector | , | |||
| void * | ||||
| ) |
Definition at line 522 of file GUIApplicationWindow.cpp.
00522 { 00523 GUIDialog_Breakpoints *chooser = 00524 new GUIDialog_Breakpoints(this); 00525 chooser->create(); 00526 chooser->show(); 00527 return 1; 00528 }
| long GUIApplicationWindow::onCmdEditChosen | ( | FXObject * | , | |
| FXSelector | , | |||
| void * | ||||
| ) |
Definition at line 512 of file GUIApplicationWindow.cpp.
References gSelected.
00512 { 00513 GUIDialog_GLChosenEditor *chooser = 00514 new GUIDialog_GLChosenEditor(this, &gSelected); 00515 chooser->create(); 00516 chooser->show(); 00517 return 1; 00518 }
| long GUIApplicationWindow::onCmdGaming | ( | FXObject * | , | |
| FXSelector | , | |||
| void * | ||||
| ) |
Toggle gaming mode.
Definition at line 743 of file GUIApplicationWindow.cpp.
References GUIMainWindow::myAmGaming, mySimDelayTarget, and FX::FXRealSpinDial::setValue().
Referenced by dependentBuild().
00743 { 00744 myAmGaming = !myAmGaming; 00745 if (myAmGaming) { 00746 mySimDelayTarget->setValue(1000); 00747 } 00748 return 1; 00749 }
| long GUIApplicationWindow::onCmdNewView | ( | FXObject * | , | |
| FXSelector | , | |||
| void * | ||||
| ) |
Definition at line 753 of file GUIApplicationWindow.cpp.
References openNewView().
00753 { 00754 openNewView(); 00755 return 1; 00756 }
| long GUIApplicationWindow::onCmdOpenConfiguration | ( | FXObject * | , | |
| FXSelector | , | |||
| void * | ||||
| ) |
Definition at line 532 of file GUIApplicationWindow.cpp.
References gCurrentFolder, GUIIconSubSys::getIcon(), ICON_EMPTY, load(), myConfigPattern, and myRecentConfigs.
00532 { 00533 // get the new file name 00534 FXFileDialog opendialog(this,"Open Simulation Configuration"); 00535 opendialog.setIcon(GUIIconSubSys::getIcon(ICON_EMPTY)); 00536 opendialog.setSelectMode(SELECTFILE_EXISTING); 00537 opendialog.setPatternList(myConfigPattern.c_str()); 00538 if (gCurrentFolder.length()!=0) { 00539 opendialog.setDirectory(gCurrentFolder); 00540 } 00541 if (opendialog.execute()) { 00542 gCurrentFolder = opendialog.getDirectory(); 00543 std::string file = opendialog.getFilename().text(); 00544 load(file, false); 00545 myRecentConfigs.appendFile(file.c_str()); 00546 } 00547 return 1; 00548 }
| long GUIApplicationWindow::onCmdOpenNetwork | ( | FXObject * | , | |
| FXSelector | , | |||
| void * | ||||
| ) |
Definition at line 552 of file GUIApplicationWindow.cpp.
References gCurrentFolder, GUIIconSubSys::getIcon(), ICON_EMPTY, load(), and myRecentNets.
00552 { 00553 // get the new file name 00554 FXFileDialog opendialog(this,"Open Network"); 00555 opendialog.setIcon(GUIIconSubSys::getIcon(ICON_EMPTY)); 00556 opendialog.setSelectMode(SELECTFILE_EXISTING); 00557 opendialog.setPatternList("SUMO nets (*.net.xml)\nAll files (*)"); 00558 if (gCurrentFolder.length()!=0) { 00559 opendialog.setDirectory(gCurrentFolder); 00560 } 00561 if (opendialog.execute()) { 00562 gCurrentFolder = opendialog.getDirectory(); 00563 std::string file = opendialog.getFilename().text(); 00564 load(file, true); 00565 myRecentNets.appendFile(file.c_str()); 00566 } 00567 return 1; 00568 }
| long GUIApplicationWindow::onCmdOpenRecent | ( | FXObject * | sender, | |
| FXSelector | , | |||
| void * | data | |||
| ) |
Definition at line 579 of file GUIApplicationWindow.cpp.
References load(), myAmLoading, myRecentNets, and GUIMainWindow::myStatusbar.
00579 { 00580 if (myAmLoading) { 00581 myStatusbar->getStatusLine()->setText("Already loading!"); 00582 return 1; 00583 } 00584 std::string file((const char*)data); 00585 load(file, sender == &myRecentNets); 00586 return 1; 00587 }
| long GUIApplicationWindow::onCmdQuit | ( | FXObject * | , | |
| FXSelector | , | |||
| void * | ||||
| ) |
Called by FOX if the application shall be closed Called either by FileMenu->Quit, the normal close-menu or SIGINT.
Definition at line 495 of file GUIApplicationWindow.cpp.
References gCurrentFolder.
00495 { 00496 getApp()->reg().writeIntEntry("SETTINGS", "x", getX()); 00497 getApp()->reg().writeIntEntry("SETTINGS", "y", getY()); 00498 getApp()->reg().writeIntEntry("SETTINGS", "width", getWidth()); 00499 getApp()->reg().writeIntEntry("SETTINGS", "height", getHeight()); 00500 getApp()->reg().writeStringEntry("SETTINGS", "basedir", gCurrentFolder.text()); 00501 if (isMaximized()) { 00502 getApp()->reg().writeIntEntry("SETTINGS", "maximized", 1); 00503 } else { 00504 getApp()->reg().writeIntEntry("SETTINGS", "maximized", 0); 00505 } 00506 getApp()->exit(0); 00507 return 1; 00508 }
| long GUIApplicationWindow::onCmdReload | ( | FXObject * | , | |
| FXSelector | , | |||
| void * | ||||
| ) |
Definition at line 572 of file GUIApplicationWindow.cpp.
References load().
00572 { 00573 load("", false, true); 00574 return 1; 00575 }
| long GUIApplicationWindow::onCmdStart | ( | FXObject * | , | |
| FXSelector | , | |||
| void * | ||||
| ) |
Definition at line 636 of file GUIApplicationWindow.cpp.
References GUIRunThread::begin(), myRunThread, GUIMainWindow::myStatusbar, myWasStarted, GUIRunThread::resume(), and GUIRunThread::simulationAvailable().
Referenced by handleEvent_SimulationLoaded().
00636 { 00637 // check whether a net was loaded successfully 00638 if (!myRunThread->simulationAvailable()) { 00639 myStatusbar->getStatusLine()->setText("No simulation loaded!"); 00640 return 1; 00641 } 00642 // check whether it was started before and paused; 00643 if (!myWasStarted) { 00644 myRunThread->begin(); 00645 myWasStarted = true; 00646 } 00647 myRunThread->resume(); 00648 return 1; 00649 }
| long GUIApplicationWindow::onCmdStep | ( | FXObject * | , | |
| FXSelector | , | |||
| void * | ||||
| ) |
Definition at line 660 of file GUIApplicationWindow.cpp.
References GUIRunThread::begin(), myRunThread, GUIMainWindow::myStatusbar, myWasStarted, GUIRunThread::simulationAvailable(), and GUIRunThread::singleStep().
00660 { 00661 // check whether a net was loaded successfully 00662 if (!myRunThread->simulationAvailable()) { 00663 myStatusbar->getStatusLine()->setText("No simulation loaded!"); 00664 return 1; 00665 } 00666 // check whether it was started before and paused; 00667 if (!myWasStarted) { 00668 myRunThread->begin(); 00669 myWasStarted = true; 00670 } 00671 myRunThread->singleStep(); 00672 return 1; 00673 }
| long GUIApplicationWindow::onCmdStop | ( | FXObject * | , | |
| FXSelector | , | |||
| void * | ||||
| ) |
Definition at line 653 of file GUIApplicationWindow.cpp.
References myRunThread, and GUIRunThread::stop().
Referenced by handleEvent_SimulationEnded().
00653 { 00654 myRunThread->stop(); 00655 return 1; 00656 }
| long GUIApplicationWindow::onLoadThreadEvent | ( | FXObject * | , | |
| FXSelector | , | |||
| void * | ||||
| ) |
Definition at line 770 of file GUIApplicationWindow.cpp.
References eventOccured().
00770 { 00771 eventOccured(); 00772 return 1; 00773 }
| long GUIApplicationWindow::onRunThreadEvent | ( | FXObject * | , | |
| FXSelector | , | |||
| void * | ||||
| ) |
Definition at line 777 of file GUIApplicationWindow.cpp.
References eventOccured().
00777 { 00778 eventOccured(); 00779 return 1; 00780 }
| long GUIApplicationWindow::onUpdAddMicro | ( | FXObject * | sender, | |
| FXSelector | , | |||
| void * | ptr | |||
| ) |
Definition at line 626 of file GUIApplicationWindow.cpp.
References myAmLoading, myRunThread, and GUIRunThread::simulationAvailable().
00626 { 00627 sender->handle(this, 00628 myAmLoading||!myRunThread->simulationAvailable() 00629 ? FXSEL(SEL_COMMAND,ID_DISABLE) : FXSEL(SEL_COMMAND,ID_ENABLE), 00630 ptr); 00631 return 1; 00632 }
| long GUIApplicationWindow::onUpdEditBreakpoints | ( | FXObject * | sender, | |
| FXSelector | , | |||
| void * | ptr | |||
| ) | [virtual] |
Definition at line 724 of file GUIApplicationWindow.cpp.
References myAmLoading, myRunThread, and GUIRunThread::simulationAvailable().
00724 { 00725 sender->handle(this, 00726 !myRunThread->simulationAvailable()||myAmLoading 00727 ? FXSEL(SEL_COMMAND,ID_DISABLE) : FXSEL(SEL_COMMAND,ID_ENABLE), 00728 ptr); 00729 return 1; 00730 }
| long GUIApplicationWindow::onUpdEditChosen | ( | FXObject * | sender, | |
| FXSelector | , | |||
| void * | ptr | |||
| ) |
Definition at line 714 of file GUIApplicationWindow.cpp.
References myAmLoading, myRunThread, and GUIRunThread::simulationAvailable().
00714 { 00715 sender->handle(this, 00716 !myRunThread->simulationAvailable()||myAmLoading 00717 ? FXSEL(SEL_COMMAND,ID_DISABLE) : FXSEL(SEL_COMMAND,ID_ENABLE), 00718 ptr); 00719 return 1; 00720 }
| long GUIApplicationWindow::onUpdOpen | ( | FXObject * | sender, | |
| FXSelector | , | |||
| void * | ptr | |||
| ) |
Definition at line 598 of file GUIApplicationWindow.cpp.
References myAmLoading.
00598 { 00599 sender->handle(this, 00600 myAmLoading?FXSEL(SEL_COMMAND,ID_DISABLE):FXSEL(SEL_COMMAND,ID_ENABLE), 00601 ptr); 00602 return 1; 00603 }
| long GUIApplicationWindow::onUpdOpenRecent | ( | FXObject * | sender, | |
| FXSelector | , | |||
| void * | ptr | |||
| ) |
Definition at line 617 of file GUIApplicationWindow.cpp.
References myAmLoading.
00617 { 00618 sender->handle(this, 00619 myAmLoading?FXSEL(SEL_COMMAND,ID_DISABLE):FXSEL(SEL_COMMAND,ID_ENABLE), 00620 ptr); 00621 return 1; 00622 }
| long GUIApplicationWindow::onUpdReload | ( | FXObject * | sender, | |
| FXSelector | , | |||
| void * | ptr | |||
| ) |
Definition at line 607 of file GUIApplicationWindow.cpp.
References GUILoadThread::getFileName(), myAmLoading, and myLoadThread.
00607 { 00608 sender->handle(this, 00609 myAmLoading||myLoadThread->getFileName()=="" 00610 ? FXSEL(SEL_COMMAND,ID_DISABLE) : FXSEL(SEL_COMMAND,ID_ENABLE), 00611 ptr); 00612 return 1; 00613 }
| long GUIApplicationWindow::onUpdStart | ( | FXObject * | sender, | |
| FXSelector | , | |||
| void * | ptr | |||
| ) | [virtual] |
Definition at line 684 of file GUIApplicationWindow.cpp.
References myAmLoading, myRunThread, and GUIRunThread::simulationIsStartable().
00684 { 00685 sender->handle(this, 00686 !myRunThread->simulationIsStartable()||myAmLoading 00687 ? FXSEL(SEL_COMMAND,ID_DISABLE) : FXSEL(SEL_COMMAND,ID_ENABLE), 00688 ptr); 00689 return 1; 00690 }
| long GUIApplicationWindow::onUpdStep | ( | FXObject * | sender, | |
| FXSelector | , | |||
| void * | ptr | |||
| ) |
Definition at line 704 of file GUIApplicationWindow.cpp.
References myAmLoading, myRunThread, and GUIRunThread::simulationIsStepable().
00704 { 00705 sender->handle(this, 00706 !myRunThread->simulationIsStepable()||myAmLoading 00707 ? FXSEL(SEL_COMMAND,ID_DISABLE) : FXSEL(SEL_COMMAND,ID_ENABLE), 00708 ptr); 00709 return 1; 00710 }
| long GUIApplicationWindow::onUpdStop | ( | FXObject * | sender, | |
| FXSelector | , | |||
| void * | ptr | |||
| ) |
Definition at line 694 of file GUIApplicationWindow.cpp.
References myAmLoading, myRunThread, and GUIRunThread::simulationIsStopable().
00694 { 00695 sender->handle(this, 00696 !myRunThread->simulationIsStopable()||myAmLoading 00697 ? FXSEL(SEL_COMMAND,ID_DISABLE) : FXSEL(SEL_COMMAND,ID_ENABLE), 00698 ptr); 00699 return 1; 00700 }
| GUISUMOAbstractView * GUIApplicationWindow::openNewView | ( | ) | [private] |
opens a new simulation display
Definition at line 920 of file GUIApplicationWindow.cpp.
References GUIGlChildWindow::create(), getBuildGLCanvas(), GUIIconSubSys::getIcon(), GUIRunThread::getNet(), ICON_APP, GUISUMOViewParent::init(), GUIMainWindow::myMDIClient, myMDIMenu, myRunThread, GUIMainWindow::myStatusbar, myViewNumber, GUIRunThread::simulationAvailable(), and toString().
Referenced by handleEvent_SimulationLoaded(), and onCmdNewView().
00920 { 00921 if (!myRunThread->simulationAvailable()) { 00922 myStatusbar->getStatusLine()->setText("No simulation loaded!"); 00923 return 0; 00924 } 00925 std::string caption = "View #" + toString(myViewNumber++); 00926 FXuint opts = MDI_TRACKING; 00927 GUISUMOViewParent* w = new GUISUMOViewParent(myMDIClient, 00928 myMDIMenu, FXString(caption.c_str()), 00929 this, GUIIconSubSys::getIcon(ICON_APP), 00930 opts, 10, 10, 300, 200); 00931 GUISUMOAbstractView* v = w->init(getBuildGLCanvas(), myRunThread->getNet()); 00932 w->create(); 00933 if (myMDIClient->numChildren()==1) { 00934 w->maximize(); 00935 } else { 00936 myMDIClient->vertical(true); 00937 } 00938 myMDIClient->setActiveChild(w); 00939 return v; 00940 }
| void GUIMainWindow::removeChild | ( | FXMainWindow * | child | ) | [inherited] |
Definition at line 97 of file GUIMainWindow.cpp.
References MFXMutex::lock(), GUIMainWindow::myTrackerLock, GUIMainWindow::myTrackerWindows, and MFXMutex::unlock().
00097 { 00098 myTrackerLock.lock(); 00099 std::vector<FXMainWindow*>::iterator i = 00100 std::find(myTrackerWindows.begin(), myTrackerWindows.end(), child); 00101 myTrackerWindows.erase(i); 00102 myTrackerLock.unlock(); 00103 }
| void GUIMainWindow::removeChild | ( | FXMDIChild * | child | ) | [inherited] |
removes the given child window from the list
Definition at line 79 of file GUIMainWindow.cpp.
References GUIMainWindow::mySubWindows.
Referenced by GUIDialog_Breakpoints::~GUIDialog_Breakpoints(), GUIDialog_GLChosenEditor::~GUIDialog_GLChosenEditor(), GUIDialog_GLObjChooser::~GUIDialog_GLObjChooser(), GUIParameterTableWindow::~GUIParameterTableWindow(), GUIParameterTracker::~GUIParameterTracker(), GUISUMOViewParent::~GUISUMOViewParent(), and GUITLLogicPhasesTrackerWindow::~GUITLLogicPhasesTrackerWindow().
00079 { 00080 std::vector<FXMDIChild*>::iterator i = 00081 std::find(mySubWindows.begin(), mySubWindows.end(), child); 00082 if (i!=mySubWindows.end()) { 00083 mySubWindows.erase(i); 00084 } 00085 }
| void GUIApplicationWindow::setStatusBarText | ( | const std::string & | text | ) | [virtual] |
Reimplemented from GUIMainWindow.
Definition at line 1036 of file GUIApplicationWindow.cpp.
References GUIMainWindow::myStatusbar.
Referenced by handleEvent_SimulationLoaded(), and load().
01036 { 01037 myStatusbar->getStatusLine()->setText(text.c_str()); 01038 myStatusbar->getStatusLine()->setNormalText(text.c_str()); 01039 }
| void GUIMainWindow::updateChildren | ( | ) | [inherited] |
Definition at line 113 of file GUIMainWindow.cpp.
References MFXMutex::lock(), MID_SIMSTEP, GUIMainWindow::myMDIClient, GUIMainWindow::myTrackerLock, GUIMainWindow::myTrackerWindows, and MFXMutex::unlock().
Referenced by handleEvent_SimulationStep(), GUITriggeredRerouter::GUIManip_TriggeredRerouter::onCmdChangeOption(), GUILaneSpeedTrigger::GUIManip_LaneSpeedTrigger::onCmdChangeOption(), GUIEmitter::GUIManip_TriggeredEmitter::onCmdChangeOption(), GUIDialog_GLChosenEditor::onCmdClear(), GUIDialog_GLChosenEditor::onCmdDeselect(), GUILaneSpeedTrigger::GUIManip_LaneSpeedTrigger::onCmdPreDef(), GUITriggeredRerouter::GUIManip_TriggeredRerouter::onCmdUserDef(), GUILaneSpeedTrigger::GUIManip_LaneSpeedTrigger::onCmdUserDef(), GUIEmitter::GUIManip_TriggeredEmitter::onCmdUserDef(), GUILaneSpeedTrigger::GUIManip_LaneSpeedTrigger::onUpdPreDef(), GUITriggeredRerouter::GUIManip_TriggeredRerouter::onUpdUserDef(), GUILaneSpeedTrigger::GUIManip_LaneSpeedTrigger::onUpdUserDef(), and GUIEmitter::GUIManip_TriggeredEmitter::onUpdUserDef().
00113 { 00114 // inform views 00115 myMDIClient->forallWindows(this, FXSEL(SEL_COMMAND, MID_SIMSTEP), 0); 00116 // inform other windows 00117 myTrackerLock.lock(); 00118 for (size_t i=0; i<myTrackerWindows.size(); i++) { 00119 myTrackerWindows[i]->handle(this,FXSEL(SEL_COMMAND,MID_SIMSTEP), 0); 00120 } 00121 myTrackerLock.unlock(); 00122 }
bool GUIApplicationWindow::hadDependentBuild [protected] |
bool GUIMainWindow::myAmGaming [protected, inherited] |
information whether the gui is currently in gaming mode
Definition at line 108 of file GUIMainWindow.h.
Referenced by GUIMainWindow::isGaming(), and onCmdGaming().
bool GUIApplicationWindow::myAmLoading [protected] |
information whether the gui is currently loading and the load-options shall be greyed out
Definition at line 216 of file GUIApplicationWindow.h.
Referenced by handleEvent_SimulationLoaded(), load(), onCmdOpenRecent(), onUpdAddMicro(), onUpdEditBreakpoints(), onUpdEditChosen(), onUpdOpen(), onUpdOpenRecent(), onUpdReload(), onUpdStart(), onUpdStep(), and onUpdStop().
FXFont* GUIMainWindow::myBoldFont [protected, inherited] |
Font used for popup-menu titles.
Definition at line 87 of file GUIMainWindow.h.
Referenced by GUIMainWindow::getBoldFont(), GUIMainWindow::GUIMainWindow(), and GUIMainWindow::~GUIMainWindow().
FXDockSite * GUIMainWindow::myBottomDock [protected, inherited] |
Definition at line 103 of file GUIMainWindow.h.
Referenced by GUIMainWindow::GUIMainWindow(), and GUIMainWindow::~GUIMainWindow().
FXLabel* GUIMainWindow::myCartesianCoordinate [protected, inherited] |
Labels for the current cartesian and geo-coordinate.
Definition at line 96 of file GUIMainWindow.h.
Referenced by closeAllWindows(), dependentBuild(), and GUIMainWindow::getCartesianLabel().
FXHorizontalFrame* GUIMainWindow::myCartesianFrame [protected, inherited] |
std::string GUIApplicationWindow::myConfigPattern [protected] |
Input file pattern.
Definition at line 267 of file GUIApplicationWindow.h.
Referenced by onCmdOpenConfiguration().
FXMenuPane * GUIApplicationWindow::myEditMenu [protected] |
Definition at line 219 of file GUIApplicationWindow.h.
Referenced by create(), fillMenuBar(), and ~GUIApplicationWindow().
MFXEventQue GUIApplicationWindow::myEvents [protected] |
List of got requests.
Definition at line 240 of file GUIApplicationWindow.h.
Referenced by dependentBuild(), eventOccured(), and ~GUIApplicationWindow().
FXMenuPane* GUIApplicationWindow::myFileMenu [protected] |
the submenus
Definition at line 219 of file GUIApplicationWindow.h.
Referenced by create(), fillMenuBar(), and ~GUIApplicationWindow().
FXLabel * GUIMainWindow::myGeoCoordinate [protected, inherited] |
Definition at line 96 of file GUIMainWindow.h.
Referenced by closeAllWindows(), dependentBuild(), and GUIMainWindow::getGeoLabel().
FXHorizontalFrame * GUIMainWindow::myGeoFrame [protected, inherited] |
FXGLVisual* GUIMainWindow::myGLVisual [protected, inherited] |
The gl-visual used.
Definition at line 101 of file GUIMainWindow.h.
Referenced by GUIMainWindow::getGLVisual(), and ~GUIApplicationWindow().
FXMenuPane * GUIApplicationWindow::myHelpMenu [protected] |
Definition at line 219 of file GUIApplicationWindow.h.
Referenced by create(), fillMenuBar(), and ~GUIApplicationWindow().
FXEX::FXLCDLabel* GUIApplicationWindow::myLCDLabel [protected] |
the simulation step display
Definition at line 252 of file GUIApplicationWindow.h.
Referenced by buildToolBars(), closeAllWindows(), handleEvent_SimulationLoaded(), and handleEvent_SimulationStep().
FXDockSite * GUIMainWindow::myLeftDock [protected, inherited] |
Definition at line 103 of file GUIMainWindow.h.
Referenced by GUIMainWindow::GUIMainWindow(), and GUIMainWindow::~GUIMainWindow().
GUILoadThread* GUIApplicationWindow::myLoadThread [protected] |
the thread that loads simulations
Definition at line 204 of file GUIApplicationWindow.h.
Referenced by dependentBuild(), load(), onUpdReload(), and ~GUIApplicationWindow().
io-event with the load-thread
Definition at line 255 of file GUIApplicationWindow.h.
Referenced by dependentBuild().
FXSplitter* GUIApplicationWindow::myMainSplitter [protected] |
The splitter that divides the main window into vies and the log window.
Definition at line 226 of file GUIApplicationWindow.h.
Referenced by dependentBuild().
FXMDIClient* GUIMainWindow::myMDIClient [protected, inherited] |
The multi view panel.
Definition at line 90 of file GUIMainWindow.h.
Referenced by dependentBuild(), fillMenuBar(), getBuildGLCanvas(), openNewView(), and GUIMainWindow::updateChildren().
FXMDIMenu* GUIApplicationWindow::myMDIMenu [protected] |
The menu used for the MDI-windows.
Definition at line 243 of file GUIApplicationWindow.h.
Referenced by dependentBuild(), and openNewView().
FXMenuBar* GUIApplicationWindow::myMenuBar [protected] |
The application menu bar.
Definition at line 246 of file GUIApplicationWindow.h.
Referenced by dependentBuild(), and fillMenuBar().
FXToolBarShell * GUIApplicationWindow::myMenuBarDrag [protected] |
Definition at line 229 of file GUIApplicationWindow.h.
Referenced by create(), dependentBuild(), and detach().
GUIMessageWindow* GUIApplicationWindow::myMessageWindow [protected] |
A window to display messages, warnings and error in.
Definition at line 223 of file GUIApplicationWindow.h.
Referenced by closeAllWindows(), dependentBuild(), fillMenuBar(), handleEvent_Message(), and onCmdClearMsgWindow().
std::string GUIApplicationWindow::myName [protected] |
the name of the simulation
Definition at line 201 of file GUIApplicationWindow.h.
FXRecentFiles GUIApplicationWindow::myRecentConfigs [protected] |
List of recent config files.
Definition at line 261 of file GUIApplicationWindow.h.
Referenced by fillMenuBar(), and onCmdOpenConfiguration().
FXRecentFiles GUIApplicationWindow::myRecentNets [protected] |
List of recent nets.
Definition at line 264 of file GUIApplicationWindow.h.
Referenced by fillMenuBar(), onCmdOpenNetwork(), and onCmdOpenRecent().
FXDockSite * GUIMainWindow::myRightDock [protected, inherited] |
Definition at line 103 of file GUIMainWindow.h.
Referenced by GUIMainWindow::GUIMainWindow(), and GUIMainWindow::~GUIMainWindow().
bool GUIMainWindow::myRunAtBegin [protected, inherited] |
Definition at line 105 of file GUIMainWindow.h.
Referenced by handleEvent_SimulationLoaded(), and loadOnStartup().
GUIRunThread* GUIApplicationWindow::myRunThread [protected] |
the thread that runs simulations
Definition at line 207 of file GUIApplicationWindow.h.
Referenced by closeAllWindows(), dependentBuild(), getCurrentSimTime(), handleEvent_SimulationLoaded(), handleEvent_SimulationStep(), onCmdStart(), onCmdStep(), onCmdStop(), onUpdAddMicro(), onUpdEditBreakpoints(), onUpdEditChosen(), onUpdStart(), onUpdStep(), onUpdStop(), openNewView(), and ~GUIApplicationWindow().
io-event with the run-thread
Definition at line 258 of file GUIApplicationWindow.h.
Referenced by dependentBuild().
FXMenuPane * GUIApplicationWindow::mySettingsMenu [protected] |
Definition at line 219 of file GUIApplicationWindow.h.
Referenced by create(), fillMenuBar(), and ~GUIApplicationWindow().
FXdouble GUIApplicationWindow::mySimDelay [protected] |
FXRealSpinDial* GUIApplicationWindow::mySimDelayTarget [protected] |
Definition at line 234 of file GUIApplicationWindow.h.
Referenced by buildToolBars(), dependentBuild(), handleEvent_SimulationLoaded(), and onCmdGaming().
FXStatusBar* GUIMainWindow::myStatusbar [protected, inherited] |
The status bar.
Definition at line 93 of file GUIMainWindow.h.
Referenced by dependentBuild(), fillMenuBar(), onCmdOpenRecent(), onCmdStart(), onCmdStep(), openNewView(), and setStatusBarText().
std::vector<FXMDIChild*> GUIMainWindow::mySubWindows [protected, inherited] |
Definition at line 81 of file GUIMainWindow.h.
Referenced by GUIMainWindow::addChild(), closeAllWindows(), and GUIMainWindow::removeChild().
FXToolBar* GUIApplicationWindow::myToolBar1 [protected] |
The application tool bar.
Definition at line 249 of file GUIApplicationWindow.h.
Referenced by buildToolBars().
FXToolBar * GUIApplicationWindow::myToolBar2 [protected] |
Definition at line 249 of file GUIApplicationWindow.h.
Referenced by buildToolBars(), and eventOccured().
FXToolBar * GUIApplicationWindow::myToolBar3 [protected] |
Definition at line 249 of file GUIApplicationWindow.h.
Referenced by buildToolBars(), eventOccured(), and fillMenuBar().
FXToolBar * GUIApplicationWindow::myToolBar4 [protected] |
Definition at line 249 of file GUIApplicationWindow.h.
Referenced by buildToolBars(), and fillMenuBar().
FXToolBar * GUIApplicationWindow::myToolBar5 [protected] |
FXToolBarShell* GUIApplicationWindow::myToolBarDrag1 [protected] |
for some menu detaching fun
Definition at line 229 of file GUIApplicationWindow.h.
Referenced by buildToolBars(), create(), detach(), and ~GUIApplicationWindow().
FXToolBarShell * GUIApplicationWindow::myToolBarDrag2 [protected] |
FXToolBarShell * GUIApplicationWindow::myToolBarDrag3 [protected] |
FXToolBarShell * GUIApplicationWindow::myToolBarDrag4 [protected] |
FXToolBarShell * GUIApplicationWindow::myToolBarDrag5 [protected] |
FXDockSite* GUIMainWindow::myTopDock [protected, inherited] |
Definition at line 103 of file GUIMainWindow.h.
Referenced by buildToolBars(), dependentBuild(), GUIMainWindow::GUIMainWindow(), and GUIMainWindow::~GUIMainWindow().
MFXMutex GUIMainWindow::myTrackerLock [protected, inherited] |
A lock to make the removal and addition of trackers secure.
Definition at line 84 of file GUIMainWindow.h.
Referenced by GUIMainWindow::addChild(), closeAllWindows(), GUIMainWindow::removeChild(), and GUIMainWindow::updateChildren().
std::vector<FXMainWindow*> GUIMainWindow::myTrackerWindows [protected, inherited] |
Definition at line 82 of file GUIMainWindow.h.
Referenced by GUIMainWindow::addChild(), closeAllWindows(), GUIMainWindow::removeChild(), and GUIMainWindow::updateChildren().
size_t GUIApplicationWindow::myViewNumber [protected] |
The current view number.
Definition at line 213 of file GUIApplicationWindow.h.
Referenced by handleEvent_SimulationLoaded(), and openNewView().
bool GUIApplicationWindow::myWasStarted [protected] |
the information whether the simulation was started before
Definition at line 210 of file GUIApplicationWindow.h.
Referenced by handleEvent_SimulationLoaded(), onCmdStart(), and onCmdStep().
FXMenuPane * GUIApplicationWindow::myWindowsMenu [protected] |
Definition at line 219 of file GUIApplicationWindow.h.
Referenced by create(), fillMenuBar(), and ~GUIApplicationWindow().
1.5.6