Eclipse SUMO - Simulation of Urban MObility
Loading...
Searching...
No Matches
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-2026 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 GUIEvent;
31class GNEUndoList;
33class GNELoadThread;
34class GNEInternalTest;
36class FileBucket;
38
39// ===========================================================================
40// class definition
41// ===========================================================================
42
45 FXDECLARE(GNEApplicationWindow)
46
47public:
53 GNEApplicationWindow(FXApp* app, const GNETagPropertiesDatabase* tagPropertiesDatabase, const std::string& configPattern);
54
57
59 void create();
60
63
65 void createNewNetwork();
66
68 void loadNetwork(const std::string& networkFile);
69
71 void loadConfiguration(const std::string& configurationFile);
72
74 void loadOSM(const std::string& OSMFile);
75
77 void dependentBuild();
78
80 void setStatusBarText(const std::string& statusBarText);
81
83 long computeJunctionWithVolatileOptions(FXObject* sender, FXSelector sel, void* ptr);
84
87
90
93
96
98 void setExternalRunner(GNEExternalRunner* externalRunner);
99
101
105 void eventOccurred();
106
109
112
114
118 long onCmdNewWindow(FXObject*, FXSelector, void*);
119
121 long onCmdNewNetwork(FXObject*, FXSelector, void*);
122
124 long onCmdOpenNetconvertConfig(FXObject*, FXSelector, void*);
125
127 long onCmdOpenNetwork(FXObject*, FXSelector, void*);
128
130 long onCmdOpenForeign(FXObject*, FXSelector, void*);
131
133 long onCmdOpenNeteditConfig(FXObject*, FXSelector, void*);
134
136 long onCmdOpenSumoConfig(FXObject*, FXSelector, void*);
137
139 long onCmdReloadNeteditConfig(FXObject*, FXSelector, void*);
140
142 long onCmdReloadSumoConfig(FXObject*, FXSelector, void*);
143
145 long onUpdReloadNeteditConfig(FXObject*, FXSelector, void*);
146
148 long onUpdReloadSumoConfig(FXObject*, FXSelector, void*);
149
151 long onCmdOpenTLSPrograms(FXObject*, FXSelector, void*);
152
154 long onCmdReloadTLSPrograms(FXObject*, FXSelector, void*);
155
157 long onUpdReloadTLSPrograms(FXObject*, FXSelector, void*);
158
160 long onCmdOpenEdgeTypes(FXObject*, FXSelector, void*);
161
163 long onCmdReloadEdgeTypes(FXObject*, FXSelector, void*);
164
166 long onUpdReloadEdgeTypes(FXObject*, FXSelector, void*);
167
169 long onCmdSmartReload(FXObject*, FXSelector, void*);
170
172 long onUpdSmartReload(FXObject*, FXSelector, void*);
173
175 long onCmdReloadNetwork(FXObject*, FXSelector, void*);
176
178 long onUpdReloadNetwork(FXObject*, FXSelector, void*);
179
181 long onCmdOpenRecent(FXObject*, FXSelector, void*);
182
184 long onCmdClose(FXObject*, FXSelector, void*);
185
187 long onCmdEditViewScheme(FXObject*, FXSelector, void*);
188
190 long onCmdEditViewport(FXObject*, FXSelector, void*);
191
193 long onCmdLocate(FXObject*, FXSelector, void*);
194
196 long onCmdOpenPythonToolDialog(FXObject* obj, FXSelector, void*);
197
199 long onCmdRunPythonTool(FXObject* obj, FXSelector, void*);
200
202 long onCmdPostProcessingPythonTool(FXObject* obj, FXSelector, void*);
203
205 long onUpdPythonTool(FXObject*, FXSelector, void*);
206
208 long onCmdSaveNetwork(FXObject*, FXSelector, void*);
209
211 long onCmdSaveNetworkAs(FXObject*, FXSelector, void*);
212
214 long onCmdSavePlainXML(FXObject*, FXSelector, void*);
215
217 long onCmdSavePlainXMLAs(FXObject*, FXSelector, void*);
218
220 long onCmdSaveJoinedJunctionsAs(FXObject*, FXSelector, void*);
221
223 long onCmdSaveNeteditConfig(FXObject*, FXSelector, void*);
224
226 long onCmdSaveNeteditConfigAs(FXObject*, FXSelector, void*);
227
229 long onUpdSaveNeteditConfig(FXObject*, FXSelector, void*);
230
232 long onUpdSaveNeteditConfigAs(FXObject*, FXSelector, void*);
233
235 long onCmdSaveSumoConfig(FXObject*, FXSelector, void*);
236
238 long onCmdSaveSumoConfigAs(FXObject*, FXSelector, void*);
239
241 long onUpdSaveSumoConfig(FXObject*, FXSelector, void*);
242
244 long onUpdSaveSumoConfigAs(FXObject*, FXSelector, void*);
245
247 long onCmdSaveTLSPrograms(FXObject*, FXSelector, void*);
248
250 long onUpdSaveTLSPrograms(FXObject*, FXSelector, void*);
251
253 long onCmdSaveEdgeTypes(FXObject*, FXSelector, void*);
254
256 long onUpdSaveEdgeTypes(FXObject*, FXSelector, void*);
257
259 long onCmdSaveTLSProgramsAs(FXObject*, FXSelector, void*);
260
262 long onCmdSaveEdgeTypesAs(FXObject*, FXSelector, void*);
263
265 long onCmdOpenAdditionalElements(FXObject*, FXSelector, void*);
266
268 long onCmdReloadAdditionalElements(FXObject*, FXSelector, void*);
269
271 long onUpdReloadAdditionalElements(FXObject*, FXSelector, void*);
272
274 long onCmdSaveAdditionalElements(FXObject*, FXSelector, void*);
275
277 long onCmdSaveAdditionalElementsAs(FXObject*, FXSelector, void*);
278
280 long onCmdSaveAdditionalElementsUnified(FXObject*, FXSelector, void*);
281
283 long onCmdSaveJuPedSimElementsAs(FXObject*, FXSelector, void*);
284
286 long onCmdOpenDemandElements(FXObject*, FXSelector, void*);
287
289 long onCmdReloadDemandElements(FXObject*, FXSelector, void*);
290
292 long onUpdReloadDemandElements(FXObject*, FXSelector, void*);
293
295 long onCmdSaveDemandElements(FXObject*, FXSelector, void*);
296
298 long onCmdOpenDataElements(FXObject*, FXSelector, void*);
299
301 long onCmdReloadDataElements(FXObject*, FXSelector, void*);
302
304 long onUpdReloadDataElements(FXObject*, FXSelector, void*);
305
307 long onCmdSaveDemandElementsAs(FXObject*, FXSelector, void*);
308
310 long onCmdSaveDemandElementsUnified(FXObject*, FXSelector, void*);
311
313 long onCmdSaveDataElements(FXObject*, FXSelector, void*);
314
316 long onCmdSaveDataElementsAs(FXObject*, FXSelector, void*);
317
319 long onCmdSaveDataElementsUnified(FXObject*, FXSelector, void*);
320
322 long onCmdOpenMeanDataElements(FXObject*, FXSelector, void*);
323
325 long onCmdReloadMeanDataElements(FXObject*, FXSelector, void*);
326
328 long onUpdReloadMeanDataElements(FXObject*, FXSelector, void*);
329
331 long onCmdSaveMeanDataElements(FXObject*, FXSelector, void*);
332
334 long onCmdSaveMeanDataElementsAs(FXObject*, FXSelector, void*);
335
337 long onCmdSaveMeanDataElementsUnified(FXObject*, FXSelector, void*);
338
340 long onUpdNeedsNetwork(FXObject*, FXSelector, void*);
341
343 long onUpdNeedsNetworkElement(FXObject*, FXSelector, void*);
344
346 long onUpdNeedsFrontElement(FXObject*, FXSelector, void*);
347
349 long onUpdSaveNetwork(FXObject*, FXSelector, void*);
350
352 long onUpdSaveAdditionalElements(FXObject*, FXSelector, void*);
353
355 long onUpdSaveAdditionalElementsUnified(FXObject*, FXSelector, void*);
356
358 long onUpdSaveJuPedSimElementsAs(FXObject*, FXSelector, void*);
359
361 long onUpdSaveDemandElements(FXObject*, FXSelector, void*);
362
364 long onUpdSaveDemandElementsUnified(FXObject*, FXSelector, void*);
365
367 long onUpdSaveDataElements(FXObject*, FXSelector, void*);
368
370 long onUpdSaveDataElementsUnified(FXObject*, FXSelector, void*);
371
373 long onUpdSaveMeanDataElements(FXObject*, FXSelector, void*);
374
376 long onUpdSaveMeanDataElementsUnified(FXObject*, FXSelector, void*);
377
379 long onUpdUndo(FXObject* obj, FXSelector sel, void* ptr);
380
382 long onUpdRedo(FXObject* obj, FXSelector sel, void* ptr);
383
385 long onUpdComputePathManager(FXObject* obj, FXSelector sel, void* ptr);
386
388 long onCmdToggleViewOption(FXObject*, FXSelector, void*);
389
391 long onUpdToggleViewOption(FXObject*, FXSelector, void*);
392
394 long onKeyPress(FXObject* o, FXSelector sel, void* data);
395
397 long onKeyRelease(FXObject* o, FXSelector sel, void* data);
398
400 long onCmdQuit(FXObject*, FXSelector, void*);
401
403 long onCmdEditChosen(FXObject*, FXSelector, void*);
404
406 long onCmdAbout(FXObject*, FXSelector, void*);
407
409 long onUpdOpen(FXObject*, FXSelector, void*);
410
412 long onCmdClearMsgWindow(FXObject*, FXSelector, void*);
413
415 long onCmdLoadAdditionalsInSUMOGUI(FXObject*, FXSelector, void*);
416
418 long onCmdLoadDemandInSUMOGUI(FXObject*, FXSelector, void*);
419
421 long onLoadThreadEvent(FXObject*, FXSelector, void*);
422
424 long onClipboardRequest(FXObject* sender, FXSelector sel, void* ptr);
425
427 long onCmdSetSuperMode(FXObject* sender, FXSelector sel, void* ptr);
428
430 long onCmdSetMode(FXObject* sender, FXSelector sel, void* ptr);
431
433 long onCmdLockElements(FXObject*, FXSelector sel, void*);
434
436 long onCmdLockAllElements(FXObject*, FXSelector sel, void*);
437
439 long onCmdUnlockAllElements(FXObject*, FXSelector sel, void*);
440
442 long onCmdLockSelectElements(FXObject*, FXSelector sel, void*);
443
445 long onUpdLockMenuTitle(FXObject*, FXSelector sel, void*);
446
448 long onCmdProcessButton(FXObject* sender, FXSelector sel, void*);
449
451 long onCmdOpenSUMOGUI(FXObject* sender, FXSelector sel, void* ptr);
452
454 long onCmdAbort(FXObject* sender, FXSelector sel, void* ptr);
455
457 long onCmdDel(FXObject* sender, FXSelector sel, void* ptr);
458
460 long onCmdEnter(FXObject* sender, FXSelector sel, void* ptr);
461
463 long onCmdBackspace(FXObject* sender, FXSelector sel, void* ptr);
464
466 long onCmdClearSelectionShortcut(FXObject* sender, FXSelector sel, void* ptr);
467
469 long onCmdFocusFrame(FXObject* sender, FXSelector sel, void* ptr);
470
472 long onCmdToggleTimeFormat(FXObject* sender, FXSelector sel, void* ptr);
473
475 long onUpdToggleTimeFormat(FXObject* sender, FXSelector sel, void* ptr);
476
478 long onCmdRunTests(FXObject*, FXSelector, void*);
479
481 long onUpdRequireViewNet(FXObject* sender, FXSelector sel, void* ptr);
482
484 long onUpdRequireRecomputing(FXObject* sender, FXSelector sel, void* ptr);
485
487 long onCmdRunNetgenerate(FXObject* sender, FXSelector sel, void* ptr);
488
490 long onCmdPostprocessingNetgenerate(FXObject* sender, FXSelector sel, void* ptr);
491
493 long onCmdToggleGrid(FXObject*, FXSelector, void*);
494
496 long onCmdToggleDrawJunctionShape(FXObject*, FXSelector, void*);
497
499 long onCmdToggleFrontElement(FXObject*, FXSelector, void*);
500
502 long onCmdToggleEditOptions(FXObject*, FXSelector, void*);
503
505 long onCmdHelp(FXObject* sender, FXSelector sel, void* ptr);
506
508 long onCmdChangelog(FXObject* sender, FXSelector sel, void* ptr);
509
511 long onCmdHotkeys(FXObject* sender, FXSelector sel, void* ptr);
512
514 long onCmdTutorial(FXObject* sender, FXSelector sel, void* ptr);
515
517 long onCmdFeedback(FXObject* sender, FXSelector sel, void* ptr);
518
520 long onCmdToggleComputeNetworkData(FXObject*, FXSelector, void*);
521
523 long onCmdToggleUndoRedo(FXObject*, FXSelector, void*);
524
526 long onCmdToggleUndoRedoLoading(FXObject*, FXSelector, void*);
527
529 long onCmdOpenOptionsDialog(FXObject*, FXSelector, void*);
530
532 long onCmdOpenSumoOptionsDialog(FXObject*, FXSelector, void*);
533
535 long onCmdOpenNetgenerateDialog(FXObject*, FXSelector, void*);
536
538 long onCmdOpenNetgenerateOptionsDialog(FXObject*, FXSelector, void*);
539
541 long onCmdUndo(FXObject* sender, FXSelector, void*);
542
543 // @brief called when user press Ctrl+Y
544 long onCmdRedo(FXObject* sender, FXSelector, void*);
545
546 // @brief called when user press open undoList dialog
547 long onCmdOpenUndoListDialog(FXObject*, FXSelector, void*);
548
549 // @brief called when openUndoList is updated
550 long onUpdOpenUndoListDialog(FXObject*, FXSelector, void*);
551
552 // @brief called when user press compute path manager
553 long onCmdComputePathManager(FXObject*, FXSelector, void*);
554
556 long onCmdCut(FXObject*, FXSelector, void*);
557
558 // @brief called when user press Ctrl+Y
559 long onCmdCopy(FXObject*, FXSelector, void*);
560
561 // @brief called when user press Ctrl+Y
562 long onCmdPaste(FXObject*, FXSelector, void*);
563
564 // @brief called when user press Ctrl+F1
565 long onCmdSetTemplate(FXObject*, FXSelector, void*);
566
567 // @brief called when user press Ctrl+F2
568 long onCmdCopyTemplate(FXObject*, FXSelector, void*);
569
570 // @brief called when user press Ctrl+F3
571 long onCmdClearTemplate(FXObject*, FXSelector, void*);
572
574
578 FXGLCanvas* getBuildGLCanvas() const;
579
582
584 double getTrackerInterval() const;
586
588 FXCursor* getDefaultCursor();
589
592
595
598
601
604
607
610
612 void updateControls();
613
615 void updateSuperModeMenuCommands(const Supermode supermode);
616
620 bool isUndoRedoAllowed() const;
621
624
626 void disableUndoRedoTemporally(const std::string& reason);
627
629 const std::string& isUndoRedoEnabledTemporally() const;
630
632 void clearUndoList();
633
635
638
641
644
647
650
653
656
658 void loadAdditionalElements(const std::string operation);
659
661 void loadDemandElements(const std::string operation);
662
664 void loadDataElements(const std::string operation);
665
667 void loadMeanDataElements(const std::string operation);
668
670 void loadTrafficLights(const std::string operation);
671
673 void loadEdgeTypes(const std::string operation);
674
677
680
682 bool allowInputSignals(FXObject* obj) const;
683
685
686protected:
689
692
695
697public:
699private:
701 bool myAmLoading = false;
702
704 FXMenuPane* myFileMenu = nullptr;
705 FXMenuPane* myFileMenuNeteditConfig = nullptr;
706 FXMenuPane* myFileMenuSumoConfig = nullptr;
707 FXMenuPane* myFileMenuTLS = nullptr;
708 FXMenuPane* myFileMenuEdgeTypes = nullptr;
709 FXMenuPane* myFileMenuAdditionals = nullptr;
710 FXMenuPane* myFileMenuDemandElements = nullptr;
711 FXMenuPane* myFileMenuDataElements = nullptr;
712 FXMenuPane* myFileMenuMeanDataElements = nullptr;
713 FXMenuPane* myFileMenuRecentNetworks = nullptr;
714 FXMenuPane* myFileMenuRecentConfigs = nullptr;
715 FXMenuPane* myModesMenu = nullptr;
716 FXMenuPane* myEditMenu = nullptr;
717 FXMenuPane* myLockMenu = nullptr;
718 FXMenuPane* myProcessingMenu = nullptr;
719 FXMenuPane* myLocatorMenu = nullptr;
720 FXMenuPane* myToolsMenu = nullptr;
721 FXMenuPane* myToolsAssignMenu = nullptr;
722 FXMenuPane* myToolsDetectorMenu = nullptr;
723 FXMenuPane* myToolsDistrictMenu = nullptr;
724 FXMenuPane* myToolsDRTMenu = nullptr;
725 FXMenuPane* myToolsEmissionsMenu = nullptr;
726 FXMenuPane* myToolsImportMenu = nullptr;
727 FXMenuPane* myToolsImportCityBrainMenu = nullptr;
728 FXMenuPane* myToolsImportGTFSMenu = nullptr;
729 FXMenuPane* myToolsImportVissim = nullptr;
730 FXMenuPane* myToolsImportVisum = nullptr;
731 FXMenuPane* myToolsNetMenu = nullptr;
732 FXMenuPane* myToolsRouteMenu = nullptr;
733 FXMenuPane* myToolsOutputMenu = nullptr;
734 FXMenuPane* myToolsShapes = nullptr;
735 FXMenuPane* myToolsTLS = nullptr;
736 FXMenuPane* myToolsTriggerMenu = nullptr;
737 FXMenuPane* myToolsTurnDefs = nullptr;
738 FXMenuPane* myToolsVisualizationMenu = nullptr;
739 FXMenuPane* myToolsXML = nullptr;
740 FXMenuPane* myWindowMenu = nullptr;
741 FXMenuPane* myHelpMenu = nullptr;
742
744 std::map<std::string, FXMenuPane*> myMenuPaneToolMaps;
745
747 FXMenuTitle* myModesMenuTitle = nullptr;
748
750 FXMenuTitle* myLockMenuTitle = nullptr;
751
754
756 FXSplitter* myMainSplitter = nullptr;
757
760
763
766
769
772
774 GNENet* myNet = nullptr;
775
778
780 std::string myConfigPattern;
781
784
787
790
793
796
799
802
803private:
806
809
812
815
818
821
824
827
830
833
836
839
842
845
847 const FXString myTitlePrefix;
848
850 bool myAllowUndoRedo = true;
851
854
857
859 FXMDIMenu* myMDIMenu = nullptr;
860
862 void fillMenuBar();
863
865 void closeAllWindows(const bool resetFilenames);
866
868 bool askSaveElements(FXObject* sender, FXSelector sel, void* ptr);
869
871 bool checkMeanDataFileBucket(const std::string& file, FileBucket* bucket, const GNEGeneralHandler& generalHandler);
872
875
878};
Supermode
@brie enum for supermodes
long long int SUMOTime
Definition GUI.h:36
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)
bool checkMeanDataFileBucket(const std::string &file, FileBucket *bucket, const GNEGeneralHandler &generalHandler)
check if loaded additional file is a meanData file and update buckets accordingly
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
long onCmdSaveAdditionalElementsAs(FXObject *, FXSelector, void *)
called when the command/FXCall save additionals as
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 onCmdSavePlainXML(FXObject *, FXSelector, void *)
called when the command/FXCall save plain xml is executed
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)
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 onUpdSaveSumoConfigAs(FXObject *, FXSelector, void *)
called when the command/FXCall save SumoConfig as 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
void loadDemandElements(const std::string operation)
load demand elements from netedit options
long onCmdProcessButton(FXObject *sender, FXSelector sel, void *)
called when user press a process button (or a shortcut)
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
void loadEdgeTypes(const std::string operation)
load meanData elements
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
GNEExternalRunner * myExternalRunner
external runner for running external tools
long onCmdComputePathManager(FXObject *, FXSelector, void *)
long onCmdToggleComputeNetworkData(FXObject *, FXSelector, void *)
called when toggle checkbox compute network when switching between supermodes
bool myStartedWithNewNet
flag for checking if netedit was started with a new network
long onCmdCopyTemplate(FXObject *, FXSelector, void *)
GNEInternalTest * getInternalTest() const
get netedit test system
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 onUpdSaveNeteditConfigAs(FXObject *, FXSelector, void *)
called when the command/FXCall save netedit config as is updated
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
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
GNEApplicationWindowHelper::LocateMenuCommands myLocateMenuCommands
Locate Menu Commands.
void loadTrafficLights(const std::string operation)
load traffic lights
long onCmdAbout(FXObject *, FXSelector, void *)
called when the command/FXCall show about dialog is executed
GNEApplicationWindowHelper::FileBucketHandler * myFileBucketHandler
saving files handler
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 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
void loadMeanDataElements(const std::string operation)
load meanData elements from netedit options
long onCmdAbort(FXObject *sender, FXSelector sel, void *ptr)
called if the user hits esc
GNEViewNet * myViewNet
pointer to current view net
GNEExternalRunner * getExternalRunner() const
get external runner
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
GNEApplicationWindowHelper::FileBucketHandler * getFileBucketHandler() const
get file bucket handler
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
long onCmdSaveMeanDataElementsAs(FXObject *, FXSelector, void *)
called when the command/FXCall save meanDatas as is executed
long onCmdToggleFrontElement(FXObject *, FXSelector, void *)
called if the user call toggle front element
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
void setExternalRunner(GNEExternalRunner *externalRunner)
set external runner
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 onCmdRedo(FXObject *sender, FXSelector, void *)
long onCmdSaveDemandElementsAs(FXObject *, FXSelector, void *)
called when the command/FXCall save demand elements as is executed
long onCmdReloadTLSPrograms(FXObject *, FXSelector, void *)
called when the command/FXCall reload TLS programs is executed
long onCmdSaveDataElementsAs(FXObject *, FXSelector, void *)
called when the command/FXCall save data elements as is executed
void handleEvent_FileLoaded(GUIEvent *e)
handle event of type Network loaded
GNEApplicationWindowHelper::FileMenuCommands myFileMenuCommands
File Menu Commands.
void loadAdditionalElements(const std::string operation)
load additional elements from netedit options
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
void closeAllWindows(const bool resetFilenames)
this method closes all windows and deletes the current simulation
bool myAllowUndoRedo
allow undo-redo (read from registry)
long onCmdChangelog(FXObject *sender, FXSelector sel, void *ptr)
called if the user selects help->Changelog
MFXCheckableButton * getShowToolTipsMenu() const
get checkable button for menu tooltips
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
MFXCheckableButton * getShowToolTipsView() const
get checkable button for view tooltips
long onCmdBackspace(FXObject *sender, FXSelector sel, void *ptr)
called if the user hits backspace
void updateRecomputingLabel()
update recomputing label
bool askSaveElements(FXObject *sender, FXSelector sel, void *ptr)
warns about unsaved changes and gives the user the option to abort
long onUpdReloadMeanDataElements(FXObject *, FXSelector, void *)
called when the command/FXCall reload meanDatas is updated
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 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 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 onCmdUndo(FXObject *sender, FXSelector, void *)
called when user press Ctrl+Z
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
long computeJunctionWithVolatileOptions(FXObject *sender, FXSelector sel, void *ptr)
called if the user selects Processing->compute junctions with volatile options
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
void loadDataElements(const std::string operation)
load data elements from netedit options
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 logging window for the gui.
A storage for options typed value containers)
Definition OptionsCont.h:89