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-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 GUIEvent;
31class GNEUndoList;
33class GNELoadThread;
34class GNEInternalTest;
36
37// ===========================================================================
38// class definition
39// ===========================================================================
52 FXDECLARE(GNEApplicationWindow)
53
54public:
55
61 GNEApplicationWindow(FXApp* app, const GNETagPropertiesDatabase* tagPropertiesDatabase, const std::string& configPattern);
62
65
67 void create();
68
71
73 void createNewNetwork();
74
76 void loadNetwork(const std::string& networkFile);
77
79 void loadConfiguration(const std::string& configurationFile);
80
82 void loadOSM(const std::string& OSMFile);
83
85 void dependentBuild();
86
88 void setStatusBarText(const std::string& statusBarText);
89
92
95
98
101
103 void setExternalRunner(GNEExternalRunner* externalRunner);
104
106
110 void eventOccurred();
111
114
118
122 long onCmdNewWindow(FXObject*, FXSelector, void*);
123
125 long onCmdNewNetwork(FXObject*, FXSelector, void*);
126
128 long onCmdOpenNetconvertConfig(FXObject*, FXSelector, void*);
129
131 long onCmdOpenNetwork(FXObject*, FXSelector, void*);
132
134 long onCmdOpenForeign(FXObject*, FXSelector, void*);
135
137 long onCmdOpenNeteditConfig(FXObject*, FXSelector, void*);
138
140 long onCmdOpenSumoConfig(FXObject*, FXSelector, void*);
141
143 long onCmdReloadNeteditConfig(FXObject*, FXSelector, void*);
144
146 long onCmdReloadSumoConfig(FXObject*, FXSelector, void*);
147
149 long onUpdReloadNeteditConfig(FXObject*, FXSelector, void*);
150
152 long onUpdReloadSumoConfig(FXObject*, FXSelector, void*);
153
155 long onCmdOpenTLSPrograms(FXObject*, FXSelector, void*);
156
158 long onCmdReloadTLSPrograms(FXObject*, FXSelector, void*);
159
161 long onUpdReloadTLSPrograms(FXObject*, FXSelector, void*);
162
164 long onCmdOpenEdgeTypes(FXObject*, FXSelector, void*);
165
167 long onCmdReloadEdgeTypes(FXObject*, FXSelector, void*);
168
170 long onUpdReloadEdgeTypes(FXObject*, FXSelector, void*);
171
173 long onCmdSmartReload(FXObject*, FXSelector, void*);
174
176 long onUpdSmartReload(FXObject*, FXSelector, void*);
177
179 long onCmdReloadNetwork(FXObject*, FXSelector, void*);
180
182 long onUpdReloadNetwork(FXObject*, FXSelector, void*);
183
185 long onCmdOpenRecent(FXObject*, FXSelector, void*);
186
188 long onCmdClose(FXObject*, FXSelector, void*);
189
191 long onCmdEditViewScheme(FXObject*, FXSelector, void*);
192
194 long onCmdEditViewport(FXObject*, FXSelector, void*);
195
197 long onCmdLocate(FXObject*, FXSelector, void*);
198
200 long onCmdOpenPythonToolDialog(FXObject* obj, FXSelector, void*);
201
203 long onCmdRunPythonTool(FXObject* obj, FXSelector, void*);
204
206 long onCmdPostProcessingPythonTool(FXObject* obj, FXSelector, void*);
207
209 long onUpdPythonTool(FXObject*, FXSelector, void*);
210
212 long onCmdSaveNetwork(FXObject*, FXSelector, void*);
213
215 long onCmdSaveNetworkAs(FXObject*, FXSelector, void*);
216
218 long onCmdSavePlainXMLAs(FXObject*, FXSelector, void*);
219
221 long onCmdSaveJoinedJunctionsAs(FXObject*, FXSelector, void*);
222
224 long onCmdSaveNeteditConfig(FXObject*, FXSelector, void*);
225
227 long onCmdSaveNeteditConfigAs(FXObject*, FXSelector, void*);
228
230 long onUpdSaveNeteditConfig(FXObject*, FXSelector, void*);
231
233 long onCmdSaveSumoConfig(FXObject*, FXSelector, void*);
234
236 long onCmdSaveSumoConfigAs(FXObject*, FXSelector, void*);
237
239 long onUpdSaveSumoConfig(FXObject*, FXSelector, void*);
240
242 long onCmdSaveTLSPrograms(FXObject*, FXSelector, void*);
243
245 long onUpdSaveTLSPrograms(FXObject*, FXSelector, void*);
246
248 long onCmdSaveEdgeTypes(FXObject*, FXSelector, void*);
249
251 long onUpdSaveEdgeTypes(FXObject*, FXSelector, void*);
252
254 long onCmdSaveTLSProgramsAs(FXObject*, FXSelector, void*);
255
257 long onCmdSaveEdgeTypesAs(FXObject*, FXSelector, void*);
258
260 long onUpdSaveEdgeTypesAs(FXObject*, FXSelector, void*);
261
263 long onCmdOpenAdditionalElements(FXObject*, FXSelector, void*);
264
266 long onCmdReloadAdditionalElements(FXObject*, FXSelector, void*);
267
269 long onUpdReloadAdditionalElements(FXObject*, FXSelector, void*);
270
272 long onCmdSaveAdditionalElements(FXObject*, FXSelector, void*);
273
275 long onCmdSaveAdditionalElementsUnified(FXObject*, FXSelector, void*);
276
278 long onCmdSaveJuPedSimElementsAs(FXObject*, FXSelector, void*);
279
281 long onCmdOpenDemandElements(FXObject*, FXSelector, void*);
282
284 long onCmdReloadDemandElements(FXObject*, FXSelector, void*);
285
287 long onUpdReloadDemandElements(FXObject*, FXSelector, void*);
288
290 long onCmdSaveDemandElements(FXObject*, FXSelector, void*);
291
293 long onCmdOpenDataElements(FXObject*, FXSelector, void*);
294
296 long onCmdReloadDataElements(FXObject*, FXSelector, void*);
297
299 long onUpdReloadDataElements(FXObject*, FXSelector, void*);
300
302 long onCmdSaveDemandElementsUnified(FXObject*, FXSelector, void*);
303
305 long onCmdSaveDataElements(FXObject*, FXSelector, void*);
306
308 long onCmdSaveDataElementsUnified(FXObject*, FXSelector, void*);
309
311 long onCmdOpenMeanDataElements(FXObject*, FXSelector, void*);
312
314 long onCmdReloadMeanDataElements(FXObject*, FXSelector, void*);
315
317 long onUpdReloadMeanDataElements(FXObject*, FXSelector, void*);
318
320 long onCmdSaveMeanDataElements(FXObject*, FXSelector, void*);
321
323 long onCmdSaveMeanDataElementsUnified(FXObject*, FXSelector, void*);
324
326 long onUpdNeedsNetwork(FXObject*, FXSelector, void*);
327
329 long onUpdNeedsNetworkElement(FXObject*, FXSelector, void*);
330
332 long onUpdNeedsFrontElement(FXObject*, FXSelector, void*);
333
335 long onUpdSaveNetwork(FXObject*, FXSelector, void*);
336
338 long onUpdSaveAdditionalElements(FXObject*, FXSelector, void*);
339
341 long onUpdSaveAdditionalElementsUnified(FXObject*, FXSelector, void*);
342
344 long onUpdSaveJuPedSimElementsAs(FXObject*, FXSelector, void*);
345
347 long onUpdSaveDemandElements(FXObject*, FXSelector, void*);
348
350 long onUpdSaveDemandElementsUnified(FXObject*, FXSelector, void*);
351
353 long onUpdSaveDataElements(FXObject*, FXSelector, void*);
354
356 long onUpdSaveDataElementsUnified(FXObject*, FXSelector, void*);
357
359 long onUpdSaveMeanDataElements(FXObject*, FXSelector, void*);
360
362 long onUpdSaveMeanDataElementsUnified(FXObject*, FXSelector, void*);
363
365 long onUpdUndo(FXObject* obj, FXSelector sel, void* ptr);
366
368 long onUpdRedo(FXObject* obj, FXSelector sel, void* ptr);
369
371 long onUpdComputePathManager(FXObject* obj, FXSelector sel, void* ptr);
372
374 long onCmdToggleViewOption(FXObject*, FXSelector, void*);
375
377 long onUpdToggleViewOption(FXObject*, FXSelector, void*);
378
380 long onKeyPress(FXObject* o, FXSelector sel, void* data);
381
383 long onKeyRelease(FXObject* o, FXSelector sel, void* data);
384
386 long onCmdQuit(FXObject*, FXSelector, void*);
387
389 long onCmdEditChosen(FXObject*, FXSelector, void*);
390
392 long onCmdAbout(FXObject*, FXSelector, void*);
393
395 long onUpdOpen(FXObject*, FXSelector, void*);
396
398 long onCmdClearMsgWindow(FXObject*, FXSelector, void*);
399
401 long onCmdLoadAdditionalsInSUMOGUI(FXObject*, FXSelector, void*);
402
404 long onCmdLoadDemandInSUMOGUI(FXObject*, FXSelector, void*);
405
407 long onLoadThreadEvent(FXObject*, FXSelector, void*);
408
410 long onClipboardRequest(FXObject* sender, FXSelector sel, void* ptr);
411
413 long onCmdSetSuperMode(FXObject* sender, FXSelector sel, void* ptr);
414
416 long onCmdSetMode(FXObject* sender, FXSelector sel, void* ptr);
417
419 long onCmdLockElements(FXObject*, FXSelector sel, void*);
420
422 long onCmdLockAllElements(FXObject*, FXSelector sel, void*);
423
425 long onCmdUnlockAllElements(FXObject*, FXSelector sel, void*);
426
428 long onCmdLockSelectElements(FXObject*, FXSelector sel, void*);
429
431 long onUpdLockMenuTitle(FXObject*, FXSelector sel, void*);
432
434 long onCmdProcessButton(FXObject* sender, FXSelector sel, void*);
435
437 long onCmdOpenSUMOGUI(FXObject* sender, FXSelector sel, void* ptr);
438
440 long onCmdAbort(FXObject* sender, FXSelector sel, void* ptr);
441
443 long onCmdDel(FXObject* sender, FXSelector sel, void* ptr);
444
446 long onCmdEnter(FXObject* sender, FXSelector sel, void* ptr);
447
449 long onCmdBackspace(FXObject* sender, FXSelector sel, void* ptr);
450
452 long onCmdClearSelectionShortcut(FXObject* sender, FXSelector sel, void* ptr);
453
455 long onCmdFocusFrame(FXObject* sender, FXSelector sel, void* ptr);
456
458 long onCmdToggleTimeFormat(FXObject* sender, FXSelector sel, void* ptr);
459
461 long onUpdToggleTimeFormat(FXObject* sender, FXSelector sel, void* ptr);
462
464 long onCmdRunTests(FXObject*, FXSelector, void*);
465
467 long onUpdRequireViewNet(FXObject* sender, FXSelector sel, void* ptr);
468
470 long onUpdRequireRecomputing(FXObject* sender, FXSelector sel, void* ptr);
471
473 long onCmdRunNetgenerate(FXObject* sender, FXSelector sel, void* ptr);
474
476 long onCmdPostprocessingNetgenerate(FXObject* sender, FXSelector sel, void* ptr);
477
479 long onCmdToggleGrid(FXObject*, FXSelector, void*);
480
482 long onCmdToggleDrawJunctionShape(FXObject*, FXSelector, void*);
483
485 long onCmdSetFrontElement(FXObject*, FXSelector, void*);
486
488 long onCmdToggleEditOptions(FXObject*, FXSelector, void*);
489
491 long onCmdHelp(FXObject* sender, FXSelector sel, void* ptr);
492
494 long onCmdChangelog(FXObject* sender, FXSelector sel, void* ptr);
495
497 long onCmdHotkeys(FXObject* sender, FXSelector sel, void* ptr);
498
500 long onCmdTutorial(FXObject* sender, FXSelector sel, void* ptr);
501
503 long onCmdFeedback(FXObject* sender, FXSelector sel, void* ptr);
504
506 long onCmdToggleComputeNetworkData(FXObject*, FXSelector, void*);
507
509 long onCmdToggleUndoRedo(FXObject*, FXSelector, void*);
510
512 long onCmdToggleUndoRedoLoading(FXObject*, FXSelector, void*);
513
515 long onCmdOpenOptionsDialog(FXObject*, FXSelector, void*);
516
518 long onCmdOpenSumoOptionsDialog(FXObject*, FXSelector, void*);
519
521 long onCmdOpenNetgenerateDialog(FXObject*, FXSelector, void*);
522
524 long onCmdOpenNetgenerateOptionsDialog(FXObject*, FXSelector, void*);
525
527 long onCmdUndo(FXObject* sender, FXSelector, void*);
528
529 // @brief called when user press Ctrl+Y
530 long onCmdRedo(FXObject* sender, FXSelector, void*);
531
532 // @brief called when user press open undoList dialog
533 long onCmdOpenUndoListDialog(FXObject*, FXSelector, void*);
534
535 // @brief called when openUndoList is updated
536 long onUpdOpenUndoListDialog(FXObject*, FXSelector, void*);
537
538 // @brief called when user press compute path manager
539 long onCmdComputePathManager(FXObject*, FXSelector, void*);
540
542 long onCmdCut(FXObject*, FXSelector, void*);
543
544 // @brief called when user press Ctrl+Y
545 long onCmdCopy(FXObject*, FXSelector, void*);
546
547 // @brief called when user press Ctrl+Y
548 long onCmdPaste(FXObject*, FXSelector, void*);
549
550 // @brief called when user press Ctrl+F1
551 long onCmdSetTemplate(FXObject*, FXSelector, void*);
552
553 // @brief called when user press Ctrl+F2
554 long onCmdCopyTemplate(FXObject*, FXSelector, void*);
555
556 // @brief called when user press Ctrl+F3
557 long onCmdClearTemplate(FXObject*, FXSelector, void*);
558
560
564 FXGLCanvas* getBuildGLCanvas() const;
565
568
570 double getTrackerInterval() const;
572
574 FXCursor* getDefaultCursor();
575
578
581
584
587
590
592 void updateControls();
593
595 void updateSuperModeMenuCommands(const Supermode supermode);
596
600 bool isUndoRedoAllowed() const;
601
604
606 void disableUndoRedoTemporally(const std::string& reason);
607
609 const std::string& isUndoRedoEnabledTemporally() const;
610
612 void clearUndoList();
613
615
618
621
624
627
630
633
636
639
641 void loadDemandElements();
642
644 void loadDataElements();
645
648
651
654
656 bool allowInputSignals(FXObject* obj) const;
657
659
660protected:
663
666
669
672
674 bool myAmLoading = false;
675
677 FXMenuPane* myFileMenu = nullptr;
678 FXMenuPane* myFileMenuNeteditConfig = nullptr;
679 FXMenuPane* myFileMenuSumoConfig = nullptr;
680 FXMenuPane* myFileMenuTLS = nullptr;
681 FXMenuPane* myFileMenuEdgeTypes = nullptr;
682 FXMenuPane* myFileMenuAdditionals = nullptr;
683 FXMenuPane* myFileMenuDemandElements = nullptr;
684 FXMenuPane* myFileMenuDataElements = nullptr;
685 FXMenuPane* myFileMenuMeanDataElements = nullptr;
686 FXMenuPane* myFileMenuRecentNetworks = nullptr;
687 FXMenuPane* myFileMenuRecentConfigs = nullptr;
688 FXMenuPane* myModesMenu = nullptr;
689 FXMenuPane* myEditMenu = nullptr;
690 FXMenuPane* myLockMenu = nullptr;
691 FXMenuPane* myProcessingMenu = nullptr;
692 FXMenuPane* myLocatorMenu = nullptr;
693 FXMenuPane* myToolsMenu = nullptr;
694 FXMenuPane* myToolsAssignMenu = nullptr;
695 FXMenuPane* myToolsDetectorMenu = nullptr;
696 FXMenuPane* myToolsDistrictMenu = nullptr;
697 FXMenuPane* myToolsDRTMenu = nullptr;
698 FXMenuPane* myToolsEmissionsMenu = nullptr;
699 FXMenuPane* myToolsImportMenu = nullptr;
700 FXMenuPane* myToolsImportCityBrainMenu = nullptr;
701 FXMenuPane* myToolsImportGTFSMenu = nullptr;
702 FXMenuPane* myToolsImportVissim = nullptr;
703 FXMenuPane* myToolsImportVisum = nullptr;
704 FXMenuPane* myToolsNetMenu = nullptr;
705 FXMenuPane* myToolsRouteMenu = nullptr;
706 FXMenuPane* myToolsOutputMenu = nullptr;
707 FXMenuPane* myToolsShapes = nullptr;
708 FXMenuPane* myToolsTLS = nullptr;
709 FXMenuPane* myToolsTriggerMenu = nullptr;
710 FXMenuPane* myToolsTurnDefs = nullptr;
711 FXMenuPane* myToolsVisualizationMenu = nullptr;
712 FXMenuPane* myToolsXML = nullptr;
713 FXMenuPane* myWindowMenu = nullptr;
714 FXMenuPane* myHelpMenu = nullptr;
715
717 std::map<std::string, FXMenuPane*> myMenuPaneToolMaps;
718
720 FXMenuTitle* myModesMenuTitle = nullptr;
721
723 FXMenuTitle* myLockMenuTitle = nullptr;
724
727
729 FXSplitter* myMainSplitter = nullptr;
730
733
736
739
742
745
747 GNENet* myNet = nullptr;
748
751
753 std::string myConfigPattern;
754
757
760
763
766
769
772
775
776private:
779
782
785
788
791
794
797
800
803
806
809
812
815
817 const FXString myTitlePrefix;
818
820 bool myAllowUndoRedo = true;
821
824
826 FXMDIMenu* myMDIMenu = nullptr;
827
829 void fillMenuBar();
830
832 void closeAllWindows();
833
835 bool askSaveElements();
836
838 void setInputInSumoOptions(const bool ignoreAdditionals, const bool ignoreRoutes);
839
841 FXString getFolder(const std::string& folder) const;
842
845
848};
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 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
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 *‍/
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
long onCmdCopyTemplate(FXObject *, FXSelector, void *)
FXString getFolder(const std::string &folder) const
extract folder
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 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.
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
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
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
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 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
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
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
A logging window for the gui.
A storage for options typed value containers)
Definition OptionsCont.h:89