Eclipse SUMO - Simulation of Urban MObility
GNEApplicationWindow.h
Go to the documentation of this file.
1 /****************************************************************************/
2 // Eclipse SUMO, Simulation of Urban MObility; see https://eclipse.org/sumo
3 // Copyright (C) 2001-2022 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 /****************************************************************************/
18 // The main window of Netedit (adapted from GUIApplicationWindow)
19 /****************************************************************************/
20 #pragma once
21 #include <config.h>
22 
24 
25 
26 // ===========================================================================
27 // class definition
28 // ===========================================================================
41  FXDECLARE(GNEApplicationWindow)
42 
43 public:
44 
49  GNEApplicationWindow(FXApp* a, const std::string& configPattern);
50 
53 
55  void create();
56 
58  void loadOptionOnStartup();
59 
61  void dependentBuild();
62 
64  void setStatusBarText(const std::string& statusBarText);
65 
68 
71 
74 
77 
80 
83 
86 
89 
93  void eventOccurred();
94 
97 
101 
105  long onCmdNewWindow(FXObject*, FXSelector, void*);
106 
108  long onCmdNewNetwork(FXObject*, FXSelector, void*);
109 
111  long onCmdOpenConfiguration(FXObject*, FXSelector, void*);
112 
114  long onCmdOpenNetwork(FXObject*, FXSelector, void*);
115 
117  long onCmdOpenForeign(FXObject*, FXSelector, void*);
118 
120  long onCmdOpenTLSPrograms(FXObject*, FXSelector, void*);
121 
123  long onCmdOpenEdgeTypes(FXObject*, FXSelector, void*);
124 
126  long onCmdReload(FXObject*, FXSelector, void*);
127 
129  long onCmdOpenRecent(FXObject*, FXSelector, void*);
130 
132  long onCmdClose(FXObject*, FXSelector, void*);
133 
135  long onCmdEditViewScheme(FXObject*, FXSelector, void*);
136 
138  long onCmdEditViewport(FXObject*, FXSelector, void*);
139 
141  long onCmdLocate(FXObject*, FXSelector, void*);
142 
144  long onCmdRunNetDiff(FXObject*, FXSelector, void*);
145 
147  long onCmdSaveAllElements(FXObject*, FXSelector, void*);
148 
150  long onCmdSaveNetwork(FXObject*, FXSelector, void*);
151 
153  long onCmdSaveTLSPrograms(FXObject*, FXSelector, void*);
154 
156  long onCmdSaveEdgeTypes(FXObject*, FXSelector, void*);
157 
159  long onCmdSaveTLSProgramsAs(FXObject*, FXSelector, void*);
160 
162  long onCmdSaveEdgeTypesAs(FXObject*, FXSelector, void*);
163 
165  long onCmdOpenAdditionals(FXObject*, FXSelector, void*);
166 
168  long onCmdReloadAdditionals(FXObject*, FXSelector, void*);
169 
171  long onUpdReloadAdditionals(FXObject*, FXSelector, void*);
172 
174  long onCmdSaveAdditionals(FXObject*, FXSelector, void*);
175 
177  long onCmdSaveAdditionalsAs(FXObject*, FXSelector, void*);
178 
180  long onCmdOpenDemandElements(FXObject*, FXSelector, void*);
181 
183  long onCmdReloadDemandElements(FXObject*, FXSelector, void*);
184 
186  long onUpdReloadDemandElements(FXObject*, FXSelector, void*);
187 
189  long onCmdSaveDemandElements(FXObject*, FXSelector, void*);
190 
192  long onCmdOpenDataElements(FXObject*, FXSelector, void*);
193 
195  long onCmdReloadDataElements(FXObject*, FXSelector, void*);
196 
198  long onUpdReloadDataElements(FXObject*, FXSelector, void*);
199 
201  long onCmdSaveDemandElementsAs(FXObject*, FXSelector, void*);
202 
204  long onCmdSaveDataElements(FXObject*, FXSelector, void*);
205 
207  long onCmdSaveDataElementsAs(FXObject*, FXSelector, void*);
208 
210  long onCmdSaveAsNetwork(FXObject*, FXSelector, void*);
211 
213  long onUpdNeedsNetwork(FXObject*, FXSelector, void*);
214 
216  long onUpdNeedsFrontElement(FXObject*, FXSelector, void*);
217 
219  long onUpdReload(FXObject*, FXSelector, void*);
220 
222  long onUpdSaveAllElements(FXObject*, FXSelector, void*);
223 
225  long onUpdSaveNetwork(FXObject*, FXSelector, void*);
226 
228  long onUpdSaveAdditionals(FXObject*, FXSelector, void*);
229 
231  long onUpdSaveDemandElements(FXObject*, FXSelector, void*);
232 
234  long onUpdSaveDataElements(FXObject*, FXSelector, void*);
235 
237  long onUpdUndo(FXObject* obj, FXSelector sel, void* ptr);
238 
240  long onUpdRedo(FXObject* obj, FXSelector sel, void* ptr);
241 
243  long onUpdComputePathManager(FXObject* obj, FXSelector sel, void* ptr);
244 
246  long onCmdToggleViewOption(FXObject*, FXSelector, void*);
247 
249  long onUpdToggleViewOption(FXObject*, FXSelector, void*);
250 
252  long onCmdSaveAsPlainXML(FXObject*, FXSelector, void*);
253 
255  long onCmdSaveJoined(FXObject*, FXSelector, void*);
256 
258  long onKeyPress(FXObject* o, FXSelector sel, void* data);
259 
261  long onKeyRelease(FXObject* o, FXSelector sel, void* data);
262 
266  long onCmdQuit(FXObject*, FXSelector, void*);
267 
269  long onCmdEditChosen(FXObject*, FXSelector, void*);
270 
272  long onCmdAbout(FXObject*, FXSelector, void*);
273 
275  long onUpdOpen(FXObject*, FXSelector, void*);
276 
278  long onCmdClearMsgWindow(FXObject*, FXSelector, void*);
279 
281  long onCmdLoadAdditionalsInSUMOGUI(FXObject*, FXSelector, void*);
282 
284  long onCmdLoadDemandInSUMOGUI(FXObject*, FXSelector, void*);
285 
287  long onLoadThreadEvent(FXObject*, FXSelector, void*);
288 
290  long onClipboardRequest(FXObject* sender, FXSelector sel, void* ptr);
291 
293  long onCmdSetSuperMode(FXObject* sender, FXSelector sel, void* ptr);
294 
296  long onCmdSetMode(FXObject* sender, FXSelector sel, void* ptr);
297 
299  long onCmdLockElements(FXObject*, FXSelector sel, void*);
300 
302  long onCmdLockAllElements(FXObject*, FXSelector sel, void*);
303 
305  long onCmdUnlockAllElements(FXObject*, FXSelector sel, void*);
306 
308  long onCmdLockSelectElements(FXObject*, FXSelector sel, void*);
309 
311  long onUpdLockMenuTitle(FXObject*, FXSelector sel, void*);
312 
314  long onCmdProcessButton(FXObject*, FXSelector sel, void*);
315 
317  long onCmdOpenSUMOGUI(FXObject* sender, FXSelector sel, void* ptr);
318 
320  long onCmdAbort(FXObject* sender, FXSelector sel, void* ptr);
321 
323  long onCmdDel(FXObject* sender, FXSelector sel, void* ptr);
324 
326  long onCmdEnter(FXObject* sender, FXSelector sel, void* ptr);
327 
329  long onCmdBackspace(FXObject* sender, FXSelector sel, void* ptr);
330 
332  long onCmdForceSaveNetwork(FXObject* sender, FXSelector sel, void* ptr);
333 
335  long onCmdForceSaveAdditionals(FXObject* sender, FXSelector sel, void* ptr);
336 
338  long onCmdForceSaveDemandElements(FXObject* sender, FXSelector sel, void* ptr);
339 
341  long onCmdForceSaveDataElements(FXObject* sender, FXSelector sel, void* ptr);
342 
344  long onCmdFocusFrame(FXObject* sender, FXSelector sel, void* ptr);
345 
347  long onUpdRequireViewNet(FXObject* sender, FXSelector sel, void* ptr);
348 
350  long onCmdToggleGrid(FXObject*, FXSelector, void*);
351 
353  long onCmdSetFrontElement(FXObject*, FXSelector, void*);
354 
356  long onCmdToggleEditOptions(FXObject*, FXSelector, void*);
357 
359  long onCmdHelp(FXObject* sender, FXSelector sel, void* ptr);
360 
362  long onCmdOptions(FXObject*, FXSelector, void*);
363 
365  long onCmdUndo(FXObject*, FXSelector, void*);
366 
367  // @brief called when user press Ctrl+Y
368  long onCmdRedo(FXObject*, FXSelector, void*);
369 
370  // @brief called when user press open undoList dialog
371  long onCmdOpenUndoListDialog(FXObject*, FXSelector, void*);
372 
373  // @brief called when openUndoList is updated
374  long onUpdOpenUndoListDialog(FXObject*, FXSelector, void*);
375 
376  // @brief called when user press compute path manager
377  long onCmdComputePathManager(FXObject*, FXSelector, void*);
378 
380  long onCmdCut(FXObject*, FXSelector, void*);
381 
382  // @brief called when user press Ctrl+Y
383  long onCmdCopy(FXObject*, FXSelector, void*);
384 
385  // @brief called when user press Ctrl+Y
386  long onCmdPaste(FXObject*, FXSelector, void*);
387 
388  // @brief called when user press Ctrl+F1
389  long onCmdSetTemplate(FXObject*, FXSelector, void*);
390 
391  // @brief called when user press Ctrl+F2
392  long onCmdCopyTemplate(FXObject*, FXSelector, void*);
393 
394  // @brief called when user press Ctrl+F3
395  long onCmdClearTemplate(FXObject*, FXSelector, void*);
396 
398 
402  FXGLCanvas* getBuildGLCanvas() const;
403 
405  SUMOTime getCurrentSimTime() const;
406 
408  double getTrackerInterval() const;
410 
412  FXCursor* getDefaultCursor();
413 
416 
419 
422 
425 
427  void updateControls();
428 
430  void updateSuperModeMenuCommands(const Supermode supermode);
431 
433  void disableUndoRedo(const std::string& reason);
434 
436  void enableUndoRedo();
437 
439  const std::string& isUndoRedoEnabled() const;
440 
443 
446 
448  void clearUndoList();
449 
450 protected:
453 
456 
458  bool myAmLoading = false;
459 
461  FXMenuPane* myFileMenu = nullptr,
462  *myFileMenuTLS = nullptr,
467  *myModesMenu = nullptr,
468  *myEditMenu = nullptr,
469  *myLockMenu = nullptr,
470  *myProcessingMenu = nullptr,
471  *myLocatorMenu = nullptr,
472  *myToolsMenu = nullptr,
473  *myWindowsMenu = nullptr,
474  *myHelpMenu = nullptr;
475 
477  FXMenuTitle* myModesMenuTitle = nullptr;
478 
480  FXMenuTitle* myLockMenuTitle = nullptr;
481 
484 
486  FXSplitter* myMainSplitter = nullptr;
487 
490 
493 
495  bool myHadDependentBuild = false;
496 
498  GNENet* myNet = nullptr;
499 
502 
505 
507  std::string myConfigPattern;
508 
511 
512 private:
515 
518 
521 
524 
527 
530 
533 
536 
539 
542 
545 
547  GNEViewNet* myViewNet = nullptr;
548 
550  const FXString myTitlePrefix;
551 
553  FXMDIMenu* myMDIMenu = nullptr;
554 
556  void fillMenuBar();
557 
559  void loadConfigOrNet(const std::string file, bool isNet, bool isReload = false, bool useStartupOptions = false, bool newNet = false);
560 
562  void closeAllWindows();
563 
565  bool continueWithUnsavedChanges(const std::string& operation);
566 
568  bool continueWithUnsavedAdditionalChanges(const std::string& operation);
569 
571  bool continueWithUnsavedDemandElementChanges(const std::string& operation);
572 
574  bool continueWithUnsavedDataElementChanges(const std::string& operation);
575 
577  FXString getFolder(const std::string& folder) const;
578 
581 
584 };
Supermode
@brie enum for supermodes
long long int SUMOTime
Definition: SUMOTime.h:32
The main window of the Netedit.
long onCmdSaveAsNetwork(FXObject *, FXSelector, void *)
called when the command/FXCall save network as is executed
long onCmdSaveAdditionals(FXObject *, FXSelector, void *)
called when the command/FXCall save additionals is executed
GNEApplicationWindowHelper::SupermodeCommands mySupermodeCommands
Supermode Commands.
long onCmdSaveTLSProgramsAs(FXObject *, FXSelector, void *)
called when the command/FXCall save TLSPrograms as is executed
FXMenuTitle * myModesMenuTitle
menu title for modes
void create()
Creates the main window (required by FOX)
GNEApplicationWindowHelper::WindowsMenuCommands myWindowsMenuCommands
Windows Menu Commands.
GNELoadThread * myLoadThread
the thread that loads the network
void clearUndoList()
clear undo list
GNENet * myNet
we are responsible for the net
long onCmdSaveEdgeTypes(FXObject *, FXSelector, void *)
called when the command/FXCall save edge types is executed
long onCmdOpenUndoListDialog(FXObject *, FXSelector, void *)
void handleEvent_Message(GUIEvent *e)
hanlde event of type message
bool continueWithUnsavedDemandElementChanges(const std::string &operation)
warns about unsaved changes in demand elements and gives the user the option to abort
long onCmdReloadDataElements(FXObject *, FXSelector, void *)
called when the command/FXCall reload data elements is executed
long onCmdLoadAdditionalsInSUMOGUI(FXObject *, FXSelector, void *)
called when user toggle windows checkbox "load additionals"
long onCmdOpenTLSPrograms(FXObject *, FXSelector, void *)
called when the command/FXCall open TLS programs is executed
long onUpdComputePathManager(FXObject *obj, FXSelector sel, void *ptr)
called when the update/FXCall compute path manager is executed
void updateControls()
update control contents after undo/redo or recompute
GNEApplicationWindowHelper::LockMenuCommands myLockMenuCommands
Lock Menu Commands.
long computeJunctionWithVolatileOptions()
called if the user selects Processing->compute junctions with volatile options
long onCmdNewNetwork(FXObject *, FXSelector, void *)
called when the command/FXCall new network is executed
GNEApplicationWindow()
FOX needs this for static members.
long onClipboardRequest(FXObject *sender, FXSelector sel, void *ptr)
called when the command/FXCall clipboard request is executed
FXMenuPane * myFileMenuAdditionals
long onUpdSaveNetwork(FXObject *, FXSelector, void *)
called when the update/FXCall save network is executed
std::string myUndoRedoListEnabled
string to check if undo/redo list is enabled (a String is used to keep the disabling reason)
std::string myConfigPattern
Input file pattern.
long onUpdReloadDataElements(FXObject *, FXSelector, void *)
called when the command/FXCall reload data elements is updated
long onCmdClose(FXObject *, FXSelector, void *)
called when the command/FXCall close is executed
long onCmdEditViewport(FXObject *, FXSelector, void *)
Called on menu Edit->Viewport.
long onCmdToggleViewOption(FXObject *, FXSelector, void *)
toggle viewOption
void enableSaveAdditionalsMenu()
enable save additionals
long onCmdToggleEditOptions(FXObject *, FXSelector, void *)
called if the user press key combination Alt + <0-9>
FXEX::FXThreadEvent myLoadThreadEvent
io-event with the load-thread
GNEApplicationWindowHelper::MenuBarFile myMenuBarFile
MenuBarFile.
long onCmdOpenAdditionals(FXObject *, FXSelector, void *)
called when the command/FXCall open additionals is executed
long onCmdForceSaveDataElements(FXObject *sender, FXSelector sel, void *ptr)
force save data elements (flag)
long onCmdForceSaveAdditionals(FXObject *sender, FXSelector sel, void *ptr)
force save additionals (flag)
long onUpdRedo(FXObject *obj, FXSelector sel, void *ptr)
called when the update/FXCall redo is executed
long onUpdReload(FXObject *, FXSelector, void *)
called when the update/FXCall reload is executed
GNEApplicationWindowHelper::ProcessingMenuCommands myProcessingMenuCommands
Processing Menu Commands.
GNEApplicationWindowHelper::EditMenuCommands & getEditMenuCommands()
getEdit Menu Commands (needed for show/hide menu commands)
void setStatusBarText(const std::string &statusBarText)
set text of the statusBar
GNEUndoList * myUndoList
the one and only undo list
long onUpdSaveDataElements(FXObject *, FXSelector, void *)
called when the update/FXCall save data elements is executed
long onCmdPaste(FXObject *, FXSelector, void *)
long onCmdSaveAsPlainXML(FXObject *, FXSelector, void *)
called when the command/FXCall save as plain xml is executed
void disableSaveDemandElementsMenu()
disable save demand elements
long onCmdOpenNetwork(FXObject *, FXSelector, void *)
called when the command/FXCall open network is executed
void closeAllWindows()
this method closes all windows and deletes the current simulation *‍/
long onCmdForceSaveNetwork(FXObject *sender, FXSelector sel, void *ptr)
force save network (flag)
long onCmdComputePathManager(FXObject *, FXSelector, void *)
bool continueWithUnsavedDataElementChanges(const std::string &operation)
warns about unsaved changes in data elements and gives the user the option to abort
long onCmdCopyTemplate(FXObject *, FXSelector, void *)
void enableSaveDataElementsMenu()
enable save data elements
FXString getFolder(const std::string &folder) const
extract folder
long onLoadThreadEvent(FXObject *, FXSelector, void *)
called when the command/FXCall load thread is executed
FXMDIMenu * myMDIMenu
The menu used for the MDI-windows.
long onCmdReloadDemandElements(FXObject *, FXSelector, void *)
called when the command/FXCall reload demand elements is executed
long onUpdSaveDemandElements(FXObject *, FXSelector, void *)
called when the update/FXCall save demand elements is executed
void loadConfigOrNet(const std::string file, bool isNet, bool isReload=false, bool useStartupOptions=false, bool newNet=false)
starts to load a netimport configuration or a network *‍/
long onUpdReloadAdditionals(FXObject *, FXSelector, void *)
called when the command/FXCall reload additionals is updated
SUMOTime getCurrentSimTime() const
get current simulation time (pure virtual but we don't need it)
long onCmdOptions(FXObject *, FXSelector, void *)
called if the user selects Processing->Configure Options
long onCmdLockAllElements(FXObject *, FXSelector sel, void *)
called when user press lock all elements button
long onKeyPress(FXObject *o, FXSelector sel, void *data)
called when a key is pressed
void disableSaveAdditionalsMenu()
disable save additionals
long onCmdQuit(FXObject *, FXSelector, void *)
Called by FOX if the application shall be closed.
long onCmdSaveEdgeTypesAs(FXObject *, FXSelector, void *)
called when the command/FXCall save edgeTypes as is executed
long onCmdClearMsgWindow(FXObject *, FXSelector, void *)
called when the command/FXCall clear message windows is executed
long onCmdLockElements(FXObject *, FXSelector sel, void *)
called when user press a lock menu check
long onCmdClearTemplate(FXObject *, FXSelector, void *)
GNEUndoList * getUndoList()
get pointer to undoList
long onUpdNeedsFrontElement(FXObject *, FXSelector, void *)
called when the update/FXCall needs front element is executed
long onCmdProcessButton(FXObject *, FXSelector sel, void *)
called when user press a process button (or a shortcut)
FXMenuTitle * myLockMenuTitle
menu title for lock
void loadOptionOnStartup()
load net on startup
GNEViewNet * getViewNet()
get pointer to viewNet
long onCmdSaveAdditionalsAs(FXObject *, FXSelector, void *)
called when the command/FXCall save additionals as is executed
GNEUndoListDialog * getUndoListDialog()
get pointer to undoList dialog
GNEApplicationWindowHelper::LocateMenuCommands myLocateMenuCommands
Locate Menu Commands.
bool continueWithUnsavedChanges(const std::string &operation)
warns about unsaved changes and gives the user the option to abort
long onCmdRunNetDiff(FXObject *, FXSelector, void *)
called when the command/FXCall run NetDiff is executed
long onCmdUndo(FXObject *, FXSelector, void *)
called when user press Ctrl+Z
long onCmdAbout(FXObject *, FXSelector, void *)
called when the command/FXCall show about dialog is executed
long onCmdToggleGrid(FXObject *, FXSelector, void *)
called if the user press key combination Ctrl + G to toggle grid
void dependentBuild()
build dependent
GNEApplicationWindow(const GNEApplicationWindow &)=delete
Invalidated copy constructor.
FXMenuPane * myFileMenuDemandElements
long onCmdEditChosen(FXObject *, FXSelector, void *)
called when the command/FXCall edit chosen is executed
GNEApplicationWindowHelper::EditMenuCommands myEditMenuCommands
Edit Menu Commands.
long onCmdForceSaveDemandElements(FXObject *sender, FXSelector sel, void *ptr)
force save demand elements (flag)
long onCmdSetSuperMode(FXObject *sender, FXSelector sel, void *ptr)
called if the user hits an edit-supermode hotkey
long onCmdAbort(FXObject *sender, FXSelector sel, void *ptr)
called if the user hits esc
GNEViewNet * myViewNet
pointer to current view net
long onCmdReloadAdditionals(FXObject *, FXSelector, void *)
called when the command/FXCall reload additionals is executed
long onUpdOpenUndoListDialog(FXObject *, FXSelector, void *)
const FXString myTitlePrefix
the prefix for the window title
void enableSaveTLSProgramsMenu()
enable save TLS Programs
double getTrackerInterval() const
get current tracker interval (pure virtual but we don't need it)
long onCmdReload(FXObject *, FXSelector, void *)
called when the command/FXCall reload is executed
void disableSaveDataElementsMenu()
disable save data elements
void fillMenuBar()
Builds the menu bar.
long onCmdFocusFrame(FXObject *sender, FXSelector sel, void *ptr)
called if the user hits key combination for focus on frame
GNEApplicationWindowHelper::LockMenuCommands & getLockMenuCommands()
get lock Menu Commands
long onCmdHelp(FXObject *sender, FXSelector sel, void *ptr)
called if the user selects help->Documentation
long onUpdRequireViewNet(FXObject *sender, FXSelector sel, void *ptr)
enable or disable sender object depending if viewNet exist
long onCmdSaveDemandElements(FXObject *, FXSelector, void *)
called when the command/FXCall save demand elements is executed
long onCmdCut(FXObject *, FXSelector, void *)
called when user press Ctrl+Z
long onCmdNewWindow(FXObject *, FXSelector, void *)
long onCmdOpenEdgeTypes(FXObject *, FXSelector, void *)
called when the command/FXCall open edgeType is executed
void enableSaveDemandElementsMenu()
enable save demand elements
long onCmdLoadDemandInSUMOGUI(FXObject *, FXSelector, void *)
called when user toggle windows checkbox "load demand"
long onUpdLockMenuTitle(FXObject *, FXSelector sel, void *)
enable or disable lock menu title
bool myAmLoading
information whether the gui is currently loading and the load-options shall be greyed out
long onCmdOpenConfiguration(FXObject *, FXSelector, void *)
called when the command/FXCall open configuration is executed
long onUpdSaveAdditionals(FXObject *, FXSelector, void *)
called when the update/FXCall save additionals is executed
long onCmdSaveDemandElementsAs(FXObject *, FXSelector, void *)
called when the command/FXCall save demand elements as is executed
long onCmdSaveDataElementsAs(FXObject *, FXSelector, void *)
called when the command/FXCall save data elements as is executed
GNEApplicationWindowHelper::FileMenuCommands myFileMenuCommands
File Menu Commands.
long onCmdSaveAllElements(FXObject *, FXSelector, void *)
called when the command/FXCall save all elements is executed
long onCmdOpenRecent(FXObject *, FXSelector, void *)
called when the command/FXCall open recent is executed
long onUpdOpen(FXObject *, FXSelector, void *)
called when the command/FXCall on update open executed
long onCmdSetMode(FXObject *sender, FXSelector sel, void *ptr)
called if the user hits an edit-mode hotkey
bool myHadDependentBuild
check if had dependent build
long onCmdBackspace(FXObject *sender, FXSelector sel, void *ptr)
called if the user hits backspace
void handleEvent_NetworkLoaded(GUIEvent *e)
handle event of type Network loaded
long onCmdCopy(FXObject *, FXSelector, void *)
long onCmdOpenSUMOGUI(FXObject *sender, FXSelector sel, void *ptr)
called if the user hints ctrl + T
long onUpdSaveAllElements(FXObject *, FXSelector, void *)
called when the update/FXCall save all elements is executed
void disableUndoRedo(const std::string &reason)
disable undo-redo giving a string with the reason
long onCmdOpenDemandElements(FXObject *, FXSelector, void *)
called when the command/FXCall open demand is executed
FXSynchQue< GUIEvent * > myEvents
List of got requests.
void enableUndoRedo()
disable undo-redo
bool continueWithUnsavedAdditionalChanges(const std::string &operation)
warns about unsaved changes in additionals and gives the user the option to abort
long onUpdToggleViewOption(FXObject *, FXSelector, void *)
update viewOption
GNEApplicationWindowHelper::ToolsMenuCommands myToolsMenuCommands
Tools Menu Commands.
long onCmdUnlockAllElements(FXObject *, FXSelector sel, void *)
called when user press unlock all elements button
const std::string & isUndoRedoEnabled() const
check if undo-redo is enabled
long onUpdNeedsNetwork(FXObject *, FXSelector, void *)
called when the update/FXCall needs network is executed
GNEApplicationWindowHelper::ToolbarsGrip & getToolbarsGrip()
get ToolbarsGrip
long onCmdSaveDataElements(FXObject *, FXSelector, void *)
called when the command/FXCall save data elements is executed
long onCmdLocate(FXObject *, FXSelector, void *)
called when the command/FXCall locate is executed
long onCmdDel(FXObject *sender, FXSelector sel, void *ptr)
called if the user hits del
long onCmdOpenDataElements(FXObject *, FXSelector, void *)
called when the command/FXCall open data is executed
void updateSuperModeMenuCommands(const Supermode supermode)
update FXMenuCommands depending of supermode
long onCmdSetFrontElement(FXObject *, FXSelector, void *)
called if the user call set front element
GNEUndoListDialog * myUndoListDialog
undoList dialog
long onUpdReloadDemandElements(FXObject *, FXSelector, void *)
called when the command/FXCall reload demand elements is updated
long onCmdEnter(FXObject *sender, FXSelector sel, void *ptr)
called if the user hits enter
FXCursor * getDefaultCursor()
get default cursor
long onCmdSetTemplate(FXObject *, FXSelector, void *)
long onCmdRedo(FXObject *, FXSelector, void *)
long onUpdUndo(FXObject *obj, FXSelector sel, void *ptr)
called when the update/FXCall undo is executed
GUIMessageWindow * myMessageWindow
A window to display messages, warnings and error in.
FXSplitter * myMainSplitter
The splitter that divides the main window into view and the log window.
long onCmdLockSelectElements(FXObject *, FXSelector sel, void *)
called when user press lock select elements button
long onCmdSaveTLSPrograms(FXObject *, FXSelector, void *)
called when the command/FXCall save TLSPrograms is executed
long onCmdSaveJoined(FXObject *, FXSelector, void *)
called when the command/FXCall save joined is executed
long onCmdSaveNetwork(FXObject *, FXSelector, void *)
called when the command/FXCall save network is executed
FXMenuPane * myFileMenu
the submenus
GNEApplicationWindowHelper::ToolbarsGrip myToolbarsGrip
Toolbars Grip.
FXMenuPane * myFileMenuDataElements
long onKeyRelease(FXObject *o, FXSelector sel, void *data)
called when a key is released
GNEApplicationWindowHelper::ModesMenuCommands myModesMenuCommands
Modes Menu Commands.
FXGLCanvas * getBuildGLCanvas() const
get build GL Canvas (must be implemented in all children)
long onCmdEditViewScheme(FXObject *, FXSelector, void *)
Called on menu Edit->Visualization.
long onCmdOpenForeign(FXObject *, FXSelector, void *)
called when the command/FXCall open foreign is executed
GNEApplicationWindow & operator=(const GNEApplicationWindow &)=delete
Invalidated assignment operator.
A NBNetBuilder extended by visualisation and editing capabilities.
Definition: GNENet.h:42
Dialog for edit rerouters.
A logging window for the gui.