Eclipse SUMO - Simulation of Urban MObility
All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
GNEApplicationWindow.h
Go to the documentation of this file.
1/****************************************************************************/
2// Eclipse SUMO, Simulation of Urban MObility; see https://eclipse.dev/sumo
3// Copyright (C) 2001-2025 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// class declarations
27// ===========================================================================
28
29class GNEInternalTest;
30class GNELoadThread;
32class GNEUndoList;
34class GUIEvent;
35
36// ===========================================================================
37// class definition
38// ===========================================================================
51 FXDECLARE(GNEApplicationWindow)
52
53public:
54
60 GNEApplicationWindow(FXApp* app, const GNETagPropertiesDatabase* tagPropertiesDatabase, const std::string& configPattern);
61
64
66 void create();
67
70
72 void createNewNetwork();
73
75 void loadNetwork(const std::string& networkFile);
76
78 void loadConfiguration(const std::string& configurationFile);
79
81 void loadOSM(const std::string& OSMFile);
82
84 void dependentBuild();
85
87 void setStatusBarText(const std::string& statusBarText);
88
91
94
98 void eventOccurred();
99
102
106
110 long onCmdNewWindow(FXObject*, FXSelector, void*);
111
113 long onCmdNewNetwork(FXObject*, FXSelector, void*);
114
116 long onCmdOpenNetconvertConfig(FXObject*, FXSelector, void*);
117
119 long onCmdOpenNetwork(FXObject*, FXSelector, void*);
120
122 long onCmdOpenForeign(FXObject*, FXSelector, void*);
123
125 long onCmdOpenNeteditConfig(FXObject*, FXSelector, void*);
126
128 long onCmdOpenSumoConfig(FXObject*, FXSelector, void*);
129
131 long onCmdReloadNeteditConfig(FXObject*, FXSelector, void*);
132
134 long onCmdReloadSumoConfig(FXObject*, FXSelector, void*);
135
137 long onUpdReloadNeteditConfig(FXObject*, FXSelector, void*);
138
140 long onUpdReloadSumoConfig(FXObject*, FXSelector, void*);
141
143 long onCmdOpenTLSPrograms(FXObject*, FXSelector, void*);
144
146 long onCmdReloadTLSPrograms(FXObject*, FXSelector, void*);
147
149 long onUpdReloadTLSPrograms(FXObject*, FXSelector, void*);
150
152 long onCmdOpenEdgeTypes(FXObject*, FXSelector, void*);
153
155 long onCmdReloadEdgeTypes(FXObject*, FXSelector, void*);
156
158 long onUpdReloadEdgeTypes(FXObject*, FXSelector, void*);
159
161 long onCmdSmartReload(FXObject*, FXSelector, void*);
162
164 long onUpdSmartReload(FXObject*, FXSelector, void*);
165
167 long onCmdReloadNetwork(FXObject*, FXSelector, void*);
168
170 long onUpdReloadNetwork(FXObject*, FXSelector, void*);
171
173 long onCmdOpenRecent(FXObject*, FXSelector, void*);
174
176 long onCmdClose(FXObject*, FXSelector, void*);
177
179 long onCmdEditViewScheme(FXObject*, FXSelector, void*);
180
182 long onCmdEditViewport(FXObject*, FXSelector, void*);
183
185 long onCmdLocate(FXObject*, FXSelector, void*);
186
188 long onCmdOpenPythonToolDialog(FXObject* obj, FXSelector, void*);
189
191 long onCmdRunPythonTool(FXObject* obj, FXSelector, void*);
192
194 long onCmdPostProcessingPythonTool(FXObject* obj, FXSelector, void*);
195
197 long onUpdPythonTool(FXObject*, FXSelector, void*);
198
200 long onCmdSaveNetwork(FXObject*, FXSelector, void*);
201
203 long onCmdSaveNetworkAs(FXObject*, FXSelector, void*);
204
206 long onCmdSavePlainXMLAs(FXObject*, FXSelector, void*);
207
209 long onCmdSaveJoinedJunctionsAs(FXObject*, FXSelector, void*);
210
212 long onCmdSaveNeteditConfig(FXObject*, FXSelector, void*);
213
215 long onCmdSaveNeteditConfigAs(FXObject*, FXSelector, void*);
216
218 long onUpdSaveNeteditConfig(FXObject*, FXSelector, void*);
219
221 long onCmdSaveSumoConfig(FXObject*, FXSelector, void*);
222
224 long onCmdSaveSumoConfigAs(FXObject*, FXSelector, void*);
225
227 long onUpdSaveSumoConfig(FXObject*, FXSelector, void*);
228
230 long onCmdSaveTLSPrograms(FXObject*, FXSelector, void*);
231
233 long onUpdSaveTLSPrograms(FXObject*, FXSelector, void*);
234
236 long onCmdSaveEdgeTypes(FXObject*, FXSelector, void*);
237
239 long onUpdSaveEdgeTypes(FXObject*, FXSelector, void*);
240
242 long onCmdSaveTLSProgramsAs(FXObject*, FXSelector, void*);
243
245 long onCmdSaveEdgeTypesAs(FXObject*, FXSelector, void*);
246
248 long onUpdSaveEdgeTypesAs(FXObject*, FXSelector, void*);
249
251 long onCmdOpenAdditionalElements(FXObject*, FXSelector, void*);
252
254 long onCmdReloadAdditionalElements(FXObject*, FXSelector, void*);
255
257 long onUpdReloadAdditionalElements(FXObject*, FXSelector, void*);
258
260 long onCmdSaveAdditionalElements(FXObject*, FXSelector, void*);
261
263 long onCmdSaveAdditionalElementsUnified(FXObject*, FXSelector, void*);
264
266 long onCmdSaveJuPedSimElementsAs(FXObject*, FXSelector, void*);
267
269 long onCmdOpenDemandElements(FXObject*, FXSelector, void*);
270
272 long onCmdReloadDemandElements(FXObject*, FXSelector, void*);
273
275 long onUpdReloadDemandElements(FXObject*, FXSelector, void*);
276
278 long onCmdSaveDemandElements(FXObject*, FXSelector, void*);
279
281 long onCmdOpenDataElements(FXObject*, FXSelector, void*);
282
284 long onCmdReloadDataElements(FXObject*, FXSelector, void*);
285
287 long onUpdReloadDataElements(FXObject*, FXSelector, void*);
288
290 long onCmdSaveDemandElementsUnified(FXObject*, FXSelector, void*);
291
293 long onCmdSaveDataElements(FXObject*, FXSelector, void*);
294
296 long onCmdSaveDataElementsUnified(FXObject*, FXSelector, void*);
297
299 long onCmdOpenMeanDataElements(FXObject*, FXSelector, void*);
300
302 long onCmdReloadMeanDataElements(FXObject*, FXSelector, void*);
303
305 long onUpdReloadMeanDataElements(FXObject*, FXSelector, void*);
306
308 long onCmdSaveMeanDataElements(FXObject*, FXSelector, void*);
309
311 long onCmdSaveMeanDataElementsUnified(FXObject*, FXSelector, void*);
312
314 long onUpdNeedsNetwork(FXObject*, FXSelector, void*);
315
317 long onUpdNeedsNetworkElement(FXObject*, FXSelector, void*);
318
320 long onUpdNeedsFrontElement(FXObject*, FXSelector, void*);
321
323 long onUpdSaveNetwork(FXObject*, FXSelector, void*);
324
326 long onUpdSaveAdditionalElements(FXObject*, FXSelector, void*);
327
329 long onUpdSaveAdditionalElementsUnified(FXObject*, FXSelector, void*);
330
332 long onUpdSaveJuPedSimElementsAs(FXObject*, FXSelector, void*);
333
335 long onUpdSaveDemandElements(FXObject*, FXSelector, void*);
336
338 long onUpdSaveDemandElementsUnified(FXObject*, FXSelector, void*);
339
341 long onUpdSaveDataElements(FXObject*, FXSelector, void*);
342
344 long onUpdSaveDataElementsUnified(FXObject*, FXSelector, void*);
345
347 long onUpdSaveMeanDataElements(FXObject*, FXSelector, void*);
348
350 long onUpdSaveMeanDataElementsUnified(FXObject*, FXSelector, void*);
351
353 long onUpdUndo(FXObject* obj, FXSelector sel, void* ptr);
354
356 long onUpdRedo(FXObject* obj, FXSelector sel, void* ptr);
357
359 long onUpdComputePathManager(FXObject* obj, FXSelector sel, void* ptr);
360
362 long onCmdToggleViewOption(FXObject*, FXSelector, void*);
363
365 long onUpdToggleViewOption(FXObject*, FXSelector, void*);
366
368 long onKeyPress(FXObject* o, FXSelector sel, void* data);
369
371 long onKeyRelease(FXObject* o, FXSelector sel, void* data);
372
374 long onCmdQuit(FXObject*, FXSelector, void*);
375
377 long onCmdEditChosen(FXObject*, FXSelector, void*);
378
380 long onCmdAbout(FXObject*, FXSelector, void*);
381
383 long onUpdOpen(FXObject*, FXSelector, void*);
384
386 long onCmdClearMsgWindow(FXObject*, FXSelector, void*);
387
389 long onCmdLoadAdditionalsInSUMOGUI(FXObject*, FXSelector, void*);
390
392 long onCmdLoadDemandInSUMOGUI(FXObject*, FXSelector, void*);
393
395 long onLoadThreadEvent(FXObject*, FXSelector, void*);
396
398 long onClipboardRequest(FXObject* sender, FXSelector sel, void* ptr);
399
401 long onCmdSetSuperMode(FXObject* sender, FXSelector sel, void* ptr);
402
404 long onCmdSetMode(FXObject* sender, FXSelector sel, void* ptr);
405
407 long onCmdLockElements(FXObject*, FXSelector sel, void*);
408
410 long onCmdLockAllElements(FXObject*, FXSelector sel, void*);
411
413 long onCmdUnlockAllElements(FXObject*, FXSelector sel, void*);
414
416 long onCmdLockSelectElements(FXObject*, FXSelector sel, void*);
417
419 long onUpdLockMenuTitle(FXObject*, FXSelector sel, void*);
420
422 long onCmdProcessButton(FXObject*, FXSelector sel, void*);
423
425 long onCmdOpenSUMOGUI(FXObject* sender, FXSelector sel, void* ptr);
426
428 long onCmdAbort(FXObject* sender, FXSelector sel, void* ptr);
429
431 long onCmdDel(FXObject* sender, FXSelector sel, void* ptr);
432
434 long onCmdEnter(FXObject* sender, FXSelector sel, void* ptr);
435
437 long onCmdBackspace(FXObject* sender, FXSelector sel, void* ptr);
438
440 long onCmdClearSelectionShortcut(FXObject* sender, FXSelector sel, void* ptr);
441
443 long onCmdFocusFrame(FXObject* sender, FXSelector sel, void* ptr);
444
446 long onCmdToggleTimeFormat(FXObject* sender, FXSelector sel, void* ptr);
447
449 long onUpdToggleTimeFormat(FXObject* sender, FXSelector sel, void* ptr);
450
452 long onCmdRunTests(FXObject*, FXSelector, void*);
453
455 long onUpdRequireViewNet(FXObject* sender, FXSelector sel, void* ptr);
456
458 long onUpdRequireRecomputing(FXObject* sender, FXSelector sel, void* ptr);
459
461 long onCmdRunNetgenerate(FXObject* sender, FXSelector sel, void* ptr);
462
464 long onCmdPostprocessingNetgenerate(FXObject* sender, FXSelector sel, void* ptr);
465
467 long onCmdToggleGrid(FXObject*, FXSelector, void*);
468
470 long onCmdToggleDrawJunctionShape(FXObject*, FXSelector, void*);
471
473 long onCmdSetFrontElement(FXObject*, FXSelector, void*);
474
476 long onCmdToggleEditOptions(FXObject*, FXSelector, void*);
477
479 long onCmdHelp(FXObject* sender, FXSelector sel, void* ptr);
480
482 long onCmdChangelog(FXObject* sender, FXSelector sel, void* ptr);
483
485 long onCmdHotkeys(FXObject* sender, FXSelector sel, void* ptr);
486
488 long onCmdTutorial(FXObject* sender, FXSelector sel, void* ptr);
489
491 long onCmdFeedback(FXObject* sender, FXSelector sel, void* ptr);
492
494 long onCmdToggleComputeNetworkData(FXObject*, FXSelector, void*);
495
497 long onCmdToggleUndoRedo(FXObject*, FXSelector, void*);
498
500 long onCmdToggleUndoRedoLoading(FXObject*, FXSelector, void*);
501
503 long onCmdOpenOptionsDialog(FXObject*, FXSelector, void*);
504
506 long onCmdOpenSumoOptionsDialog(FXObject*, FXSelector, void*);
507
509 long onCmdOpenNetgenerateDialog(FXObject*, FXSelector, void*);
510
512 long onCmdOpenNetgenerateOptionsDialog(FXObject*, FXSelector, void*);
513
515 long onCmdUndo(FXObject*, FXSelector, void*);
516
517 // @brief called when user press Ctrl+Y
518 long onCmdRedo(FXObject*, FXSelector, void*);
519
520 // @brief called when user press open undoList dialog
521 long onCmdOpenUndoListDialog(FXObject*, FXSelector, void*);
522
523 // @brief called when openUndoList is updated
524 long onUpdOpenUndoListDialog(FXObject*, FXSelector, void*);
525
526 // @brief called when user press compute path manager
527 long onCmdComputePathManager(FXObject*, FXSelector, void*);
528
530 long onCmdCut(FXObject*, FXSelector, void*);
531
532 // @brief called when user press Ctrl+Y
533 long onCmdCopy(FXObject*, FXSelector, void*);
534
535 // @brief called when user press Ctrl+Y
536 long onCmdPaste(FXObject*, FXSelector, void*);
537
538 // @brief called when user press Ctrl+F1
539 long onCmdSetTemplate(FXObject*, FXSelector, void*);
540
541 // @brief called when user press Ctrl+F2
542 long onCmdCopyTemplate(FXObject*, FXSelector, void*);
543
544 // @brief called when user press Ctrl+F3
545 long onCmdClearTemplate(FXObject*, FXSelector, void*);
546
548
552 FXGLCanvas* getBuildGLCanvas() const;
553
556
558 double getTrackerInterval() const;
560
562 FXCursor* getDefaultCursor();
563
566
569
572
575
578
581
583 void updateControls();
584
586 void updateSuperModeMenuCommands(const Supermode supermode);
587
591 bool isUndoRedoAllowed() const;
592
595
597 void disableUndoRedoTemporally(const std::string& reason);
598
600 const std::string& isUndoRedoEnabledTemporally() const;
601
603 void clearUndoList();
604
606
609
612
615
618
621
624
627
630
632 void loadDemandElements();
633
635 void loadDataElements();
636
639
642
645
647 bool allowInputSignals(FXObject* obj) const;
648
650
651protected:
654
657
660
662 bool myAmLoading = false;
663
665 FXMenuPane* myFileMenu = nullptr;
666 FXMenuPane* myFileMenuNeteditConfig = nullptr;
667 FXMenuPane* myFileMenuSumoConfig = nullptr;
668 FXMenuPane* myFileMenuTLS = nullptr;
669 FXMenuPane* myFileMenuEdgeTypes = nullptr;
670 FXMenuPane* myFileMenuAdditionals = nullptr;
671 FXMenuPane* myFileMenuDemandElements = nullptr;
672 FXMenuPane* myFileMenuDataElements = nullptr;
673 FXMenuPane* myFileMenuMeanDataElements = nullptr;
674 FXMenuPane* myFileMenuRecentNetworks = nullptr;
675 FXMenuPane* myFileMenuRecentConfigs = nullptr;
676 FXMenuPane* myModesMenu = nullptr;
677 FXMenuPane* myEditMenu = nullptr;
678 FXMenuPane* myLockMenu = nullptr;
679 FXMenuPane* myProcessingMenu = nullptr;
680 FXMenuPane* myLocatorMenu = nullptr;
681 FXMenuPane* myToolsMenu = nullptr;
682 FXMenuPane* myToolsAssignMenu = nullptr;
683 FXMenuPane* myToolsDetectorMenu = nullptr;
684 FXMenuPane* myToolsDistrictMenu = nullptr;
685 FXMenuPane* myToolsDRTMenu = nullptr;
686 FXMenuPane* myToolsEmissionsMenu = nullptr;
687 FXMenuPane* myToolsImportMenu = nullptr;
688 FXMenuPane* myToolsImportCityBrainMenu = nullptr;
689 FXMenuPane* myToolsImportGTFSMenu = nullptr;
690 FXMenuPane* myToolsImportVissim = nullptr;
691 FXMenuPane* myToolsImportVisum = nullptr;
692 FXMenuPane* myToolsNetMenu = nullptr;
693 FXMenuPane* myToolsRouteMenu = nullptr;
694 FXMenuPane* myToolsOutputMenu = nullptr;
695 FXMenuPane* myToolsShapes = nullptr;
696 FXMenuPane* myToolsTLS = nullptr;
697 FXMenuPane* myToolsTriggerMenu = nullptr;
698 FXMenuPane* myToolsTurnDefs = nullptr;
699 FXMenuPane* myToolsVisualizationMenu = nullptr;
700 FXMenuPane* myToolsXML = nullptr;
701 FXMenuPane* myWindowMenu = nullptr;
702 FXMenuPane* myHelpMenu = nullptr;
703
705 std::map<std::string, FXMenuPane*> myMenuPaneToolMaps;
706
708 FXMenuTitle* myModesMenuTitle = nullptr;
709
711 FXMenuTitle* myLockMenuTitle = nullptr;
712
715
717 FXSplitter* myMainSplitter = nullptr;
718
721
724
727
730
733
735 GNENet* myNet = nullptr;
736
739
742
744 std::string myConfigPattern;
745
748
751
754
757
760
763
766
767private:
770
773
776
779
782
785
788
791
794
797
800
803
806
808 const FXString myTitlePrefix;
809
811 bool myAllowUndoRedo = true;
812
815
817 FXMDIMenu* myMDIMenu = nullptr;
818
820 void fillMenuBar();
821
823 void closeAllWindows();
824
826 bool askSaveElements();
827
829 void setInputInSumoOptions(const bool ignoreAdditionals, const bool ignoreRoutes);
830
832 FXString getFolder(const std::string& folder) const;
833
836
839};
Supermode
@brie enum for supermodes
long long int SUMOTime
Definition GUI.h:36
The main window of Netedit.
bool askSaveElements()
warns about unsaved changes and gives the user the option to abort
long onCmdOpenNetgenerateDialog(FXObject *, FXSelector, void *)
called when user press "netgenerate" button
GNEApplicationWindowHelper::SupermodeCommands mySupermodeCommands
Supermode Commands.
long onCmdToggleUndoRedoLoading(FXObject *, FXSelector, void *)
called when toggle checkbox disable undo redo during loading (file)
long onCmdSaveTLSProgramsAs(FXObject *, FXSelector, void *)
called when the command/FXCall save TLSPrograms as is executed
FXMenuTitle * myModesMenuTitle
menu title for modes
const std::string & isUndoRedoEnabledTemporally() const
check if undo-redo is enabled temporally
void create()
Creates the main window (required by FOX)
long onCmdToggleDrawJunctionShape(FXObject *, FXSelector, void *)
called if the user press key combination Ctrl + J to toggle draw junction shape
GNEApplicationWindowHelper::WindowsMenuCommands myWindowsMenuCommands
Windows Menu Commands.
GNELoadThread * myLoadThread
the thread that loads the network
void enableUndoRedoTemporally()
enable undo-redo temporally (for example, after creating an edge)
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 *)
long onCmdReloadSumoConfig(FXObject *, FXSelector, void *)
called when the command/FXCall reload SumoConfig is executed
void handleEvent_Message(GUIEvent *e)
handle event of type message
void setInputInSumoOptions(const bool ignoreAdditionals, const bool ignoreRoutes)
set input files in sumo options
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
long onCmdSaveAdditionalElements(FXObject *, FXSelector, void *)
called when the command/FXCall save additionals is executed
void updateControls()
update control contents after undo/redo or recompute
long onUpdSaveMeanDataElementsUnified(FXObject *, FXSelector, void *)
called when the update/FXCall save meanDatas unified is executed
GNEApplicationWindowHelper::LockMenuCommands myLockMenuCommands
Lock Menu Commands.
const GNETagPropertiesDatabase * myTagPropertiesDatabase
tagProperties database
long computeJunctionWithVolatileOptions()
called if the user selects Processing->compute junctions with volatile options
long onCmdFeedback(FXObject *sender, FXSelector sel, void *ptr)
called if the user selects help->feedback
long onCmdNewNetwork(FXObject *, FXSelector, void *)
called when the command/FXCall new network is executed
long onCmdRunTests(FXObject *, FXSelector, void *)
run tests
long onCmdSavePlainXMLAs(FXObject *, FXSelector, void *)
called when the command/FXCall save as plain xml is executed
long onCmdOpenOptionsDialog(FXObject *, FXSelector, void *)
called when user press "options" button
GNEApplicationWindowHelper::HelpMenuCommands myHelpMenuCommands
Help Menu Commands.
GNEApplicationWindow()
FOX needs this for static members.
long onClipboardRequest(FXObject *sender, FXSelector sel, void *ptr)
called when the command/FXCall clipboard request is executed
long onCmdToggleUndoRedo(FXObject *, FXSelector, void *)
called when toggle checkbox disable undo redo (processing)
long onCmdSaveNeteditConfigAs(FXObject *, FXSelector, void *)
called when the command/FXCall save netedit config as is executed
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)
long onUpdSaveEdgeTypesAs(FXObject *, FXSelector, void *)
called when the command/FXCall save edgeTypes as is updated
std::string myConfigPattern
Input file pattern.
std::map< std::string, FXMenuPane * > myMenuPaneToolMaps
map with menu pane tools and strings
long onCmdSaveSumoConfig(FXObject *, FXSelector, void *)
called when the command/FXCall save SumoConfig is executed
long onCmdOpenMeanDataElements(FXObject *, FXSelector, void *)
called when the command/FXCall open meanDatas is executed
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
FXEX::MFXThreadEvent myLoadThreadEvent
io-event with the load-thread
OptionsCont myOriginalNetgenerateOptions
original netgenerate options container
long onCmdToggleEditOptions(FXObject *, FXSelector, void *)
called if the user press key combination Alt + <0-9>
GNEApplicationWindowHelper::MenuBarFile myMenuBarFile
MenuBarFile.
OptionsCont myOriginalNeteditOptions
original netedit options container
long onUpdRedo(FXObject *obj, FXSelector sel, void *ptr)
called when the update/FXCall redo is executed
GNEApplicationWindowHelper::ModesMenuCommands & getModesMenuCommands()
get modes Menu Commands (needed for show/hide menu commands)
long onCmdToggleTimeFormat(FXObject *sender, FXSelector sel, void *ptr)
called if the user press the toggle time format button
long onCmdRunNetgenerate(FXObject *sender, FXSelector sel, void *ptr)
called when run netgenerate is called
GNEApplicationWindowHelper::ProcessingMenuCommands myProcessingMenuCommands
Processing Menu Commands.
OptionsCont & getSumoOptions()
get SUMO options container
FXMenuPane * myToolsImportCityBrainMenu
GNEApplicationWindowHelper::EditMenuCommands & getEditMenuCommands()
get Edit 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
FXMenuPane * myFileMenuDemandElements
long onCmdSmartReload(FXObject *, FXSelector, void *)
called when the command/FXCall smart reload is executed
long onCmdPaste(FXObject *, FXSelector, void *)
long onUpdPythonTool(FXObject *, FXSelector, void *)
called when the command/FXCall python tool is updated
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 onCmdComputePathManager(FXObject *, FXSelector, void *)
long onCmdToggleComputeNetworkData(FXObject *, FXSelector, void *)
called when toggle checkbox compute network when switching between supermodes
long onCmdCopyTemplate(FXObject *, FXSelector, void *)
FXString getFolder(const std::string &folder) const
extract folder
long onLoadThreadEvent(FXObject *, FXSelector, void *)
called when the command/FXCall load thread is executed
long onUpdSaveDemandElementsUnified(FXObject *, FXSelector, void *)
called when the update/FXCall save demand elements unified is executed
long onUpdRequireRecomputing(FXObject *sender, FXSelector sel, void *ptr)
update label for require recomputing
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 onUpdSaveMeanDataElements(FXObject *, FXSelector, void *)
called when the update/FXCall save meanDatas is executed
long onUpdSaveDemandElements(FXObject *, FXSelector, void *)
called when the update/FXCall save demand elements is executed
OptionsCont myOriginalSumoOptions
original sumo options container
OptionsCont myNetgenerateOptions
netgenerate options container
SUMOTime getCurrentSimTime() const
get current simulation time (pure virtual but we don't need it)
long onCmdReloadEdgeTypes(FXObject *, FXSelector, void *)
called when the command/FXCall reload edge types is executed
FXMenuPane * myFileMenuMeanDataElements
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
long onCmdQuit(FXObject *, FXSelector, void *)
Called by FOX if the application shall be closed.
long onCmdSaveMeanDataElements(FXObject *, FXSelector, void *)
called when the command/FXCall save meanDatas is executed
long onCmdSaveEdgeTypesAs(FXObject *, FXSelector, void *)
called when the command/FXCall save edgeTypes as is executed
long onCmdClearSelectionShortcut(FXObject *sender, FXSelector sel, void *ptr)
called if the user hits key combination for clear selection
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
MFXButtonTooltip * myRequireRecomputingButton
Button used for show if recomputing is needed.
long onCmdClearTemplate(FXObject *, FXSelector, void *)
GNEUndoList * getUndoList()
get pointer to undoList
long onUpdSaveNeteditConfig(FXObject *, FXSelector, void *)
called when the command/FXCall save netedit config is updated
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 onCmdOpenSumoConfig(FXObject *, FXSelector, void *)
called when the command/FXCall open SumoConfig is executed
GNEUndoListDialog * getUndoListDialog()
get pointer to undoList dialog
GNEApplicationWindowHelper::LocateMenuCommands myLocateMenuCommands
Locate Menu Commands.
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 onUpdReloadEdgeTypes(FXObject *, FXSelector, void *)
called when the command/FXCall reload edge types is updated
void disableUndoRedoTemporally(const std::string &reason)
disable undo-redo temporally giving a string with the reason (for example, if we're creating an edge)
long onCmdToggleGrid(FXObject *, FXSelector, void *)
called if the user press key combination Ctrl + G to toggle grid
void loadDataElements()
load data elements
void dependentBuild()
build dependent
GNEApplicationWindow(const GNEApplicationWindow &)=delete
Invalidated copy constructor.
long onCmdEditChosen(FXObject *, FXSelector, void *)
called when the command/FXCall edit chosen is executed
long onUpdReloadTLSPrograms(FXObject *, FXSelector, void *)
called when the command/FXCall reload TLS programs is updated
long onCmdOpenSumoOptionsDialog(FXObject *, FXSelector, void *)
called when user press "sumo options" button
GNEApplicationWindowHelper::EditMenuCommands myEditMenuCommands
Edit Menu Commands.
long onCmdSetSuperMode(FXObject *sender, FXSelector sel, void *ptr)
called if the user hits an edit-supermode hotkey
bool allowInputSignals(FXObject *obj) const
check if ignore input signal (using during netedit tests)
long onCmdReloadAdditionalElements(FXObject *, FXSelector, void *)
called when the command/FXCall reload additionals is executed
long onUpdSaveSumoConfig(FXObject *, FXSelector, void *)
called when the command/FXCall save SumoConfig is updated
long onCmdAbort(FXObject *sender, FXSelector sel, void *ptr)
called if the user hits esc
void loadDemandElements()
load demand elements
void loadAdditionalElements()
load additional elements
GNEViewNet * myViewNet
pointer to current view net
long onUpdOpenUndoListDialog(FXObject *, FXSelector, void *)
long onUpdNeedsNetworkElement(FXObject *, FXSelector, void *)
called when the update/FXCall needs at least one network element is executed
const FXString myTitlePrefix
the prefix for the window title
long onCmdOpenAdditionalElements(FXObject *, FXSelector, void *)
called when the command/FXCall open additionals is executed
long onCmdSaveNetworkAs(FXObject *, FXSelector, void *)
called when the command/FXCall save network as is executed
double getTrackerInterval() const
get current tracker interval (pure virtual but we don't need it)
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
void loadConfiguration(const std::string &configurationFile)
starts to load a configuration
GNEApplicationWindowHelper::LockMenuCommands & getLockMenuCommands()
get lock Menu Commands
GNEApplicationWindow & operator=(const GNEApplicationWindow &)=delete
Invalidated assignment operator.
long onCmdPostprocessingNetgenerate(FXObject *sender, FXSelector sel, void *ptr)
postprocessing netgenerate
long onCmdHelp(FXObject *sender, FXSelector sel, void *ptr)
called if the user selects help->Documentation
long onCmdSaveNeteditConfig(FXObject *, FXSelector, void *)
called when the command/FXCall save netedit config is executed
long onUpdRequireViewNet(FXObject *sender, FXSelector sel, void *ptr)
enable or disable sender object depending if viewNet exist
long onUpdReloadNeteditConfig(FXObject *, FXSelector, void *)
called when the command/FXCall reload netedit config is updated
OptionsCont & getNetgenerateOptions()
get netgenerate options container
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 onCmdSaveJoinedJunctionsAs(FXObject *, FXSelector, void *)
called when the command/FXCall save joined is executed
long onCmdOpenEdgeTypes(FXObject *, FXSelector, void *)
called when the command/FXCall open edgeType is executed
long onCmdSaveJuPedSimElementsAs(FXObject *, FXSelector, void *)
called when the command/FXCall save JuPedSim elements as is executed
const GNETagPropertiesDatabase * getTagPropertiesDatabase() const
get tag properties database
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 onUpdSaveDataElementsUnified(FXObject *, FXSelector, void *)
called when the update/FXCall save data elements unified is executed
long onCmdReloadMeanDataElements(FXObject *, FXSelector, void *)
called when the command/FXCall reload meanDatas is executed
long onCmdReloadTLSPrograms(FXObject *, FXSelector, void *)
called when the command/FXCall reload TLS programs is executed
GNEApplicationWindowHelper::FileMenuCommands myFileMenuCommands
File Menu Commands.
void loadMeanDataElements()
load meanData elements
GNEInternalTest * myInternalTest
internal test system
void loadOSM(const std::string &OSMFile)
starts to load a OSM File
long onUpdSaveAdditionalElements(FXObject *, FXSelector, void *)
called when the update/FXCall save additionals is executed
long onCmdOpenNeteditConfig(FXObject *, FXSelector, void *)
called when the command/FXCall open netedit config is executed
bool myAllowUndoRedoLoading
allow undo-redo loading (read from registry)
long onCmdOpenRecent(FXObject *, FXSelector, void *)
called when the command/FXCall open recent is executed
bool myAllowUndoRedo
allow undo-redo (read from registry)
long onCmdChangelog(FXObject *sender, FXSelector sel, void *ptr)
called if the user selects help->Changelog
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 updateRecomputingLabel()
update recomputing label
long onUpdReloadMeanDataElements(FXObject *, FXSelector, void *)
called when the command/FXCall reload meanDatas is updated
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 onCmdOpenDemandElements(FXObject *, FXSelector, void *)
called when the command/FXCall open demand is executed
FXMenuPane * myToolsVisualizationMenu
void loadNetwork(const std::string &networkFile)
load network
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
long onUpdReloadSumoConfig(FXObject *, FXSelector, void *)
called when the command/FXCall reload SumoConfig is updated
long onUpdNeedsNetwork(FXObject *, FXSelector, void *)
called when the update/FXCall needs network is executed
long onUpdReloadAdditionalElements(FXObject *, FXSelector, void *)
called when the command/FXCall reload additionals is updated
GNEApplicationWindowHelper::ToolbarsGrip & getToolbarsGrip()
get ToolbarsGrip
long onUpdSaveJuPedSimElementsAs(FXObject *, FXSelector, void *)
called when the update/FXCall save juPedSim as is executed
long onUpdReloadNetwork(FXObject *, FXSelector, void *)
called when the update/FXCall network reload is executed
OptionsCont mySumoOptions
sumo options container
bool consoleOptionsLoaded()
check if console options was already loaded
long onCmdSaveDataElements(FXObject *, FXSelector, void *)
called when the command/FXCall save data elements is executed
long onCmdOpenPythonToolDialog(FXObject *obj, FXSelector, void *)
called when user press over a tool dialog button
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 onCmdHotkeys(FXObject *sender, FXSelector sel, void *ptr)
called if the user selects help->Hotkeys
long onCmdOpenDataElements(FXObject *, FXSelector, void *)
called when the command/FXCall open data is executed
long onCmdRunPythonTool(FXObject *obj, FXSelector, void *)
called when user run a tool
void updateSuperModeMenuCommands(const Supermode supermode)
update FXMenuCommands depending of supermode
bool myConsoleOptionsLoaded
flag for check if console options was already loaded
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
void createNewNetwork()
create new network
long onCmdEnter(FXObject *sender, FXSelector sel, void *ptr)
called if the user hits enter
FXCursor * getDefaultCursor()
get default cursor
long onCmdSetTemplate(FXObject *, FXSelector, void *)
GNEApplicationWindowHelper::FileMenuCommands & getFileMenuCommands()
get file Menu Commands (needed for show/hide menu commands)
long onCmdSaveDataElementsUnified(FXObject *, FXSelector, void *)
called when the command/FXCall save data elements unified is executed
long onCmdTutorial(FXObject *sender, FXSelector sel, void *ptr)
called if the user selects help->Tutorial
long onCmdRedo(FXObject *, FXSelector, void *)
long onCmdOpenNetgenerateOptionsDialog(FXObject *, FXSelector, void *)
called when user press "netgenerate options" button
long onUpdUndo(FXObject *obj, FXSelector sel, void *ptr)
called when the update/FXCall undo is executed
const GNEApplicationWindowHelper::ProcessingMenuCommands & getProcessingMenuCommands() const
get processing Menu Commands
long onCmdSaveDemandElementsUnified(FXObject *, FXSelector, void *)
called when the command/FXCall save demand elements unified is executed
long onCmdPostProcessingPythonTool(FXObject *obj, FXSelector, void *)
post processing after run tool
GUIMessageWindow * myMessageWindow
A window to display messages, warnings and error in.
long onCmdReloadNetwork(FXObject *, FXSelector, void *)
called when the command/FXCall network reload is executed
long onUpdSaveAdditionalElementsUnified(FXObject *, FXSelector, void *)
called when the update/FXCall save additionals unified is executed
long onUpdSmartReload(FXObject *, FXSelector, void *)
called when the update/FXCall smart reload is executed
FXMenuPane * myFileMenuRecentNetworks
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 onCmdOpenNetconvertConfig(FXObject *, FXSelector, void *)
called when the command/FXCall open netconvertconfiguration is executed
long onCmdSaveTLSPrograms(FXObject *, FXSelector, void *)
called when the command/FXCall save TLSPrograms is executed
long onUpdSaveEdgeTypes(FXObject *, FXSelector, void *)
called when the command/FXCall save edge types is updated
long onCmdReloadNeteditConfig(FXObject *, FXSelector, void *)
called when the command/FXCall reload netedit config is executed
long onCmdSaveNetwork(FXObject *, FXSelector, void *)
called when the command/FXCall save network is executed
FXMenuPane * myFileMenu
the submenus
GNEInternalTest * getNeteditTestSystem() const
get netedit test system
GNEApplicationWindowHelper::ToolbarsGrip myToolbarsGrip
Toolbars Grip.
long onUpdToggleTimeFormat(FXObject *sender, FXSelector sel, void *ptr)
update toggle time format button
MFXSynchQue< GUIEvent * > myThreadEvents
List of load requests.
long onCmdSaveAdditionalElementsUnified(FXObject *, FXSelector, void *)
called when the command/FXCall save additionals unified is executed
long onKeyRelease(FXObject *o, FXSelector sel, void *data)
called when a key is released
GNEApplicationWindowHelper::ModesMenuCommands myModesMenuCommands
Modes Menu Commands.
long onUpdSaveTLSPrograms(FXObject *, FXSelector, void *)
called when the command/FXCall save TLSPrograms is updated
FXGLCanvas * getBuildGLCanvas() const
get build GL Canvas (must be implemented in all children)
long onCmdEditViewScheme(FXObject *, FXSelector, void *)
Called on menu Edit->Visualization.
long onCmdSaveSumoConfigAs(FXObject *, FXSelector, void *)
called when the command/FXCall save SumoConfig as is executed
long onCmdOpenForeign(FXObject *, FXSelector, void *)
called when the command/FXCall open foreign is executed
long onCmdSaveMeanDataElementsUnified(FXObject *, FXSelector, void *)
called when the command/FXCall save meanDatas unified is executed
A NBNetBuilder extended by visualisation and editing capabilities.
Definition GNENet.h:42
Dialog for edit rerouters.
A logging window for the gui.
A storage for options typed value containers)
Definition OptionsCont.h:89