43#include <netedit/templates.h>
447FXIMPLEMENT(
GNEApplicationWindow, FXMainWindow, GNEApplicationWindowMap, ARRAYNUMBER(GNEApplicationWindowMap))
457 myConfigPattern(configPattern),
458 myToolbarsGrip(this),
460 myFileMenuCommands(this),
461 myModesMenuCommands(this),
462 myEditMenuCommands(this),
463 myLockMenuCommands(this),
464 myProcessingMenuCommands(this),
465 myLocateMenuCommands(this),
466 myToolsMenuCommands(this),
467 myWindowsMenuCommands(this),
468 myHelpMenuCommands(this),
469 mySupermodeCommands(this),
470 myTitlePrefix("netedit " VERSION_STRING),
471 myAllowUndoRedo(getApp()->reg().readBoolEntry("
NETEDIT", "AllowUndoRedo", true) == TRUE),
472 myAllowUndoRedoLoading(getApp()->reg().readBoolEntry("
NETEDIT", "AllowUndoRedoLoading", true) == TRUE) {
481 a->setTooltipTime(1000000000);
482 a->setTooltipPause(1000000000);
484 mySumoOptions.setApplicationDescription(
TL(
"A microscopic, multi-modal traffic simulation."));
485 mySumoOptions.setApplicationName(
"sumo",
"Eclipse SUMO sumo Version " VERSION_STRING);
501 WRITE_ERROR(
"DEBUG: GNEApplicationWindow::dependentBuild called twice");
522 myGeoCoordinate->setHelpText(
TL(
"Original coordinate (before coordinate transformation in netconvert)"));
561 gCurrentFolder = getApp()->reg().readStringEntry(
"SETTINGS",
"basedir",
"");
563 FXMainWindow::create();
565 const auto textWidth = getApp()->getNormalFont()->getTextWidth(
"8", 1) * 22;
571 myOnlineMaps[
"GeoHack"] =
"https://geohack.toolforge.org/geohack.php?params=%lat;%lon_scale:1000";
572 myOnlineMaps[
"Google Maps"] =
"https://www.google.com/maps?ll=%lat,%lon&t=h&z=18";
573 myOnlineMaps[
"OSM"] =
"https://www.openstreetmap.org/?mlat=%lat&mlon=%lon&zoom=18&layers=M";
576 show(PLACEMENT_DEFAULT);
579 if (getApp()->reg().readIntEntry(
"SETTINGS",
"maximized", 0) == 1) {
653 getApp()->reg().writeStringEntry(
"SETTINGS",
"basedir",
gCurrentFolder.text());
655 getApp()->reg().writeIntEntry(
"SETTINGS",
"maximized", 1);
657 getApp()->reg().writeIntEntry(
"SETTINGS",
"maximized", 0);
691 if (!netconvertFile.empty() && (
onCmdClose(0, 0, 0) == 1)) {
704 if (!networkFile.empty() && (
onCmdClose(0, 0, 0) == 1)) {
717 if (!OSMFile.empty() && (
onCmdClose(0, 0, 0) == 1)) {
730 if (!neteditConfigFile.empty() && (
onCmdClose(0, 0, 0) == 1)) {
735 neteditOptions.resetWritable();
736 neteditOptions.set(
"configuration-file", neteditConfigFile);
752 if (!sumoConfigFile.empty() && (
onCmdClose(0, 0, 0) == 1)) {
757 neteditOptions.resetWritable();
758 neteditOptions.set(
"sumocfg-file", sumoConfigFile);
774 const auto neteditConfigFile = neteditOptions.getString(
"configuration-file");
779 neteditOptions.resetWritable();
780 neteditOptions.set(
"configuration-file", neteditConfigFile);
795 const auto sumoConfigFile = neteditOptions.getString(
"sumocfg-file");
800 neteditOptions.resetWritable();
801 neteditOptions.set(
"sumocfg-file", sumoConfigFile);
815 return sender->handle(
this, FXSEL(SEL_COMMAND, ID_ENABLE),
nullptr);
817 return sender->handle(
this, FXSEL(SEL_COMMAND, ID_DISABLE),
nullptr);
826 return sender->handle(
this, FXSEL(SEL_COMMAND, ID_ENABLE),
nullptr);
828 return sender->handle(
this, FXSEL(SEL_COMMAND, ID_DISABLE),
nullptr);
839 if (!TLSFile.empty()) {
841 neteditOptions.resetWritable();
842 neteditOptions.set(
"tls-file", TLSFile);
885 return sender->handle(
this, FXSEL(SEL_COMMAND, ID_DISABLE),
nullptr);
887 return sender->handle(
this, FXSEL(SEL_COMMAND, ID_ENABLE),
nullptr);
898 if (!edgeTypeFile.empty()) {
900 neteditOptions.resetWritable();
901 neteditOptions.set(
"edgetypes-file", edgeTypeFile);
913 for (
const auto& auxEdgeType : typeContainerAux) {
917 for (
const auto& laneType : auxEdgeType.second->laneTypeDefinitions) {
946 for (
const auto& auxEdgeType : typeContainerAux) {
950 for (
const auto& laneType : auxEdgeType.second->laneTypeDefinitions) {
969 return sender->handle(
this, FXSEL(SEL_COMMAND, ID_DISABLE),
nullptr);
971 return sender->handle(
this, FXSEL(SEL_COMMAND, ID_ENABLE),
nullptr);
987 const auto neteditConfig = neteditOptions.getString(
"configuration-file");
988 const auto sumoConfig = neteditOptions.getString(
"sumocfg-file");
989 const auto networkFile = neteditOptions.getString(
"net-file");
995 neteditOptions.resetWritable();
996 if (neteditConfig.size() > 0) {
997 neteditOptions.set(
"configuration-file", neteditConfig);
1000 }
else if (sumoConfig.size() > 0) {
1001 neteditOptions.set(
"sumocfg-file", sumoConfig);
1004 }
else if (networkFile.size() > 0) {
1005 neteditOptions.set(
"net-file", networkFile);
1023 FXString neteditConfig =
TL(
"&Reload Netedit config");
1024 FXString sumoConfig =
TL(
"&Reload Sumo config");
1025 FXString netFile =
TL(
"&Reload Network");
1026 FXString reload =
TL(
"&Reload");
1028 if (
myNet ==
nullptr) {
1029 sender->handle(
this, FXSEL(SEL_COMMAND, ID_DISABLE),
nullptr);
1030 sender->handle(
this, FXSEL(SEL_COMMAND, ID_SETSTRINGVALUE), &reload);
1031 }
else if (neteditOptions.getString(
"configuration-file").size() > 0) {
1032 sender->handle(
this, FXSEL(SEL_COMMAND, ID_ENABLE),
nullptr);
1033 sender->handle(
this, FXSEL(SEL_COMMAND, ID_SETSTRINGVALUE), &neteditConfig);
1034 }
else if (neteditOptions.getString(
"sumocfg-file").size() > 0) {
1035 sender->handle(
this, FXSEL(SEL_COMMAND, ID_ENABLE),
nullptr);
1036 sender->handle(
this, FXSEL(SEL_COMMAND, ID_SETSTRINGVALUE), &sumoConfig);
1037 }
else if (neteditOptions.getString(
"net-file").size() > 0) {
1038 sender->handle(
this, FXSEL(SEL_COMMAND, ID_ENABLE),
nullptr);
1039 sender->handle(
this, FXSEL(SEL_COMMAND, ID_SETSTRINGVALUE), &netFile);
1041 sender->handle(
this, FXSEL(SEL_COMMAND, ID_DISABLE),
nullptr);
1042 sender->handle(
this, FXSEL(SEL_COMMAND, ID_SETSTRINGVALUE), &reload);
1059 const auto networkFile = neteditOptions.getString(
"net-file");
1065 neteditOptions.resetWritable();
1066 neteditOptions.set(
"net-file", networkFile);
1079 if (
myNet ==
nullptr) {
1080 sender->handle(
this, FXSEL(SEL_COMMAND, ID_DISABLE),
nullptr);
1081 sender->handle(
this, FXSEL(SEL_COMMAND, ID_HIDE),
nullptr);
1082 }
else if ((neteditOptions.getString(
"net-file").size() > 0) &&
1083 ((neteditOptions.getString(
"configuration-file").size() > 0) || (neteditOptions.getString(
"sumocfg-file").size() > 0))) {
1084 sender->handle(
this, FXSEL(SEL_COMMAND, ID_ENABLE),
nullptr);
1085 sender->handle(
this, FXSEL(SEL_COMMAND, ID_SHOW),
nullptr);
1087 sender->handle(
this, FXSEL(SEL_COMMAND, ID_DISABLE),
nullptr);
1088 sender->handle(
this, FXSEL(SEL_COMMAND, ID_HIDE),
nullptr);
1098 myStatusbar->getStatusLine()->setText(
TL(
"Already loading!"));
1101 const std::string recentFile = ((
const char*)fileData);
1103 if ((recentFile.find(
".neteditcfg") != std::string::npos) ||
1104 (recentFile.find(
".netecfg") != std::string::npos) ||
1105 (recentFile.find(
".sumocfg") != std::string::npos) ||
1106 (recentFile.find(
".netccfg") != std::string::npos)) {
1180 sender->handle(
this,
myAmLoading ? FXSEL(SEL_COMMAND, ID_DISABLE) : FXSEL(SEL_COMMAND, ID_ENABLE),
nullptr);
1195 WRITE_DEBUG(
"Toggle load additionals in sumo-gui");
1215 about->show(PLACEMENT_OWNER);
1223 FXEvent*
event = (FXEvent*)ptr;
1225 setDNDData(FROM_CLIPBOARD, event->target,
string);
1268 if (ec->
net ==
nullptr) {
1280 GNEViewParent* viewParent =
new GNEViewParent(
myMDIClient,
myMDIMenu,
"netedit VIEW",
this,
nullptr,
myNet,
myUndoList,
nullptr, MDI_TRACKING, 10, 10, 300, 200);
1282 viewParent->maximize();
1303 off.
set(getApp()->reg().readRealEntry(
"viewport",
"x"), getApp()->reg().readRealEntry(
"viewport",
"y"), getApp()->reg().readRealEntry(
"viewport",
"z"));
1342 myFileMenu =
new FXMenuPane(
this, LAYOUT_FIX_HEIGHT);
1364 TL(
"&Quit"),
"Ctrl+Q",
TL(
"Quit the Application."),
1561 if (
myNet !=
nullptr) {
1603 return getApp()->getDefaultCursor(DEF_ARROW_CURSOR);
1610 if (neteditOptions.getBool(
"new")) {
1620 if (neteditOptions.getString(
"net-file").size() > 0) {
1623 if (neteditOptions.getString(
"configuration-file").size() > 0) {
1654 if (networkFile.empty()) {
1668 neteditOptions.resetWritable();
1669 neteditOptions.set(
"net-file", networkFile);
1682 if (configurationFile.empty()) {
1696 neteditOptions.resetWritable();
1697 neteditOptions.set(
"configuration-file", configurationFile);
1722 neteditOptions.set(
"osm-files", OSMFile);
1723 neteditOptions.set(
"geometry.remove",
"true");
1724 neteditOptions.set(
"ramps.guess",
"true");
1725 neteditOptions.set(
"junctions.join",
"true");
1726 neteditOptions.set(
"tls.guess-signals",
"true");
1727 neteditOptions.set(
"tls.discard-simple",
"true");
1732 neteditOptions.resetWritable();
1733 neteditOptions.set(
"configuration-file", OSMFile);
1743 myStatusbar->getStatusLine()->setText(statusBarText.c_str());
1744 myStatusbar->getStatusLine()->setNormalText(statusBarText.c_str());
1753 WRITE_DEBUG(
"Opening FXMessageBox 'Volatile Recomputing'");
1755 answer = FXMessageBox::question(
myNet->
getViewNet()->getApp(), MBOX_YES_NO,
TL(
"Recompute with volatile options"),
1756 TL(
"Changes produced in the net due a recomputing with volatile options cannot be undone. Continue?"));
1760 WRITE_DEBUG(
"Closed FXMessageBox 'Volatile Recomputing' with 'No'");
1761 }
else if (answer == 4) {
1762 WRITE_DEBUG(
"Closed FXMessageBox 'Volatile Recomputing' with 'ESC'");
1768 WRITE_DEBUG(
"Closed FXMessageBox 'Volatile Recomputing' with 'Yes'");
1898 switch (FXSELID(sel)) {
1907 WRITE_DEBUG(
"Keys Shift + F5 (Compute with volatile options) pressed");
1922 WRITE_DEBUG(
"Key F8 (Clean invalid crossings) pressed");
1930 switch (FXSELID(sel)) {
1939 WRITE_DEBUG(
"Key F6 (RemoveUnusedRoutes) pressed");
1949 WRITE_DEBUG(
"Key F7 (AdjustPersonPlans) pressed");
1954 WRITE_DEBUG(
"Key F8 (CleanInvalidDemandElements) pressed");
1971 std::string extraArg;
1975 FXRegistry reg(
"SUMO netedit",
"netedit");
1976 std::string netedit =
"netedit";
1977 const char* sumoPath = getenv(
"SUMO_HOME");
1978 if (sumoPath !=
nullptr) {
1980 std::string newPath = std::string(sumoPath) +
"/bin/neteditD";
1982 std::string newPath = std::string(sumoPath) +
"/bin/netedit";
1985 netedit =
"\"" + newPath +
"\"";
1988 std::string cmd = netedit + extraArg;
1994 cmd =
"start /B \"\" " + cmd;
2008 std::string inputParameters;
2017 inputParameters =
" --registry-viewport -n \"" + neteditOptions.getString(
"net-file") +
"\"";
2019 WRITE_MESSAGE(
TL(
"Loading network '") + neteditOptions.getString(
"net-file") +
TL(
"' in SUMO-GUI"));
2026 inputParameters =
" --registry-viewport -c \"" + neteditOptions.getString(
"sumocfg-file") +
"\"";
2028 WRITE_MESSAGE(
TL(
"Loading sumo config '") + neteditOptions.getString(
"sumocfg-file") +
TL(
"' in SUMO-GUI"));
2031 FXRegistry reg(
"SUMO GUI",
"sumo-gui");
2038 std::string sumoGuiExecutable =
"sumo-gui";
2040 const char* sumoHome = getenv(
"SUMO_HOME");
2041 if (sumoHome !=
nullptr) {
2042 std::string newPath = std::string(sumoHome) +
"/bin/sumo-gui";
2044 sumoGuiExecutable =
"\"" + newPath +
"\"";
2048 std::string cmd = sumoGuiExecutable + inputParameters;
2054 cmd =
"start /B \"\" " + cmd;
2189 return sender->handle(
this,
myViewNet ? FXSEL(SEL_COMMAND, ID_ENABLE) : FXSEL(SEL_COMMAND, ID_DISABLE),
nullptr);
2239 WRITE_DEBUG(
"Disabled grid through Ctrl+g hotkey");
2242 WRITE_DEBUG(
"Enabled grid through Ctrl+g hotkey");
2258 WRITE_DEBUG(
"Disabled draw junction shape through Ctrl+j hotkey");
2261 WRITE_DEBUG(
"Enabled draw junction shape through Ctrl+j hotkey");
2297 if ((numericalKeyPressed < 0) || (numericalKeyPressed > 10)) {
2301 std::vector<MFXCheckableButton*> visibleMenuCommands;
2307 if (numericalKeyPressed >= (
int)visibleMenuCommands.size()) {
2312 visibleMenuCommands.at(numericalKeyPressed), numericalKeyPressed, sender, sel)) {
2315 visibleMenuCommands.at(numericalKeyPressed), numericalKeyPressed, sender, sel)) {
2318 visibleMenuCommands.at(numericalKeyPressed), numericalKeyPressed, sender, sel)) {
2351 return getApp()->reg().writeBoolEntry(
"NETEDIT",
"RecomputeData",
true);
2353 return getApp()->reg().writeBoolEntry(
"NETEDIT",
"RecomputeData",
false);
2362 return getApp()->reg().writeBoolEntry(
"NETEDIT",
"AllowUndoRedo",
true);
2367 return getApp()->reg().writeBoolEntry(
"NETEDIT",
"AllowUndoRedo",
false);
2376 return getApp()->reg().writeBoolEntry(
"NETEDIT",
"AllowUndoRedoLoading",
true);
2379 return getApp()->reg().writeBoolEntry(
"NETEDIT",
"AllowUndoRedoLoading",
false);
2398 feedback->show(PLACEMENT_OWNER);
2409 if (dialog.first == TRUE) {
2415 if (dialog.second &&
myNet) {
2427 if ((dialog.first == TRUE) && dialog.second &&
myNet) {
2526 sender->handle(
this, FXSEL(SEL_COMMAND, ID_ENABLE),
nullptr);
2528 sender->handle(
this, FXSEL(SEL_COMMAND, ID_DISABLE),
nullptr);
2574 WRITE_DEBUG(
"Key Ctrl+F1 (Set Template) pressed");
2586 WRITE_DEBUG(
"Key Ctrl+F2 (Copy Template) pressed");
2598 WRITE_DEBUG(
"Key Ctrl+F3 (Clear Template) pressed");
2613 return sender->handle(
this, FXSEL(SEL_COMMAND, ID_ENABLE),
nullptr);
2616 return sender->handle(
this, FXSEL(SEL_COMMAND, ID_DISABLE),
nullptr);
2625 return sender->handle(
this, FXSEL(SEL_COMMAND, ID_ENABLE),
nullptr);
2627 return sender->handle(
this, FXSEL(SEL_COMMAND, ID_DISABLE),
nullptr);
2636 return sender->handle(
this, FXSEL(SEL_COMMAND, ID_ENABLE),
nullptr);
2638 return sender->handle(
this, FXSEL(SEL_COMMAND, ID_DISABLE),
nullptr);
2645 if (
myNet ==
nullptr) {
2646 return sender->handle(
this, FXSEL(SEL_COMMAND, ID_DISABLE),
nullptr);
2648 return sender->handle(
this, FXSEL(SEL_COMMAND, ID_DISABLE),
nullptr);
2650 return sender->handle(
this, FXSEL(SEL_COMMAND, ID_ENABLE),
nullptr);
2657 if (
myNet ==
nullptr) {
2658 return sender->handle(
this, FXSEL(SEL_COMMAND, ID_DISABLE),
nullptr);
2660 return sender->handle(
this, FXSEL(SEL_COMMAND, ID_DISABLE),
nullptr);
2669 if (
myNet ==
nullptr) {
2670 return sender->handle(
this, FXSEL(SEL_COMMAND, ID_DISABLE),
nullptr);
2672 return sender->handle(
this, FXSEL(SEL_COMMAND, ID_DISABLE),
nullptr);
2674 return sender->handle(
this, FXSEL(SEL_COMMAND, ID_ENABLE),
nullptr);
2681 if (
myNet ==
nullptr) {
2682 return sender->handle(
this, FXSEL(SEL_COMMAND, ID_DISABLE),
nullptr);
2684 return sender->handle(
this, FXSEL(SEL_COMMAND, ID_ENABLE),
nullptr);
2686 return sender->handle(
this, FXSEL(SEL_COMMAND, ID_ENABLE),
nullptr);
2688 return sender->handle(
this, FXSEL(SEL_COMMAND, ID_DISABLE),
nullptr);
2695 if (
myNet ==
nullptr) {
2696 return sender->handle(
this, FXSEL(SEL_COMMAND, ID_DISABLE),
nullptr);
2698 return sender->handle(
this, FXSEL(SEL_COMMAND, ID_DISABLE),
nullptr);
2700 return sender->handle(
this, FXSEL(SEL_COMMAND, ID_ENABLE),
nullptr);
2708 if (
myNet ==
nullptr) {
2709 return sender->handle(
this, FXSEL(SEL_COMMAND, ID_DISABLE),
nullptr);
2711 return sender->handle(
this, FXSEL(SEL_COMMAND, ID_DISABLE),
nullptr);
2713 return sender->handle(
this, FXSEL(SEL_COMMAND, ID_ENABLE),
nullptr);
2720 if (
myNet ==
nullptr) {
2721 return sender->handle(
this, FXSEL(SEL_COMMAND, ID_DISABLE),
nullptr);
2723 return sender->handle(
this, FXSEL(SEL_COMMAND, ID_DISABLE),
nullptr);
2725 return sender->handle(
this, FXSEL(SEL_COMMAND, ID_ENABLE),
nullptr);
2733 if (
myNet ==
nullptr) {
2734 return sender->handle(
this, FXSEL(SEL_COMMAND, ID_DISABLE),
nullptr);
2736 return sender->handle(
this, FXSEL(SEL_COMMAND, ID_DISABLE),
nullptr);
2738 return sender->handle(
this, FXSEL(SEL_COMMAND, ID_ENABLE),
nullptr);
2746 if (
myNet ==
nullptr) {
2747 return sender->handle(
this, FXSEL(SEL_COMMAND, ID_DISABLE),
nullptr);
2749 return sender->handle(
this, FXSEL(SEL_COMMAND, ID_DISABLE),
nullptr);
2751 return sender->handle(
this, FXSEL(SEL_COMMAND, ID_ENABLE),
nullptr);
2758 if (
myNet ==
nullptr) {
2759 return sender->handle(
this, FXSEL(SEL_COMMAND, ID_DISABLE),
nullptr);
2761 return sender->handle(
this, FXSEL(SEL_COMMAND, ID_DISABLE),
nullptr);
2763 return sender->handle(
this, FXSEL(SEL_COMMAND, ID_ENABLE),
nullptr);
2788 return sender->handle(
this, FXSEL(SEL_COMMAND, ID_DISABLE),
nullptr);
2791 return sender->handle(
this, FXSEL(SEL_COMMAND, ID_DISABLE),
nullptr);
2794 return sender->handle(
this, FXSEL(SEL_COMMAND, ID_ENABLE),
nullptr);
2798 return sender->handle(
this, FXSEL(SEL_COMMAND, ID_DISABLE),
nullptr);
2808 switch (FXSELID(sel)) {
2898 switch (FXSELID(sel)) {
3063 menuCheck->enable();
3065 menuCheck->disable();
3083 menuCheck->enable();
3085 menuCheck->disable();
3172 if ((sel ==
MID_GNE_FORCESAVE) && neteditOptions.getString(
"net-file").empty()) {
3173 neteditOptions.set(
"net-file", *(
static_cast<std::string*
>(ptr)) +
".net.xml");
3176 if (neteditOptions.getString(
"net-file").empty()) {
3185 getApp()->beginWaitCursor();
3189 std::vector<GNENetworkElement*> invalidNetworkElements;
3192 if (!edge.second->isNetworkElementValid()) {
3193 invalidNetworkElements.push_back(edge.second);
3197 if (!crossing.second->isNetworkElementValid()) {
3198 invalidNetworkElements.push_back(crossing.second);
3202 if (invalidNetworkElements.size() > 0) {
3206 if (fixNetworkElementsDialog.execute() == 0) {
3216 WRITE_DEBUG(
"network elements saved after dialog");
3227 WRITE_DEBUG(
"Opening FXMessageBox 'error saving network'");
3229 FXMessageBox::error(
this, MBOX_OK,
TL(
"Saving Network failed!"),
"%s", e.what());
3231 WRITE_DEBUG(
"Closed FXMessageBox 'error saving network' with 'OK'");
3235 WRITE_MESSAGE(
TL(
"Network saved in '") + neteditOptions.getString(
"net-file") +
"'.");
3241 WRITE_ERROR(
TL(
"Could not save network in '") + neteditOptions.getString(
"net-file") +
"'");
3244 getApp()->endWaitCursor();
3256 if (!networkFile.empty()) {
3259 neteditOptions.resetWritable();
3260 neteditOptions.set(
"net-file", networkFile);
3275 if (!plainXMLFile.empty()) {
3277 if (plainXMLFile.back() ==
'.') {
3278 plainXMLFile.pop_back();
3289 if (!plainXMLFile.empty()) {
3291 getApp()->beginWaitCursor();
3295 WRITE_MESSAGE(
TL(
"Plain XML saved with prefix '") + plainXMLFile +
"'");
3298 WRITE_DEBUG(
"Opening FXMessageBox 'Error saving plainXML'");
3300 FXMessageBox::error(
this, MBOX_OK,
TL(
"Saving plain xml failed!"),
"%s", e.what());
3302 WRITE_DEBUG(
"Closed FXMessageBox 'Error saving plainXML' with 'OK'");
3305 getApp()->endWaitCursor();
3319 if (joinedJunctionsFile.size() > 0) {
3320 getApp()->beginWaitCursor();
3324 WRITE_MESSAGE(
TL(
"Joined junctions saved to '") + joinedJunctionsFile +
"'");
3327 WRITE_DEBUG(
"Opening FXMessageBox 'error saving joined'");
3329 FXMessageBox::error(
this, MBOX_OK,
TL(
"Saving joined junctions failed!"),
"%s", e.what());
3331 WRITE_DEBUG(
"Closed FXMessageBox 'error saving joined' with 'OK'");
3333 getApp()->endWaitCursor();
3346 neteditOptions.resetWritable();
3348 if (neteditOptions.getString(
"configuration-file").empty()) {
3352 const auto neteditConfigFile = neteditOptions.getString(
"configuration-file");
3367 neteditOptions.writeConfiguration(out,
true,
false,
false, filePath,
true);
3369 WRITE_MESSAGE(
TL(
"Netedit configuration saved in '") + neteditConfigFile +
"'");
3375 WRITE_ERROR(
TL(
"Could not save netedit configuration in '") + neteditConfigFile +
"'");
3389 if (!neteditConfigFile.empty()) {
3390 neteditOptions.resetWritable();
3391 neteditOptions.set(
"configuration-file", neteditConfigFile);
3403 if (
myNet ==
nullptr) {
3404 sender->handle(
this, FXSEL(SEL_COMMAND, ID_DISABLE),
nullptr);
3406 sender->handle(
this, FXSEL(SEL_COMMAND, ID_ENABLE),
nullptr);
3408 sender->handle(
this, FXSEL(SEL_COMMAND, ID_ENABLE),
nullptr);
3410 sender->handle(
this, FXSEL(SEL_COMMAND, ID_DISABLE),
nullptr);
3430 neteditOptions.resetWritable();
3433 if (neteditOptions.getString(
"sumocfg-file").empty()) {
3441 const auto sumoConfigFile = neteditOptions.getString(
"sumocfg-file");
3461 WRITE_MESSAGE(
TL(
"SUMO configuration saved in '") + sumoConfigFile +
"'");
3463 if (!ignoreAdditionals && !ignoreDemandElements) {
3469 WRITE_MESSAGE(
TL(
"Could not save SUMO configuration in '") + sumoConfigFile +
"'");
3483 if (!sumoConfigFile.empty()) {
3485 neteditOptions.resetWritable();
3486 neteditOptions.set(
"sumocfg-file", sumoConfigFile);
3497 if (
myNet ==
nullptr) {
3498 return sender->handle(
this, FXSEL(SEL_COMMAND, ID_DISABLE),
nullptr);
3500 return sender->handle(
this, FXSEL(SEL_COMMAND, ID_ENABLE),
nullptr);
3502 return sender->handle(
this, FXSEL(SEL_COMMAND, ID_ENABLE),
nullptr);
3504 return sender->handle(
this, FXSEL(SEL_COMMAND, ID_DISABLE),
nullptr);
3514 if (neteditOptions.getString(
"tls-file").empty()) {
3518 getApp()->beginWaitCursor();
3523 WRITE_MESSAGE(
TL(
"TLS Programs saved in '") + neteditOptions.getString(
"tls-file") +
"'");
3526 WRITE_DEBUG(
"Opening FXMessageBox 'error saving TLS Programs'");
3528 FXMessageBox::error(
this, MBOX_OK,
TL(
"Saving TLS Programs failed!"),
"%s", e.what());
3530 WRITE_DEBUG(
"Closed FXMessageBox 'error saving TLS Programs' with 'OK'");
3533 getApp()->endWaitCursor();
3543 if (
myNet ==
nullptr) {
3544 return sender->handle(
this, FXSEL(SEL_COMMAND, ID_DISABLE),
nullptr);
3548 if (junction.second->getNBNode()->getControllingTLS().size() > 0) {
3549 return sender->handle(
this, FXSEL(SEL_COMMAND, ID_ENABLE),
nullptr);
3553 return sender->handle(
this, FXSEL(SEL_COMMAND, ID_DISABLE),
nullptr);
3563 if (neteditOptions.getString(
"edgetypes-file").empty()) {
3567 getApp()->beginWaitCursor();
3571 WRITE_MESSAGE(
TL(
"EdgeType saved in '") + neteditOptions.getString(
"edgetypes-file") +
"'");
3574 WRITE_DEBUG(
"Opening FXMessageBox 'error saving edgeTypes'");
3576 FXMessageBox::error(
this, MBOX_OK,
TL(
"Saving edgeTypes failed!"),
"%s", e.what());
3578 WRITE_DEBUG(
"Closed FXMessageBox 'error saving edgeTypes' with 'OK'");
3581 getApp()->endWaitCursor();
3593 sender->handle(
this, FXSEL(SEL_COMMAND, ID_ENABLE),
nullptr);
3595 sender->handle(
this, FXSEL(SEL_COMMAND, ID_DISABLE),
nullptr);
3608 if (!TLSFile.empty()) {
3610 neteditOptions.resetWritable();
3611 neteditOptions.set(
"tls-file", TLSFile);
3627 if (!edgeTypesFile.empty()) {
3629 neteditOptions.resetWritable();
3630 neteditOptions.set(
"edgetypes-file", edgeTypesFile);
3643 sender->handle(
this, FXSEL(SEL_COMMAND, ID_ENABLE),
nullptr);
3645 sender->handle(
this, FXSEL(SEL_COMMAND, ID_DISABLE),
nullptr);
3657 if (!additionalFile.empty()) {
3659 bool overwriteElements =
false;
3661 if (additionalFile == neteditOptions.getString(
"additional-files")) {
3670 overwriteElements =
true;
3682 if (!generalHandler.
parse()) {
3684 WRITE_ERROR(
TL(
"Loading of additional file failed: ") + additionalFile);
3687 neteditOptions.resetWritable();
3688 neteditOptions.set(
"additional-files", additionalFile);
3690 WRITE_MESSAGE(
TL(
"Loading of additional file successfully: ") + additionalFile);
3723 if (!generalHandler.
parse()) {
3724 WRITE_ERROR(
TL(
"Reloading of additional file failed: ") + additionalFile);
3743 return sender->handle(
this, FXSEL(SEL_COMMAND, ID_DISABLE),
nullptr);
3745 return sender->handle(
this, FXSEL(SEL_COMMAND, ID_ENABLE),
nullptr);
3755 if ((sel ==
MID_GNE_FORCESAVE) && neteditOptions.getString(
"additional-files").empty()) {
3756 neteditOptions.set(
"additional-files", *(
static_cast<std::string*
>(ptr)) +
".add.xml");
3761 }
else if (neteditOptions.getString(
"additional-files").empty()) {
3766 getApp()->beginWaitCursor();
3773 WRITE_MESSAGE(
TL(
"Additionals saved in '") + neteditOptions.getString(
"additional-files") +
"'");
3775 getApp()->endWaitCursor();
3780 WRITE_DEBUG(
"Opening FXMessageBox 'error saving additionals'");
3782 FXMessageBox::error(
this, MBOX_OK,
TL(
"Saving additionals failed!"),
"%s", e.what());
3784 WRITE_DEBUG(
"Closed FXMessageBox 'error saving additionals' with 'OK'");
3786 getApp()->endWaitCursor();
3799 if (neteditOptions.getString(
"configuration-file").size() > 0) {
3800 currentFolder =
getFolder(neteditOptions.getString(
"configuration-file"));
3801 }
else if (neteditOptions.getString(
"net-file").size() > 0) {
3802 currentFolder =
getFolder(neteditOptions.getString(
"net-file"));
3807 if (!additionalFile.empty()) {
3809 neteditOptions.resetWritable();
3811 neteditOptions.set(
"additional-files", additionalFile);
3829 if (!juPedSimFile.empty()) {
3832 getApp()->beginWaitCursor();
3836 WRITE_MESSAGE(
TL(
"JuPedSim elements saved in '") + juPedSimFile +
"'");
3838 getApp()->endWaitCursor();
3843 WRITE_DEBUG(
"Opening FXMessageBox 'error saving JuPedSim elements'");
3845 FXMessageBox::error(
this, MBOX_OK,
TL(
"Saving JuPedSim elements failed!"),
"%s", e.what());
3847 WRITE_DEBUG(
"Closed FXMessageBox 'error saving JuPedSim elements' with 'OK'");
3861 if (!routeFile.empty()) {
3863 bool overwriteElements =
false;
3865 if (routeFile == neteditOptions.getString(
"route-files")) {
3874 overwriteElements =
true;
3886 if (!handler.
parse()) {
3888 WRITE_ERROR(
TL(
"Loading of route file failed: ") + routeFile);
3891 neteditOptions.resetWritable();
3892 neteditOptions.set(
"route-files", routeFile);
3894 WRITE_MESSAGE(
TL(
"Loading of route file successfully: ") + routeFile);
3927 if (!handler.
parse()) {
3928 WRITE_ERROR(
TL(
"Reloading of route file failed: ") + routeFile);
3947 return sender->handle(
this, FXSEL(SEL_COMMAND, ID_DISABLE),
nullptr);
3949 return sender->handle(
this, FXSEL(SEL_COMMAND, ID_ENABLE),
nullptr);
3959 if ((sel ==
MID_GNE_FORCESAVE) && neteditOptions.getString(
"route-files").empty()) {
3960 neteditOptions.set(
"route-files", *(
static_cast<std::string*
>(ptr)) +
".rou.xml");
3965 }
else if (neteditOptions.getString(
"route-files").empty()) {
3969 getApp()->beginWaitCursor();
3976 WRITE_MESSAGE(
TL(
"Demand elements saved in '") + neteditOptions.getString(
"route-files") +
"'");
3978 getApp()->endWaitCursor();
3983 WRITE_DEBUG(
"Opening FXMessageBox 'error saving demand elements'");
3985 FXMessageBox::error(
this, MBOX_OK,
TL(
"Saving demand elements failed!"),
"%s", e.what());
3987 WRITE_DEBUG(
"Closed FXMessageBox 'error saving demand elements' with 'OK'");
3989 getApp()->endWaitCursor();
4002 if (neteditOptions.getString(
"configuration-file").size() > 0) {
4003 currentFolder =
getFolder(neteditOptions.getString(
"configuration-file"));
4004 }
else if (neteditOptions.getString(
"net-file").size() > 0) {
4005 currentFolder =
getFolder(neteditOptions.getString(
"net-file"));
4010 if (!routeFile.empty()) {
4012 neteditOptions.resetWritable();
4014 neteditOptions.set(
"route-files", routeFile);
4032 if (!dataFile.empty()) {
4034 bool overwriteElements =
false;
4036 if (dataFile == neteditOptions.getString(
"data-files")) {
4045 overwriteElements =
true;
4059 if (!dataHandler.
parse()) {
4061 WRITE_ERROR(
TL(
"Loading of data file failed: ") + dataFile);
4064 neteditOptions.resetWritable();
4065 neteditOptions.set(
"data-files", dataFile);
4104 if (!dataHandler.
parse()) {
4105 WRITE_ERROR(
TL(
"Reloading of data file failed: ") + dataFile);
4126 return sender->handle(
this, FXSEL(SEL_COMMAND, ID_DISABLE),
nullptr);
4128 return sender->handle(
this, FXSEL(SEL_COMMAND, ID_ENABLE),
nullptr);
4138 if ((sel ==
MID_GNE_FORCESAVE) && neteditOptions.getString(
"data-files").empty()) {
4139 neteditOptions.set(
"data-files", *(
static_cast<std::string*
>(ptr)) +
".dat.xml");
4144 }
else if (neteditOptions.getString(
"data-files").empty()) {
4148 getApp()->beginWaitCursor();
4153 WRITE_MESSAGE(
TL(
"Data elements saved in '") + neteditOptions.getString(
"data-files") +
"'");
4156 WRITE_DEBUG(
"Opening FXMessageBox 'error saving data elements'");
4158 FXMessageBox::error(
this, MBOX_OK,
TL(
"Saving data elements failed!"),
"%s", e.what());
4160 WRITE_DEBUG(
"Closed FXMessageBox 'error saving data elements' with 'OK'");
4163 getApp()->endWaitCursor();
4178 if (neteditOptions.getString(
"configuration-file").size() > 0) {
4179 currentFolder =
getFolder(neteditOptions.getString(
"configuration-file"));
4180 }
else if (neteditOptions.getString(
"net-file").size() > 0) {
4181 currentFolder =
getFolder(neteditOptions.getString(
"net-file"));
4186 if (!dataFile.empty()) {
4188 neteditOptions.resetWritable();
4190 neteditOptions.set(
"data-files", dataFile);
4207 if (!meanDataFile.empty()) {
4209 bool overwriteElements =
false;
4211 if (meanDataFile == neteditOptions.getString(
"meandata-files")) {
4220 overwriteElements =
true;
4232 if (!generalHandler.
parse()) {
4234 WRITE_ERROR(
TL(
"Loading of meandata file failed: ") + meanDataFile);
4237 neteditOptions.resetWritable();
4238 neteditOptions.set(
"meandata-files", meanDataFile);
4240 WRITE_MESSAGE(
TL(
"Loading of meandata file successfully: ") + meanDataFile);
4273 if (!generalHandler.
parse()) {
4274 WRITE_MESSAGE(
TL(
"Loading of meandata file successfully: ") + meanDataFile);
4293 return sender->handle(
this, FXSEL(SEL_COMMAND, ID_DISABLE),
nullptr);
4295 return sender->handle(
this, FXSEL(SEL_COMMAND, ID_ENABLE),
nullptr);
4310 if ((sel ==
MID_GNE_FORCESAVE) && neteditOptions.getString(
"meandata-files").empty()) {
4311 neteditOptions.set(
"meandata-files", *(
static_cast<std::string*
>(ptr)) +
".med.add.xml");
4316 }
else if (neteditOptions.getString(
"meandata-files").empty()) {
4320 getApp()->beginWaitCursor();
4325 WRITE_MESSAGE(
TL(
"MeanDatas saved in '") + neteditOptions.getString(
"meandata-files") +
"'");
4328 WRITE_DEBUG(
"Opening FXMessageBox 'error saving meanData'");
4330 FXMessageBox::error(
this, MBOX_OK,
TL(
"Saving meanData failed!"),
"%s", e.what());
4332 WRITE_DEBUG(
"Closed FXMessageBox 'error saving meanDara' with 'OK'");
4335 getApp()->endWaitCursor();
4351 if (neteditOptions.getString(
"configuration-file").size() > 0) {
4352 currentFolder =
getFolder(neteditOptions.getString(
"configuration-file"));
4353 }
else if (neteditOptions.getString(
"net-file").size() > 0) {
4354 currentFolder =
getFolder(neteditOptions.getString(
"net-file"));
4359 if (!meanDataFile.empty()) {
4361 neteditOptions.resetWritable();
4363 neteditOptions.set(
"meandata-files", meanDataFile);
4378 WRITE_DEBUG(
"Opening FXMessageBox 'Confirm close network'");
4380 const std::string header =
TL(
"Confirm close Network");
4381 const std::string contentsA =
TL(
"You have unsaved changes in the network.");
4382 const std::string contentsB =
TL(
"Do you wish to close and discard all changes?");
4383 const auto answer =
GUISaveDialog::question(getApp(), header.c_str(),
"%s", (contentsA +
"\n" + contentsB).c_str());
4389 WRITE_DEBUG(
"Closed FXMessageBox 'Confirm close network' with 'Quit'");
4417 WRITE_DEBUG(
"Closed FXMessageBox 'Confirm close network' with 'No'");
4418 }
else if (answer == 4) {
4419 WRITE_DEBUG(
"Closed FXMessageBox 'Confirm close network' with 'ESC'");
4444 WRITE_DEBUG(
"Opening FXMessageBox 'Save additionals before close'");
4446 const std::string header =
TL(
"Save additional elements before close");
4447 const std::string contentsA =
TL(
"You have unsaved additional elements.");
4448 const std::string contentsB =
TL(
"Do you wish to close and discard all changes?");
4449 const auto answer =
GUISaveDialog::question(getApp(), header.c_str(),
"%s", (contentsA +
"\n" + contentsB).c_str());
4454 WRITE_DEBUG(
"Closed FXMessageBox 'Save additionals before close' with 'Quit'");
4459 WRITE_DEBUG(
"Closed FXMessageBox 'Save additionals before close' with 'Yes'");
4470 WRITE_DEBUG(
"Closed FXMessageBox 'Save additionals before close' with 'No'");
4471 }
else if (answer == 4) {
4472 WRITE_DEBUG(
"Closed FXMessageBox 'Save additionals before close' with 'ESC'");
4488 WRITE_DEBUG(
"Opening FXMessageBox 'Save demand elements before close'");
4490 const std::string header =
TL(
"Save demand elements before close");
4491 const std::string contentsA =
TL(
"You have unsaved demand elements.");
4492 const std::string contentsB =
TL(
"Do you wish to close and discard all changes?");
4493 const auto answer =
GUISaveDialog::question(getApp(), header.c_str(),
"%s", (contentsA +
"\n" + contentsB).c_str());
4498 WRITE_DEBUG(
"Closed FXMessageBox 'Save demand elements before close' with 'Quit'");
4503 WRITE_DEBUG(
"Closed FXMessageBox 'Save demand elements before close' with 'Yes'");
4514 WRITE_DEBUG(
"Closed FXMessageBox 'Save demand elements before close' with 'No'");
4515 }
else if (answer == 4) {
4516 WRITE_DEBUG(
"Closed FXMessageBox 'Save demand elements before close' with 'ESC'");
4532 WRITE_DEBUG(
"Opening FXMessageBox 'Save data elements before close'");
4534 const std::string header =
TL(
"Save data elements before close");
4535 const std::string contentsA =
TL(
"You have unsaved data elements.");
4536 const std::string contentsB =
TL(
"Do you wish to close and discard all changes?");
4537 const auto answer =
GUISaveDialog::question(getApp(), header.c_str(),
"%s", (contentsA +
"\n" + contentsB).c_str());
4542 WRITE_DEBUG(
"Closed FXMessageBox 'Save data elements before close' with 'Quit'");
4547 WRITE_DEBUG(
"Closed FXMessageBox 'Save data elements before close' with 'Yes'");
4558 WRITE_DEBUG(
"Closed FXMessageBox 'Save data elements before close' with 'No'");
4559 }
else if (answer == 4) {
4560 WRITE_DEBUG(
"Closed FXMessageBox 'Save data elements before close' with 'ESC'");
4576 WRITE_DEBUG(
"Opening FXMessageBox 'Save meanData elements before close'");
4578 const std::string header =
TL(
"Save meanData elements before close");
4579 const std::string contentsA =
TL(
"You have unsaved meanData elements.");
4580 const std::string contentsB =
TL(
"Do you wish to close and discard all changes?");
4581 const auto answer =
GUISaveDialog::question(getApp(), header.c_str(),
"%s", (contentsA +
"\n" + contentsB).c_str());
4586 WRITE_DEBUG(
"Closed FXMessageBox 'Save meanData elements before close' with 'Quit'");
4591 WRITE_DEBUG(
"Closed FXMessageBox 'Save meanData elements before close' with 'Yes'");
4602 WRITE_DEBUG(
"Closed FXMessageBox 'Save meanData elements before close' with 'No'");
4603 }
else if (answer == 4) {
4604 WRITE_DEBUG(
"Closed FXMessageBox 'Save meanData elements before close' with 'ESC'");
4624 if (ignoreRoutes || neteditOptions.getString(
"route-files").empty()) {
4630 if (ignoreAdditionals) {
4631 if (neteditOptions.getString(
"meandata-files").empty()) {
4634 mySumoOptions.
set(
"additional-files", neteditOptions.getString(
"meandata-files"));
4637 if ((neteditOptions.getString(
"additional-files").size() > 0) && (neteditOptions.getString(
"meandata-files").size())) {
4638 mySumoOptions.
set(
"additional-files", neteditOptions.getString(
"additional-files") +
"," + neteditOptions.getString(
"meandata-files"));
4639 }
else if (neteditOptions.getString(
"additional-files").size() > 0) {
4640 mySumoOptions.
set(
"additional-files", neteditOptions.getString(
"additional-files"));
4641 }
else if (neteditOptions.getString(
"meandata-files").size() > 0) {
4642 mySumoOptions.
set(
"additional-files", neteditOptions.getString(
"meandata-files"));
4653 std::string newFolder = folder;
4658 if (newFolder.empty()) {
4661 }
else if ((newFolder.back() ==
'\'') || (newFolder.back() ==
'\\') ||
4662 (newFolder.back() ==
'/') ) {
4666 newFolder.pop_back();
4670 if (newFolder.empty()) {
4673 return FXString(newFolder.c_str());
4845 const auto additionalFiles = neteditOptions.getStringVector(
"additional-files");
4847 const auto ignoreLoadAdditionalFiles = neteditOptions.getBool(
"ignore.additionalelements");
4849 if (ignoreLoadAdditionalFiles) {
4851 neteditOptions.resetWritable();
4852 neteditOptions.set(
"ignore.additionalelements",
"false");
4853 }
else if (
myNet && (additionalFiles.size() > 0)) {
4855 neteditOptions.resetWritable();
4856 neteditOptions.set(
"additional-files", additionalFiles.front());
4860 bool setSaved = additionalFiles.size() == 1;
4861 for (
const auto& file : additionalFiles) {
4870 if (!handler.
parse()) {
4898 const auto demandFiles = neteditOptions.getStringVector(
"route-files");
4900 const auto ignoreLoadDemandFiles = neteditOptions.getBool(
"ignore.routeelements");
4902 if (ignoreLoadDemandFiles) {
4904 neteditOptions.resetWritable();
4905 neteditOptions.set(
"ignore.routeelements",
"false");
4906 }
else if (
myNet && (demandFiles.size() > 0)) {
4908 neteditOptions.resetWritable();
4909 neteditOptions.set(
"route-files", demandFiles.front());
4913 for (
const auto& file : demandFiles) {
4922 if (!handler.
parse()) {
4946 const auto meanDataFiles = neteditOptions.getStringVector(
"meandata-files");
4948 if (
myNet && (meanDataFiles.size() > 0)) {
4950 neteditOptions.resetWritable();
4951 neteditOptions.set(
"meandata-files", meanDataFiles.front());
4955 for (
const auto& file : meanDataFiles) {
4964 if (!handler.
parse()) {
4988 const auto dataFiles = neteditOptions.getStringVector(
"data-files");
4990 if (
myNet && (dataFiles.size() > 0)) {
4996 for (
const auto& file : dataFiles) {
5003 if (!dataHandler.
parse()) {
5007 neteditOptions.resetWritable();
5008 neteditOptions.set(
"data-files", file);
5030 myToolbarsGrip(this),
5031 myMenuBarFile(this),
5032 myFileMenuCommands(this),
5033 myModesMenuCommands(this),
5034 myEditMenuCommands(this),
5035 myLockMenuCommands(this),
5036 myProcessingMenuCommands(this),
5037 myLocateMenuCommands(this),
5038 myToolsMenuCommands(this),
5039 myWindowsMenuCommands(this),
5040 myHelpMenuCommands(this),
5041 mySupermodeCommands(this) {
5047 const long handled = FXMainWindow::onKeyPress(o, sel, eventData);
5048 if (handled == 0 &&
myMDIClient->numChildren() > 0) {
5060 const long handled = FXMainWindow::onKeyRelease(o, sel, eventData);
5061 if (handled == 0 &&
myMDIClient->numChildren() > 0) {
FXDEFMAP(GNEApplicationWindow) GNEApplicationWindowMap[]
@ DATA_SELECT
mode for selecting data elements
@ DATA_INSPECT
mode for inspecting data elements
@ DATA_DELETE
mode for deleting data elements
Supermode
@brie enum for supermodes
@ NETWORK
Network mode (Edges, junctions, etc..)
@ DATA
Data mode (edgeData, LaneData etc..)
@ DEMAND
Demand mode (Routes, Vehicles etc..)
@ NETWORK_DELETE
mode for deleting network elements
@ NETWORK_MOVE
mode for moving network elements
@ NETWORK_SELECT
mode for selecting network elements
@ NETWORK_INSPECT
mode for inspecting network elements
@ NETWORK_CONNECT
mode for connecting lanes
@ DEMAND_INSPECT
mode for inspecting demand elements
@ DEMAND_DELETE
mode for deleting demand elements
@ DEMAND_SELECT
mode for selecting demand elements
@ DEMAND_MOVE
mode for moving demand elements
@ MID_GNE_NETWORKVIEWOPTIONS_AUTOOPPOSITEEDGES
automatically create opposite edge
@ MID_GNE_NETGENERATE
netgenerate dialog
@ MID_HOTKEY_SHIFT_F10_SUMOOPTIONSMENU
open SUMO options menu (used in netedit)
@ MID_HOTKEY_SHIFT_F7_ADJUST_PERSON_PLANS
Adjust person plans (start und end positions, arrival positions, etc.)
@ MID_HOTKEY_CTRL_Q_CLOSE
Main window closes.
@ MID_HOTKEY_SHIFT_F5_COMPUTEJUNCTIONS_VOLATILE
compute junctions with volatile options
@ MID_HOTKEY_CTRL_SHIFT_B_SAVEDATAELEMENTS
save Data Elements
@ MID_HOTKEY_F3_SUPERMODE_DEMAND
select demand supermode in netedit
@ MID_GNE_UNDOLISTDIALOG
open undo list dialog
@ MID_GNE_DEMANDVIEWOPTIONS_SHOWALLPERSONPLANS
show all person plans
@ MID_GNE_UNLOCK_ALLELEMENTS
unlock all element
@ MID_GNE_NETGENERATEOPTIONS
netgenerate options
@ MID_HOTKEY_SHIFT_S_LOCATESTOP
Locate stop - button.
@ MID_HOTKEY_CTRL_T_OPENNETEDIT_OPENSUMO
Open current SUMO simulation/network in netedit, or current netedit simulation/network in SUMO.
@ MID_GNE_DATAVIEWOPTIONS_TAZRELDRAWING
toggle TAZRel drawing
@ MID_GNE_TOGGLE_COMPUTE_NETWORK_DATA
enable/disable computing after switchin between supermodes
@ MID_TOOLBAREDIT_LOADADDITIONALS
load additionals in sumo-gui/netedit after press ctrl+T
@ MID_HOTKEY_U_MODE_DECAL_TYPEDISTRIBUTION
hotkey for mode decal AND type distribution
@ MID_GNE_NETWORKVIEWOPTIONS_DRAWSPREADVEHICLES
Draw vehicles in begin position or spread in lane.
@ MID_HOTKEY_CTRL_Y_REDO
Undo.
@ MID_GNE_RUNNETGENERATE
run netgenerate tool
@ MID_HOTKEY_CTRL_SHIFT_H_SAVEEDGETYPES
save Edge Types
@ MID_GNE_OPENPYTHONTOOLDIALOG
call tool
@ MID_GNE_NETWORKVIEWOPTIONS_MOVEELEVATION
move elevation instead of x,y
@ MID_HOTKEY_ALT_9_TOGGLEEDITOPTION
toggle edit option
@ MID_GNE_TOOLBARFILE_RELOAD_EDGETYPES
reload edge types
@ MID_GNE_NETWORKVIEWOPTIONS_HIDECONNECTIONS
hide connections
@ MID_GNE_NETWORKVIEWOPTIONS_SHOWCONNECTIONS
show connections
@ MID_HOTKEY_ALT_5_TOGGLEEDITOPTION
toggle edit option
@ MID_GNE_DATAVIEWOPTIONS_TAZRELONLYTO
toggle draw TAZRel only to
@ MID_HOTKEY_CTRL_W_CLOSESIMULATION
Close simulation - ID.
@ MID_HOTKEY_ALT_2_TOGGLEEDITOPTION
toggle edit option
@ MID_GNE_LOCK_ALLELEMENTS
lock all element
@ MID_HOTKEY_F7_JOIN_SELECTEDJUNCTIONS_ROUTES
join selected junctions in network mode and normalice demand element ids in demand mode
@ MID_HOTKEY_CTRL_D_SINGLESIMULATIONSTEP_OPENDEMANDELEMENTS
Perform a single simulation step in SUMO and open Demand Elements in netedit.
@ MID_HOTKEY_F5_COMPUTE_NETWORK_DEMAND
compute Network in network mode and Demand elements in demand mode
@ MID_GNE_DATAVIEWOPTIONS_TOGGLEDRAWJUNCTIONSHAPE
toggle draw junction shape
@ MID_HOTKEY_CTRL_O_OPENSIMULATION_OPENNETWORK
Open simulation in SUMO and open network in netedit.
@ MID_GNE_LOCK_MENUTITLE
selector for LockMenuTitle
@ MID_GNE_NETWORKVIEWOPTIONS_SHOWTAZELEMENTS
show TAZ elements
@ MID_GNE_DEMANDVIEWOPTIONS_LOCKPERSON
lock person
@ MID_HOTKEY_Z_MODE_TAZ_TAZREL
hotkey for mode editing TAZ and TAZRel
@ MID_HOTKEY_F9_EDIT_VIEWSCHEME
open edit scheme menu
@ MID_GNE_DEMANDVIEWOPTIONS_TOGGLEDRAWJUNCTIONSHAPE
toggle draw junction shape
@ MID_HOTKEY_SHIFT_ESC_CLEARSELECTION
clear selection
@ MID_GNE_LOCK_SELECTEDELEMENTS
lock selected element
@ MID_HOTKEY_CTRL_J_TOGGLEDRAWJUNCTIONSHAPE
toggle draw junction shape
@ MID_GNE_TOOLBARFILE_SAVESUMOCONFIG_AS
save SUMOConfig as
@ MID_GNE_TOOLBARFILE_RELOAD_TLSPROGRAMS
reload TLS Programs
@ MID_HOTKEY_DEL
hot key delete selections or elements
@ MID_HOTKEY_A_MODE_STARTSIMULATION_ADDITIONALS_STOPS
hotkey for start simulation in SUMO and set editing mode additionals AND stops in netedit
@ MID_LANGUAGE_TR
change language to turkish
@ MID_CHANGELOG
changelog button
@ MID_GNE_NETWORKVIEWOPTIONS_ASKFORMERGE
ask before merging junctions
@ MID_GNE_TOOLBARFILE_OPENFOREIGN
open foreign network
@ MID_GNE_TOGGLE_TIMEFORMAT
switch time format
@ MID_GNE_TOOLBARFILE_RELOAD_NETEDITCONFIG
reload neteditConfig
@ MID_HOTKEY_CTRL_B_EDITBREAKPOINT_OPENDATAELEMENTS
Edit simulation breakpoints in SUMO and open Data Elements in netedit.
@ MID_TOOLBAREDIT_LOADDEMAND
load demand in sumo-gui/netedit after press ctrl+T
@ MID_GNE_DEMANDVIEWOPTIONS_SHOWGRID
show grid
@ MID_HOTKEY_ALT_3_TOGGLEEDITOPTION
toggle edit option
@ MID_HOTKEY_F1_ONLINEDOCUMENTATION
open online documentation
@ MID_HOTKEY_CTRL_SHIFT_D_SAVEDEMANDELEMENTS
Save Demand Elements.
@ MID_GNE_POSTPROCESSINGPYTHONTOOL
call tool for post processing
@ MID_GNE_FORCESAVE
force save elements (using for saving netedit and sumo configs)
@ MID_HOTKEY_CTRL_R_RELOAD
Reload the previously loaded simulation.
@ MID_HOTKEY_CTRL_S_STOPSIMULATION_SAVENETWORK
Stop the simulation in SUMO and save network in netedit.
@ MID_GNE_TOOLBARFILE_RELOAD_MEANDATAS
reload meanDatas
@ MID_HOTKEY_D_MODE_SINGLESIMULATIONSTEP_DELETE
hotkey for perform a single simulation step in SUMO and set delete mode in netedit
@ MID_GNE_NETWORKVIEWOPTIONS_CHAINEDGES
create edges in chain mode
@ MID_HOTKEY_ESC
hot key <ESC> abort current edit operation
@ MID_GNE_TOOLBARFILE_SAVEDATA_AS
save data elements as
@ MID_HOTKEY_F10_OPTIONSMENU
open options menu
@ MID_HOTKEY_F11_FRONTELEMENT
set/clear front element
@ MID_HOTKEY_F8_CLEANINVALID_CROSSINGS_DEMANDELEMENTS
clean invalid crossings in network mode and demand elements in demand mode
@ MID_GNE_DATAVIEWOPTIONS_SHOWDEMANDELEMENTS
show demand elements
@ MID_HOTKEY_C_MODE_CONNECT_CONTAINER
hotkey for mode connecting lanes AND container
@ MID_HOTKEY_H_MODE_PROHIBITION_CONTAINERPLAN
hotkey for mode prohibition AND container plan
@ MID_HOTKEY_SHIFT_O_LOCATEPOI
Locate poi - button.
@ MID_HOTKEY_W_MODE_WIRE_ROUTEDISTRIBUTION
hotkey for mode editing overhead wires AND route distributions
@ MID_HOTKEY_T_MODE_TLS_TYPE
hotkey for mode editing TLS AND Vehicle Types
@ MID_GNE_DEMANDVIEWOPTIONS_HIDESHAPES
hide shapes
@ MID_GNE_TOGGLE_UNDOREDO
enable/disable undo-redo
@ MID_LANGUAGE_ZHT
change language to chinese (traditional)
@ MID_LANGUAGE_ES
change language to spanish
@ MID_HOTKEY_SHIFT_A_LOCATEADDITIONAL
Locate additional structure - button.
@ MID_HOTKEY_ALT_4_TOGGLEEDITOPTION
toggle edit option
@ MID_GNE_TOOLBARFILE_SAVETLSPROGRAMS_AS
save TLS Programs as
@ MID_GNE_DATAVIEWOPTIONS_SHOWADDITIONALS
show additionals
@ MID_HOTKEY_SHIFT_R_LOCATEROUTE
Locate route - button.
@ MID_GNE_RUNPYTHONTOOL
run python
@ MID_GNE_NETWORKVIEWOPTIONS_SHOWBUBBLES
show junctions as bubbles
@ MID_HOTKEY_SHIFT_W_LOCATEWALKINGAREA
Locate edge - button.
@ MID_GNE_TOOLBARFILE_RELOAD_DEMANDELEMENTS
reload demand elements
@ MID_GNE_NETWORKVIEWOPTIONS_EXTENDSELECTION
extend selection
@ MID_HOTKEY_CTRL_I_EDITVIEWPORT
Open viewport editor.
@ MID_RECENTFILE
Loads a file previously loaded.
@ MID_HOTKEY_S_MODE_STOPSIMULATION_SELECT
hotkey for stop simulation in SUMO and set select mode in netedit
@ MID_GNE_NETWORKVIEWOPTIONS_SHOWSUBADDITIONALS
show sub-additionals
@ MID_HOTKEY_SHIFT_C_LOCATECONTAINER
Locate container - button.
@ MID_GNE_DEMANDVIEWOPTIONS_SHOWALLCONTAINERPLANS
show all container plans
@ MID_HOTKEY_CTRL_SHIFT_N_NEWWINDOW
open a new window (SUMO AND netedit)
@ MID_HOTKEY_SHIFT_V_LOCATEVEHICLE
Locate vehicle - button.
@ MID_LANGUAGE_HU
change language to hungarian
@ MID_HOTKEY_F4_SUPERMODE_DATA
select data supermode in netedit
@ MID_HOTKEY_SHIFT_L_LOCATEPOLY
Locate polygons - button.
@ MID_HOTKEY_F6_CLEAN_SOLITARYJUNCTIONS_UNUSEDROUTES
clean junctions without edges in network mode and unused routes in demand mode
@ MID_HOTKEY_ALT_1_TOGGLEEDITOPTION
toggle edit option
@ MID_HOTKEY_CTRL_K_OPENTLSPROGRAMS
Load file with TLS Programs.
@ MID_LANGUAGE_IT
change language to italian
@ MID_GNE_LOCK_ELEMENT
lock element
@ MID_GNE_TOOLBARFILE_SAVENETEDITCONFIG_AS
save neteditConfig as
@ MID_HOTKEY_SHIFT_E_LOCATEEDGE
Locate edge - button.
@ MID_CLEARMESSAGEWINDOW
Clear simulation output.
@ MID_GNE_TOOLBARFILE_OPENMEANDATAS
open meanData file
@ MID_HOTKEY_R_MODE_CROSSING_ROUTE_EDGERELDATA
hotkey for mode editing crossing, routes and edge rel datas
@ MID_TUTORIAL
tutorial button
@ MID_GNE_TOGGLE_UNDOREDO_LOADING
enable/disable undo-redo during loading
@ MID_HOTKEY_CTRL_G_GAMINGMODE_TOGGLEGRID
Toggle Gaming mode in SUMO and grid in netedit.
@ MID_GNE_DATAVIEWOPTIONS_TAZDRAWFILL
toggle draw TAZ fill
@ MID_HOTKEY_ALT_6_TOGGLEEDITOPTION
toggle edit option
@ MID_HOTKEY_CTRL_SHIFT_M_SAVEMEANDATAS
save Mean Datas
@ ID_LOADTHREAD_EVENT
The loading thread.
@ MID_HOTKEY_L_MODE_PERSONPLAN
hotkey for mode person plan
@ MID_GNE_TOOLBARFILE_SAVEMEANDATAS_AS
save meanDatas as
@ MID_GNE_TOOLBARFILE_RELOAD_ADDITIONALS
reload additionals
@ MID_HOTKEY_V_MODE_VEHICLE
hotkey for mode create vehicles
@ MID_HOTKEY_SHIFT_P_LOCATEPERSON
Locate person - button.
@ MID_HOTKEY_I_MODE_INSPECT
hotkey for mode inspecting object attributes
@ MID_LANGUAGE_EN
change language to english
@ MID_GNE_NETWORKVIEWOPTIONS_SHOWDEMANDELEMENTS
show demand elements
@ MID_HOTKEY_SHIFT_J_LOCATEJUNCTION
Locate junction - button.
@ MID_HOTKEY_ALT_0_TOGGLEEDITOPTION
toggle edit option
@ MID_HOTKEY_CTRL_SHIFT_E_SAVENETEDITCONFIG
save netedit Config
@ MID_GNE_TOOLBARFILE_SAVEADDITIONALS_AS
save additionals as
@ MID_GNE_TOOLBARFILE_SAVEEDGETYPES_AS
save edgeTypes as
@ MID_HOTKEYS
hotkeys button
@ MID_GNE_DEMANDVIEWOPTIONS_HIDENONINSPECTED
hide non-inspected demand element
@ MID_LANGUAGE_DE
change language to german
@ MID_HOTKEY_ALT_F4_CLOSE
Main window closes.
@ MID_HOTKEY_CTRL_SHIFT_A_SAVEADDITIONALS
Save Additional Elements.
@ MID_GNE_TOOLBARFILE_RELOADNETWORK
reload only network
@ MID_HOTKEY_SHIFT_F2_TEMPLATE_COPY
copy template
@ MID_GNE_NETWORKVIEWOPTIONS_CHANGEALLPHASES
change all phases
@ MID_HOTKEY_CTRL_A_STARTSIMULATION_OPENADDITIONALS
Start the simulation in SUMO and open Additionals Elements in netedit.
@ MID_GNE_DATAVIEWOPTIONS_SHOWSHAPES
show shapes
@ MID_GNE_POSTPROCESSINGNETGENERATE
postprocesing netgenerate
@ MID_HOTKEY_E_MODE_EDGE_EDGEDATA
hotkey for mode adding edges AND edgeDatas
@ MID_GNE_DATAVIEWOPTIONS_TAZRELONLYFROM
toggle draw TAZRel only from
@ MID_HOTKEY_ALT_8_TOGGLEEDITOPTION
toggle edit option
@ MID_GNE_TOOLBARFILE_RELOAD_SUMOCONFIG
reload SUMOConfig
@ MID_GNE_NETWORKVIEWOPTIONS_TOGGLEDRAWJUNCTIONSHAPE
toggle draw junction shape
@ MID_HOTKEY_CTRL_SHIFT_O_OPENNETCONVERTFILE
open Netconvert file
@ MID_GNE_RECOMPUTINGNEEDED
check if recomputing is needed
@ MID_HOTKEY_CTRL_M_OPENSUMOCONFIG
open sumo config
@ MID_GNE_TOOLBARFILE_SAVEDEMAND_AS
save demand elements as
@ MID_GNE_TOOLBARFILE_SAVENETWORK_AS
save network as
@ MID_GNE_DEMANDVIEWOPTIONS_DRAWSPREADVEHICLES
Draw vehicles in begin position or spread in lane.
@ MID_GNE_DEMANDVIEWOPTIONS_SHOWOVERLAPPEDROUTES
show overlapped routes
@ MID_HOTKEY_CTRL_Z_UNDO
Redo.
@ MID_GNE_MODESMENUTITLE
selector for ModesMenuTitle
@ MID_FEEDBACK
feedback button
@ MID_HOTKEY_CTRL_H_APPSETTINGS_OPENEDGETYPES
open app setting dialog in SUMO and open edge type files in netedit
@ MID_HOTKEY_BACKSPACE
hot key <Backspace> remove last sub-operation
@ MID_HOTKEY_CTRL_SHIFT_S_SAVESUMOCONFIG
save SUMOConfig (SUMO AND netedit)
@ MID_HOTKEY_ALT_7_TOGGLEEDITOPTION
toggle edit option
@ MID_HOTKEY_F12_ABOUT
open about dialog
@ MID_HOTKEY_CTRL_E_EDITSELECTION_LOADNETEDITCONFIG
Edit selection in SUMO and load neteditConfig in netedit.
@ MID_HOTKEY_ENTER
hot key <ENTER> accept current operation
@ MID_GNE_TOOLBARFILE_RELOAD_DATAELEMENTS
reload data elements
@ MID_HOTKEY_CTRL_SHIFT_K_SAVETLS
save TLS Programs
@ MID_HOTKEY_SHIFT_F1_TEMPLATE_SET
set template
@ MID_HOTKEY_SHIFT_T_LOCATETLS
Locate TLS - button.
@ MID_HOTKEY_M_MODE_MOVE_MEANDATA
hotkey for mode moving element AND mean data
@ MID_HOTKEY_F2_SUPERMODE_NETWORK
select network supermode in netedit
@ MID_GNE_DEMANDVIEWOPTIONS_LOCKCONTAINER
lock container
@ MID_HOTKEY_SHIFT_F12_FOCUSUPPERELEMENT
focus upper element of current frame (only used in netedit)
@ MID_HOTKEY_CTRL_N_OPENNETWORK_NEWNETWORK
open network in SUMO and create new empty network in netedit
@ MID_HOTKEY_SHIFT_F3_TEMPLATE_CLEAR
clear template
@ MID_GNE_NETWORKVIEWOPTIONS_SELECTEDGES
select edges
@ MID_LANGUAGE_ZH
change language to chinese (simplified)
@ MID_GNE_SAVEJOINEDJUNCTIONS
save joined junctions
@ MID_GNE_DEMANDVIEWOPTIONS_SHOWTRIPS
show all trips
@ MID_GNE_NETWORKVIEWOPTIONS_TOGGLEGRID
show grid
@ MID_LANGUAGE_FR
change language to french
@ MID_GNE_TOOLBARFILE_SAVEJUPEDSIMELEMENTS_AS
save JuPedSim as
@ MID_HOTKEY_P_MODE_POLYGON_PERSON
hotkey for mode creating polygons
@ MID_HOTKEY_CTRL_L_SAVEASPLAINXML
save network as plain XML
@ MID_GNE_TOOLBAREDIT_COMPUTEPATHMANAGER
compute path manager
@ MID_WINDOW
Main window-ID.
GUICompleteSchemeStorage gSchemeStorage
#define GUIDesignButtonStatusBarFixed
button rectangular with thick and raise frame with a width of 100
#define GUIDesignHorizontalFrameStatusBar
Horizontal frame used in status bar.
#define GUIDesignLabelStatusBar
label used in statusBar
#define GUIDesignSplitter
#define GUIDesignSplitterMDI
MDI Splitter.
#define GUIDesignStatusBar
design used in status bar
@ MESSAGE_OCCURRED
send when a message occured
@ GLDEBUG_OCCURRED
send when a gldebug occured
@ ERROR_OCCURRED
send when a error occured
@ SIMULATION_LOADED
send when a simulation has been loaded
@ DEBUG_OCCURRED
send when a debug occured
@ WARNING_OCCURRED
send when a warning occured
GUISelectedStorage gSelected
A global holder of selected objects.
FXString gCurrentFolder
The folder used as last.
#define WRITE_ERRORF(...)
#define WRITE_MESSAGE(msg)
#define PROGRESS_FAILED_MESSAGE()
@ GNE_TAG_TRIP_JUNCTIONS
a trip between junctions
@ GNE_TAG_FLOW_JUNCTIONS
a flow between junctions
@ GNE_TAG_JPS_OBSTACLE
polygon used for draw juPedSim obstacles
@ GNE_TAG_JPS_WALKABLEAREA
polygon used for draw juPedSim walkable areas
std::string toString(const T &t, std::streamsize accuracy=gPrecision)
bool isErrorCreatingElement() const
get flag for check if a element wasn't created
void setSelector(FXSelector sel)
set the selector
void setTarget(FXObject *tgt)
set the target
static bool isReadable(std::string path)
Checks whether the given file is readable.
static std::string getFilePath(const std::string &path)
Removes the file information from the given path.
static void resetFont()
to be called when the font context is invalidated
The application's "About" - dialog.
void create()
Creates the widget.
The main window of Netedit.
long onCmdSaveAdditionals(FXObject *, FXSelector, void *)
called when the command/FXCall save additionals is executed
long onCmdOpenNetgenerateDialog(FXObject *, FXSelector, void *)
called when user press "netgenerate" button
FXMenuPane * myFileMenuMeanDataElements
GNEApplicationWindowHelper::SupermodeCommands mySupermodeCommands
Supermode Commands.
long onCmdToggleUndoRedoLoading(FXObject *, FXSelector, void *)
called when toggle checkbox disable undo redo during loading (file)
FXMenuPane * myToolsImportCityBrainMenu
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
bool continueWithUnsavedAdditionalChanges()
warns about unsaved changes in additionals and gives the user the option to abort
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
bool continueWithUnsavedChanges()
warns about unsaved changes and gives the user the option to abort
long onUpdComputePathManager(FXObject *obj, FXSelector sel, void *ptr)
called when the update/FXCall compute path manager is executed
void updateControls()
update control contents after undo/redo or recompute
GNEApplicationWindowHelper::LockMenuCommands myLockMenuCommands
Lock Menu Commands.
long computeJunctionWithVolatileOptions()
called if the user selects Processing->compute junctions with volatile options
long onCmdFeedback(FXObject *sender, FXSelector sel, void *ptr)
called if the user selects help->feedback
FXMenuPane * myToolsImportMenu
long onCmdNewNetwork(FXObject *, FXSelector, void *)
called when the command/FXCall new network is executed
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.
FXMenuPane * myToolsImportVissim
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
FXMenuPane * myFileMenuAdditionals
long onUpdSaveNetwork(FXObject *, FXSelector, void *)
called when the update/FXCall save network is executed
std::string myUndoRedoListEnabled
string to check if undo/redo list is enabled (a String is used to keep the disabling reason)
long onUpdSaveEdgeTypesAs(FXObject *, FXSelector, void *)
called when the command/FXCall save edgeTypes as is updated
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
FXMenuPane * myToolsImportVisum
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.
FXMenuPane * myFileMenuSumoConfig
long onCmdToggleViewOption(FXObject *, FXSelector, void *)
toggle viewOption
FXEX::MFXThreadEvent myLoadThreadEvent
io-event with the load-thread
FXMenuPane * myFileMenuRecentConfigs
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 onCmdOpenAdditionals(FXObject *, FXSelector, void *)
called when the command/FXCall open additionals is executed
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
long onUpdSaveAdditionalsAs(FXObject *, FXSelector, void *)
called when the update/FXCall save additionals as is executed
FXMenuPane * myToolsRouteMenu
GNEApplicationWindowHelper::EditMenuCommands & getEditMenuCommands()
get Edit Menu Commands (needed for show/hide menu commands)
void setStatusBarText(const std::string &statusBarText)
set text of the statusBar
FXMenuPane * myProcessingMenu
GNEUndoList * myUndoList
the one and only undo list
FXMenuPane * myToolsVisualizationMenu
long onUpdSaveDataElements(FXObject *, FXSelector, void *)
called when the update/FXCall save data elements is executed
long onCmdSmartReload(FXObject *, FXSelector, void *)
called when the command/FXCall smart reload is executed
long onCmdPaste(FXObject *, FXSelector, void *)
long onUpdSaveDemandElementsAs(FXObject *, FXSelector, void *)
called when the update/FXCall save demand elements as is executed
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 *)
long onUpdReloadMeanDatas(FXObject *, FXSelector, void *)
called when the command/FXCall reload meanDatas is updated
FXString getFolder(const std::string &folder) const
extract folder
long onLoadThreadEvent(FXObject *, FXSelector, void *)
called when the command/FXCall load thread 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 onUpdSaveDemandElements(FXObject *, FXSelector, void *)
called when the update/FXCall save demand elements is executed
OptionsCont myOriginalSumoOptions
original sumo options container
FXMenuPane * myToolsEmissionsMenu
OptionsCont myNetgenerateOptions
netgenerate options container
long onUpdReloadAdditionals(FXObject *, FXSelector, void *)
called when the command/FXCall reload additionals is updated
SUMOTime getCurrentSimTime() const
get current simulation time (pure virtual but we don't need it)
long onCmdReloadEdgeTypes(FXObject *, FXSelector, void *)
called when the command/FXCall reload edge types is executed
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.
FXMenuPane * myFileMenuTLS
long onCmdSaveEdgeTypesAs(FXObject *, FXSelector, void *)
called when the command/FXCall save edgeTypes as is executed
FXMenuPane * myToolsShapes
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 *)
FXMenuPane * myToolsImportGTFSMenu
MFXSynchQue< GUIEvent * > myEvents
List of got requests.
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 onUpdSaveMeanDatasAs(FXObject *, FXSelector, void *)
called when the update/FXCall save meanDatas as is executed
long onCmdOpenSumoConfig(FXObject *, FXSelector, void *)
called when the command/FXCall open SumoConfig is executed
long onCmdSaveAdditionalsAs(FXObject *, FXSelector, void *)
called when the command/FXCall save additionals as is executed
GNEUndoListDialog * getUndoListDialog()
get pointer to undoList dialog
FXMenuPane * myToolsOutputMenu
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
long onUpdSaveDataElementsAs(FXObject *, FXSelector, void *)
called when the update/FXCall save data elements as is executed
FXMenuPane * myFileMenuDemandElements
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
long onUpdSaveSumoConfig(FXObject *, FXSelector, void *)
called when the command/FXCall save SumoConfig is updated
~GNEApplicationWindow()
Destructor.
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 onCmdReloadAdditionals(FXObject *, FXSelector, void *)
called when the command/FXCall reload additionals is executed
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 onCmdSaveMeanDatasAs(FXObject *, FXSelector, void *)
called when the command/FXCall save meanDatas as 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
long onCmdOpenMeanDatas(FXObject *, FXSelector, void *)
called when the command/FXCall open meanDatas is executed
long onCmdPostprocessingNetgenerate(FXObject *sender, FXSelector sel, void *ptr)
postprocessing netgenerate
FXMenuPane * myToolsDistrictMenu
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
bool continueWithUnsavedDemandElementChanges()
warns about unsaved changes in demand elements and gives the user the option to abort
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
bool continueWithUnsavedDataElementChanges()
warns about unsaved changes in data elements and gives the user the option to abort
long onCmdCut(FXObject *, FXSelector, void *)
called when user press Ctrl+Z
long onCmdNewWindow(FXObject *, FXSelector, void *)
FXMenuPane * myFileMenuNeteditConfig
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
FXMenuPane * myToolsDRTMenu
long onCmdSaveJuPedSimElementsAs(FXObject *, FXSelector, void *)
called when the command/FXCall save JuPedSim elements as is executed
FXMenuPane * myWindowMenu
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 onUpdSaveAdditionals(FXObject *, FXSelector, void *)
called when the update/FXCall save additionals is executed
long onCmdSaveDemandElementsAs(FXObject *, FXSelector, void *)
called when the command/FXCall save demand elements as is executed
long 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
GNEApplicationWindowHelper::FileMenuCommands myFileMenuCommands
File Menu Commands.
FXMenuPane * myToolsDetectorMenu
void loadMeanDataElements()
load meanData elements
void loadOSM(const std::string &OSMFile)
starts to load a OSM File
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
FXMenuPane * myToolsTurnDefs
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
void handleEvent_NetworkLoaded(GUIEvent *e)
handle event of type Network loaded
long onCmdCopy(FXObject *, FXSelector, void *)
long onCmdSaveMeanDatas(FXObject *, FXSelector, void *)
called when the command/FXCall save meanDatas is executed
long onCmdReloadMeanDatas(FXObject *, FXSelector, void *)
called when the command/FXCall reload meanDatas is executed
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
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
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
FXMenuPane * myLocatorMenu
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
FXMenuPane * myFileMenuRecentNetworks
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
bool isUndoRedoAllowed() const
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 onUpdSaveMeanDatas(FXObject *, FXSelector, void *)
called when the update/FXCall save meanDatas is executed
long onCmdTutorial(FXObject *sender, FXSelector sel, void *ptr)
called if the user selects help->Tutorial
long onCmdRedo(FXObject *, FXSelector, void *)
FXMenuPane * myToolsNetMenu
long onCmdOpenNetgenerateOptionsDialog(FXObject *, FXSelector, void *)
called when user press "netgenerate options" button
bool continueWithUnsavedMeanDataElementChanges()
warns about unsaved changes in meanData elements and gives the user the option to abort
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 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 onUpdSmartReload(FXObject *, FXSelector, void *)
called when the update/FXCall smart reload is executed
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
GNEApplicationWindowHelper::ToolbarsGrip myToolbarsGrip
Toolbars Grip.
long onUpdToggleTimeFormat(FXObject *sender, FXSelector sel, void *ptr)
update toggle time format button
FXMenuPane * myFileMenuEdgeTypes
FXMenuPane * myFileMenuDataElements
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
void refreshAttributesCreator()
refresh attribute creator
GNEAttributesCreator * getContainerAttributes() const
get attributes creator
void refreshEdgeTypeSelector()
refresh edge type selector
EdgeTypeSelector * getEdgeTypeSelector() const
get edgeType selector
void addLaneType(GNELaneType *laneType)
add laneType
GNENet * net
the loaded net
const bool viewportFromRegistry
whether loading viewport from registry
const std::string file
the name of the loaded file
const std::string settingsFile
the name of the settings file to load
Dialog fix network elements.
virtual void updateFrameAfterUndoRedo()
function called after undo/redo in the current frame (can be reimplemented in frame children)
bool isErrorCreatingElement() const
get flag for check if a element wasn't created
bool isSelectingParent() const
check if we're selecting a new parent
void refreshNeteditAttributesEditor(bool forceRefresh)
refresh netedit attributes
void stopSelectParent()
stop select new parent
void clearTemplate()
clear template (used by shortcut)
void setTemplate()
set template (used by shortcut)
void copyTemplate()
copy template (used by shortcut)
void inspectSingleElement(GNEAttributeCarrier *AC)
Inspect a single element.
TemplateEditor * getTemplateEditor() const
get template editor
GNEInspectorFrame::NeteditAttributesEditor * getNeteditAttributesEditor() const
get Netedit Attributes editor
void refreshInspection()
refresh current inspection
void newNetwork()
begins the creation of an empty network
static void fillOptions(OptionsCont &neteditOptions)
clears and initializes the OptionsCont
void loadNetworkOrConfig()
begins the loading of an existent network or config
static void setDefaultOptions(OptionsCont &neteditOptions)
sets required options for proper functioning
const std::unordered_map< SumoXMLTag, std::unordered_map< const GUIGlObject *, GNEDemandElement * > > & getDemandElements() const
get demand elements
const std::unordered_map< SumoXMLTag, std::unordered_map< const GUIGlObject *, GNEAdditional * > > & getAdditionals() const
get additionals
const std::unordered_map< const GUIGlObject *, GNECrossing * > & getCrossings() const
get crossings
int getNumberOfMeanDatas() const
get number of meanDatas
const std::map< const std::string, GNEEdge * > & getEdges() const
map with the ID and pointer to edges of net
const std::map< const std::string, GNEDataSet * > & getDataSets() const
get demand elements
int getNumberOfDemandElements() const
get number of current demand elements saved in AttributeCarriers (default vTypes are NOT included)
int getNumberOfAdditionals() const
get number of additionals
const std::map< const std::string, GNEJunction * > & getJunctions() const
get junctions
const std::map< const std::string, GNEEdgeType * > & getEdgeTypes() const
map with the ID and pointer to edgeTypes of net
void dataElementsSaved()
mark demand elements as saved
void demandElementsSaved()
mark demand elements as saved
void SumoConfigSaved()
mark SumoConfig as saved
void additionalsSaved()
mark additionals as saved
void requireSaveNeteditConfig()
inform that netedit config has to be saved
void requireSaveSumoConfig()
inform that SumoConfig has to be saved
bool isSumoConfigSaved() const
check if SumoConfig is saved
void neteditConfigSaved()
mark netedit config as saved
void requireSaveMeanDatas()
inform that mean data elements has to be saved
void meanDatasSaved()
mark mean data elements as saved
bool isDemandElementsSaved() const
check if demand elements are saved
void requireSaveAdditionals()
inform that additionals has to be saved
bool isDataElementsSaved() const
check if data elements are saved
bool isNetworkSaved() const
check if network is saved
bool isMeanDatasSaved() const
check if mean data elements are saved
void requireSaveDataElements()
inform that data elements has to be saved
bool isNeteditConfigSaved() const
check if netedit config is saved
void networkSaved()
mark network as saved
bool isAdditionalsSaved() const
check if additionals are saved
void requireSaveDemandElements()
inform that demand elements has to be saved
void clearAdditionalElements(GNEUndoList *undoList)
clear additionals
void removeSolitaryJunctions(GNEUndoList *undoList)
removes junctions that have no edges
bool joinSelectedJunctions(GNEUndoList *undoList)
join selected junctions
void saveTLSPrograms(const std::string &filename)
save TLS Programs elements of the network
void saveJoined(const std::string &filename)
save log of joined junctions (and nothing else)
GNENetHelper::SavingStatus * getSavingStatus() const
get saving status
void saveEdgeTypes(const std::string &filename)
save edgeTypes elements of the network
void saveAdditionals()
save additional elements
void clearDemandElements(GNEUndoList *undoList)
clear demand elements
GNEPathManager * getDemandPathManager()
get demand path manager
void adjustPersonPlans(GNEUndoList *undoList)
adjust person plans
void computeNetwork(GNEApplicationWindow *window, bool force=false, bool volatileOptions=false)
trigger full netbuild computation param[in] window The window to inform about delay param[in] force W...
void cleanInvalidDemandElements(GNEUndoList *undoList)
clean invalid demand elements
void cleanUnusedRoutes(GNEUndoList *undoList)
clean unused routes
GNENetHelper::AttributeCarriers * getAttributeCarriers() const
get all attribute carriers used in this net
void saveDemandElements()
save demand element elements of the network
void clearMeanDataElements(GNEUndoList *undoList)
clear meanDatas
void disableUpdateData()
disable update data elements after inserting or removing an element in net
void saveDataElements()
save data set elements of the network
void saveJuPedSimElements(const std::string &file)
save JuPedSim elements
void saveNetwork()
save the network
bool isNetRecomputed() const
check if net require recomputing
bool cleanInvalidCrossings(GNEUndoList *undoList)
clear invalid crossings
void joinRoutes(GNEUndoList *undoList)
join routes
void savePlain(const std::string &prefix)
save plain xml representation of the network (and nothing else)
GNEViewNet * getViewNet() const
get view net
void saveMeanDatas()
save meanData elements of the network
void computeDemandElements(GNEApplicationWindow *window)
compute demand elements param[in] window The window to inform about delay
static std::pair< int, bool > Run(GNEApplicationWindow *GNEApp, GUIIcon icon, OptionsCont &optionsContainer, const OptionsCont &originalOptionsContainer, const char *titleName)
Constructor for run dialogs.
static std::pair< int, bool > Options(GNEApplicationWindow *GNEApp, GUIIcon icon, OptionsCont &optionsContainer, const OptionsCont &originalOptionsContainer, const char *titleName)
Constructor for options dialogs.
Dialog for edit rerouters.
Result getResult() const
get result
void updatePathCalculator()
update DijkstraRouter (needed a good calculation of dijkstra path after modifying network)
bool isPathCalculatorUpdated() const
check if pathCalculator is updated
PathCalculator * getPathCalculator()
obtain instance of PathCalculator
GNEAttributesCreator * getPersonAttributes() const
get attributes creator
void loadFromFile(const std::string &file) const
load from file
void clearCurrentSelection() const
clear current selection with possibility of undo/redo
GNESelectorFrame::SelectionOperation * getSelectionOperationModul() const
get selection operation modul
bool isChangesPending() const
return true if there is changes to save
const std::vector< CurrentTAZ::TAZEdgeColor > & getEdgeAndTAZChildrenSelected() const
get map with edge and TAZChildren
void clearSelectedEdges()
clear current TAZ children
TAZSelectionStatistics * getTAZSelectionStatisticsModule() const
get TAZ Selection Statistics modul
TAZSaveChanges * getTAZSaveChangesModule() const
get TAZ Save Changes modul
bool parseTLSPrograms(const std::string &file)
parse TLS Programs from a file
Dialog for edit rerouters.
bool shown() const
check if dialog is shown
void setFocus()
Move the focus to this window.
void end()
End undo command sub-group. If the sub-group is still empty, it will be deleted; otherwise,...
void undo()
undo the last command group
long onUpdUndo(FXObject *, FXSelector, void *)
event after Undo
void begin(GUIIcon icon, const std::string &description)
Begin undo command sub-group with current supermode. This begins a new group of commands that are tre...
void abortAllChangeGroups()
reverts and discards ALL active chained change groups
Supermode getRedoSupermode() const
get redo supermode
long onUpdRedo(FXObject *, FXSelector, void *)
event after Redo
Supermode getUndoSupermode() const
get undo supermode
void redo()
redo the last command group
void add(GNEChange *command, bool doit=false, bool merge=true)
Add new command, executing it if desired. The new command will be merged with the previous command if...
GNEAttributesCreator * getVehicleAttributes() const
get attributes creator
GNEAttributeCarrier * getFirstAC() const
void updateFlags()
update flags
long onCmdToggleShowDemandElementsNetwork(FXObject *, FXSelector, void *)
toggle show demand elements (network)
const GNEViewNetHelper::DataViewOptions & getDataViewOptions() const
get data view options
GNENet * getNet() const
get the net object
const GNEAttributeCarrier * getFrontAttributeCarrier() const
get front attributeCarrier
void hotkeyBackSpace()
handle backspace keypress
const GNEViewNetHelper::EditModes & getEditModes() const
get edit modes
void setFrontAttributeCarrier(GNEAttributeCarrier *AC)
set front attributeCarrier
long onCmdToggleShowDemandElementsData(FXObject *, FXSelector, void *)
toggle show demand elements (data)
void abortOperation(bool clearSelection=true)
abort current edition operation
GNEViewNetHelper::InspectedElements & getInspectedElements()
get inspected elements
long onCmdToggleWarnAboutMerge(FXObject *, FXSelector, void *)
toggle warn for merge
long onCmdToggleDrawSpreadVehicles(FXObject *, FXSelector, void *)
toggle draw vehicles in begin position or spread in lane
long onCmdToggleShowConnections(FXObject *, FXSelector, void *)
toggle show connections
long onCmdToggleShowTAZElements(FXObject *, FXSelector, void *)
toggle show TAZ elements
long onCmdToggleMoveElevation(FXObject *, FXSelector, void *)
toggle move elevation
long onCmdToggleShowAllPersonPlans(FXObject *, FXSelector, void *)
toggle show all person plans in super mode demand
long onCmdToggleTAZRelOnlyTo(FXObject *, FXSelector, void *)
toggle TAZRez only to
const GNEViewNetHelper::NetworkViewOptions & getNetworkViewOptions() const
get network view options
void hotkeyFocusFrame()
handle focus frame keypress
long onCmdToggleChainEdges(FXObject *, FXSelector, void *)
toggle chain edges
long onCmdToggleLockContainer(FXObject *, FXSelector, void *)
toggle lock container in super mode demand
long onCmdToggleShowGrid(FXObject *, FXSelector, void *)
toggle show grid
long onCmdToggleHideNonInspecteDemandElements(FXObject *, FXSelector, void *)
toggle hide non inspected demand elements
GNEViewParent * getViewParent() const
get the net object
long onCmdToggleDrawJunctionShape(FXObject *, FXSelector, void *)
toggle draw junction shape
long onCmdToggleShowShapes(FXObject *, FXSelector, void *)
toggle show shapes in super mode data
GNEViewNetHelper::SaveElements & getSaveElements()
get variable used to save elements
GNEUndoList * getUndoList() const
get the undoList object
void saveVisualizationSettings() const
long onCmdSetSupermode(FXObject *, FXSelector sel, void *)
long onCmdToggleExtendSelection(FXObject *, FXSelector, void *)
toggle extend selection
bool aksChangeSupermode(const std::string &operation, Supermode expectedSupermode)
ask about change supermode
long onCmdSetMode(FXObject *, FXSelector sel, void *)
called when user press a mode button (Network or demand)
void hotkeyEnter()
handle enter keypress
long onCmdToggleShowOverlappedRoutes(FXObject *, FXSelector, void *)
toggle hide non inspected demand elements
long onCmdToggleAutoOppositeEdge(FXObject *, FXSelector, void *)
toggle autoOpposite edge
GNEViewNetHelper::LockManager & getLockManager()
get lock manager
void updateControls()
update control contents after undo/redo or recompute
void hotkeyDel()
handle del keypress
long onCmdToggleChangeAllPhases(FXObject *, FXSelector, void *)
toggle change all phases
long onCmdToggleTAZRelDrawing(FXObject *, FXSelector, void *)
toggle TAZRel drawing
long onCmdToggleShowJunctionBubbles(FXObject *, FXSelector, void *)
toggle show junction bubbles
long onCmdToggleShowAdditionalSubElements(FXObject *, FXSelector, void *)
toggle show additional sub-elements
long onCmdToggleShowAllContainerPlans(FXObject *, FXSelector, void *)
toggle show all container plans in super mode demand
long onCmdToggleTAZRelOnlyFrom(FXObject *, FXSelector, void *)
toggle TAZRez only from
long onCmdToggleShowAdditionals(FXObject *, FXSelector, void *)
toggle show additionals in super mode data
long onCmdToggleLockPerson(FXObject *, FXSelector, void *)
toggle lock person in super mode demand
GNEViewNetHelper::TimeFormat & getTimeFormat()
get variable used to switch between time formats
long onCmdToggleSelectEdges(FXObject *, FXSelector, void *)
toggle select edges
long onCmdToggleShowTrips(FXObject *, FXSelector, void *)
toggle show all trips in super mode demand
long onCmdToggleHideShapes(FXObject *, FXSelector, void *)
toggle hide shapes in super mode demand
const GNEViewNetHelper::DemandViewOptions & getDemandViewOptions() const
get demand view options
long onCmdToggleHideConnections(FXObject *, FXSelector, void *)
toggle hide connections
void forceSupemodeNetwork()
force supermode network(used after load/create new network)
A single child window which contains a view of the simulation area.
void updateUndoRedoButtons()
update toolbar undo/redo buttons (called when user press Ctrl+Z/Y)
long onKeyPress(FXObject *o, FXSelector sel, void *data)
Called when user press a key.
GNESelectorFrame * getSelectorFrame() const
get frame for select elements
GNEVehicleFrame * getVehicleFrame() const
get frame for DEMAND_VEHICLE
GNETAZFrame * getTAZFrame() const
get frame for NETWORK_TAZ
GNETLSEditorFrame * getTLSEditorFrame() const
get frame for NETWORK_TLS
GNEApplicationWindow * getGNEAppWindows() const
get GNE Application Windows
GNEContainerFrame * getContainerFrame() const
get frame for DEMAND_CONTAINER
GNEPersonFrame * getPersonFrame() const
get frame for DEMAND_PERSON
GNEInspectorFrame * getInspectorFrame() const
get frame for inspect elements
GNECreateEdgeFrame * getCreateEdgeFrame() const
get frame for NETWORK_CREATEEDGE
GNEFrame * getCurrentShownFrame() const
get current frame (note: it can be null)
long onCmdLocate(FXObject *, FXSelector, void *)
locator-callback
long onKeyRelease(FXObject *o, FXSelector sel, void *data)
Called when user releases a key.
void saveViewport(const double x, const double y, const double z, const double rot)
Makes the given viewport the default.
static void close()
close GUICursorSubSys
static void initCursors(FXApp *a)
Initiate GUICursorSubSys.
static FXMenuTitle * buildFXMenuTitle(FXComposite *p, const std::string &text, FXIcon *icon, FXMenuPane *menuPane)
build menu title
static FXMenuCommand * buildFXMenuCommandShortcut(FXComposite *p, const std::string &text, const std::string &shortcut, const std::string &info, FXIcon *icon, FXObject *tgt, FXSelector sel)
build menu command
The application's "Feedback" dialog.
void create()
Creates the widget.
Editor for the list of chosen objects.
const std::string & getMsg() const
Returns the message.
GUIEventType getOwnType() const
returns the event type
GUISUMOAbstractView * getView() const
return GUISUMOAbstractView
static FXIcon * getIcon(const GUIIcon which)
returns a icon previously defined in the enum GUIIcon
static void initIcons(FXApp *a)
Initiate GUIIconSubSys.
static void close()
close GUIIconSubSys
void setWindowSizeAndPos()
perform initial window positioning and sizing according to user options / previous call
std::vector< FXMainWindow * > myTrackerWindows
list of tracker windows
FXMenuPane * myLanguageMenu
Language menu common to all applications.
FXLabel * myCartesianCoordinate
Labels for the current cartesian, geo-coordinate and test coordinates.
std::map< std::string, std::string > myOnlineMaps
online mapping services for the context menu
MFXStaticToolTip * myStaticTooltipMenu
static toolTip used in menus
FXMDIClient * myMDIClient
The multi view panel.
void buildLanguageMenu(FXMenuBar *menuBar)
long onCmdChangeLanguage(FXObject *, FXSelector, void *)
FXHorizontalFrame * myGeoFrame
FXHorizontalFrame * myTestFrame
FXHorizontalFrame * myCartesianFrame
FXLabel * myTestCoordinate
FXMutex myTrackerLock
A lock to make the removal and addition of trackers secure.
void storeWindowSizeAndPos()
record window position and size in registry
FXLabel * myGeoCoordinate
FXStatusBar * myStatusbar
The status bar.
FXGLVisual * myGLVisual
The gl-visual used.
std::vector< GUIGlChildWindow * > myGLWindows
list of GLWindows
long onUpdChangeLanguage(FXObject *, FXSelector, void *)
A logging window for the gui.
void addSeparator()
Adds a a separator to this log window.
void unregisterMsgHandlers()
unregister message handlers
void clear()
Clears the window.
void appendMsg(GUIEventType eType, const std::string &msg)
Adds new text to the window.
void registerMsgHandlers()
register message handlers
virtual double getXPos() const =0
Returns the x-offset of the field to show stored in this changer.
virtual double getYPos() const =0
Returns the y-offset of the field to show stored in this changer.
virtual double getZPos() const =0
Returns the camera height corresponding to the current zoom factor.
void addDecals(const std::vector< Decal > &decals)
add decals
void showViewschemeEditor()
show viewsscheme editor
virtual void showViewportEditor()
show viewport editor
const GUIVisualizationSettings & getVisualisationSettings() const
get visualization settings (read only)
GUIPerspectiveChanger & getChanger() const
get changer
std::vector< Decal > & getDecals()
The list of decals to show.
virtual void setViewportFromToRot(const Position &lookFrom, const Position &lookAt, double rotation)
applies the given viewport settings
void destroyPopup()
destroys the popup
static FXuint question(FXApp *app, const char *caption, const char *message,...)
Show modal question message, in free floating window.
An XML-handler for visualisation schemes.
const std::vector< std::string > & addSettings(GUISUMOAbstractView *view=0) const
Adds the parsed settings to the global list of settings.
void applyViewport(GUISUMOAbstractView *view) const
Sets the viewport which has been parsed.
void setSnapshots(GUISUMOAbstractView *view) const
Makes a snapshot if it has been parsed.
const std::vector< GUISUMOAbstractView::Decal > & getDecals() const
Returns the parsed decals.
static void buildAccelerators(FXAccelTable *accelTable, FXObject *target, const bool sumogui)
build accelerators
static void close()
close GUITextureSubSys
static void resetTextures()
Reset textures.
static void initTextures(FXApp *a)
Initiate GUITextureSubSys for textures.
static std::string clipped
bool drawJunctionShape
whether the shape of the junction should be drawn
bool showGrid
Information whether a grid shall be shown.
static void resetLoaded()
resets loaded location elements
static FXint fxexecute(FXString link)
static FXString getTitleText(const FXString &appname, FXString filename="")
Returns the title text in dependence to an optional file name.
static bool checkOptions(OptionsCont &oc)
Checks set options from the OptionsCont-singleton for being valid.
A storage for available edgeTypes of edges.
int size() const
Returns the number of known edgeTypes.
static bool checkOptions(OptionsCont &oc)
Checks set options for being valid.
static bool load(SUMOSAXHandler &handler, const std::vector< std::string > &files, const std::string &type, const bool stringParse=false)
Importer for edge type information stored in XML.
static bool checkOptions(OptionsCont &oc)
Checks set options for being valid.
A storage for options typed value containers)
void resetDefault()
Resets all options to default.
std::string getString(const std::string &name) const
Returns the string-value of the named option (only for Option_String)
bool set(const std::string &name, const std::string &value, const bool append=false)
Sets the given value for the named option.
void writeConfiguration(std::ostream &os, const bool filled, const bool complete, const bool addComments, const std::string &relativeTo="", const bool forceRelative=false, const bool inComment=false) const
Writes the configuration.
std::string getValueString(const std::string &name) const
Returns the string-value of the named option (all options)
void resetWritable()
Resets all options to be writeable.
static OptionsCont & getOptions()
Retrieves the options.
A point in 2D or 3D with translation and scaling methods.
void set(double x, double y)
set positions x and y
double x() const
Returns the x-position.
double y() const
Returns the y-position.
static std::string replace(std::string str, const std::string &what, const std::string &by)
Replaces all occurrences of the second string by the third string within the first string.
static std::string transcodeToLocal(const std::string &utf8String)
convert a string from UTF-8 to the local codepage
static unsigned long runHiddenCommand(const std::string &cmd)
run a shell command without popping up any windows (particuarly on win32)
static bool checkOptions(OptionsCont &oc)
checks shared options and sets StdDefs
static void parseTemplate(OptionsCont &options, const std::string &templateString)
run parser
static void setValidation(const std::string &validationScheme, const std::string &netValidationScheme, const std::string &routeValidationScheme)
Enables or disables validation.
void hideDataViewOptionsMenuChecks()
hide all options menu checks
void buildDataViewOptionsMenuChecks(FXMenuPane *editMenu)
build menu checks
void hideDemandViewOptionsMenuChecks()
hide all options menu checks
void buildDemandViewOptionsMenuChecks(FXMenuPane *editMenu)
build menu checks
void hideNetworkViewOptionsMenuChecks()
hide all options menu checks
void buildNetworkViewOptionsMenuChecks(FXMenuPane *editMenu)
build menu checks
struct for edit menu commands
DemandViewOptions demandViewOptions
demand view options
NetworkViewOptions networkViewOptions
network view options
void buildUndoRedoMenuCommands(FXMenuPane *editMenu)
build undo-redo menu commands
DataViewOptions dataViewOptions
data view options
void buildViewMenuCommands(FXMenuPane *editMenu)
build view menu commands
FXMenuCheck * loadAdditionalsInSUMOGUI
menu check for load additionals in SUMO GUI
FXMenuCommand * undoLastChange
FXMenuCommand for undo last change.
FXMenuCheck * loadDemandInSUMOGUI
menu check for load demand in SUMO GUI
MFXMenuCheckIcon * menuCheckAllowUndoRedo
checkBox for allow undo-redo
FXMenuCommand * redoLastChange
FXMenuCommand for redo last change.
void buildOpenSUMOMenuCommands(FXMenuPane *editMenu)
build open sumo menu commands
void buildFrontElementMenuCommand(FXMenuPane *editMenu)
build front element commands
struct for File menu commands
MFXMenuCheckIcon * menuCheckAllowUndoRedoLoading
checkBox for allow undo-redo loading
void buildFileMenuCommands(FXMenuPane *fileMenu, FXMenuPane *fileMenuNEEDITConfig, FXMenuPane *fileMenuSumoConfig, FXMenuPane *fileMenuTLS, FXMenuPane *fileMenuEdgeTypes, FXMenuPane *fileMenuAdditionals, FXMenuPane *fileMenuDemandElements, FXMenuPane *fileMenuDataElements, FXMenuPane *fileMenuMeanDataElements)
build menu commands
void enableMenuCascades()
enable menu cascades
void disableMenuCascades()
disable menu cascades
void buildHelpMenuCommands(FXMenuPane *helpMenu)
build menu commands
void buildLocateMenuCommands(FXMenuPane *locateMenu)
build menu commands
struct for processing menu commands
void buildLockMenuCommands(FXMenuPane *editMenu)
build menu commands
void hideNetworkLockMenuCommands()
show network processing menu commands
void removeHotkeys()
remove hotkeys
void hideDemandLockMenuCommands()
show demand processing menu commands
void hideDataLockMenuCommands()
show data processing menu commands
void showDataLockMenuCommands()
show data processing menu commands
void showNetworkLockMenuCommands()
show network processing menu commands
void showDemandLockMenuCommands()
show demand processing menu commands
void unlockAll()
unlock all
void hideDataMenuCommands()
hide all menu commands
void showDataMenuCommands()
show all menu commands
void showDemandMenuCommands()
show all menu commands
void hideDemandMenuCommands()
hide all menu commands
void hideNetworkMenuCommands()
hide all menu commands
void showNetworkMenuCommands()
show all menu commands
struct for modes menu commands
void buildModesMenuCommands(FXMenuPane *modesMenu)
build modes menu commands
DemandMenuCommands demandMenuCommands
Demand Menu Commands.
void setDefaultView(Supermode supermode)
set default view
void setJuPedSimView(Supermode supermode)
set JuPedSim view
DataMenuCommands dataMenuCommands
Data Menu Commands.
NetworkMenuCommands networkMenuCommands
Network Menu Commands.
struct for processing menu commands
void showDataProcessingMenuCommands()
show data processing menu commands
MFXMenuCheckIcon * menuCheckRecomputeDataMode
checkBox for recomputing when changing data mode
void showDemandProcessingMenuCommands()
show demand processing menu commands
void showSeparator()
show separator
void hideSeparator()
hide separator
void hideDemandProcessingMenuCommands()
show demand processing menu commands
void hideDataProcessingMenuCommands()
show data processing menu commands
void buildProcessingMenuCommands(FXMenuPane *processingMenu)
build menu commands
void showNetworkProcessingMenuCommands()
show network processing menu commands
void hideNetworkProcessingMenuCommands()
show network processing menu commands
void buildSupermodeCommands(FXMenuPane *editMenu)
build menu commands
void setJuPedSimView()
set JuPedSim view
void setDefaultView()
set default view
void buildWindowsMenuCommands(FXMenuPane *windowsMenu, FXStatusBar *statusbar, GUIMessageWindow *messageWindow)
build menu commands
static bool toggleEditOptionsData(GNEViewNet *viewNet, const MFXCheckableButton *menuCheck, const int numericalKeyPressed, FXObject *obj, FXSelector sel)
toggle edit options Data menu commands (called in GNEApplicationWindow::onCmdToggleEditOptions)
static std::string openRouteFileDialog(FXWindow *window, bool save, bool multi=false)
open route file dialog
static std::string openMeanDataDialog(FXWindow *window, bool save, bool multi=false)
open meandata filename dialog
static std::string openAdditionalFileDialog(FXWindow *window, bool save, bool multi=false)
open additional dialog
static std::string openOSMFileDialog(FXWindow *window)
open OSM file dialog
static bool toggleEditOptionsDemand(GNEViewNet *viewNet, const MFXCheckableButton *menuCheck, const int numericalKeyPressed, FXObject *obj, FXSelector sel)
toggle edit options Demand menu commands (called in GNEApplicationWindow::onCmdToggleEditOptions)
static std::string saveJoinedJunctionsFileDialog(FXWindow *window)
open joined junctions file dialog
static bool toggleEditOptionsNetwork(GNEViewNet *viewNet, const MFXCheckableButton *menuCheck, const int numericalKeyPressed, FXObject *obj, FXSelector sel)
toggle edit options Network menu commands (called in GNEApplicationWindow::onCmdToggleEditOptions)
static std::string openTLSFileDialog(FXWindow *window, bool save)
open TLS file dialog
static std::string openDataFileDialog(FXWindow *window, bool save, bool multi=false)
open data file dialog
static std::string openNeteditConfigFileDialog(FXWindow *window, bool save)
open netedit config file dialog
static std::string savePlainXMLFileDialog(FXWindow *window)
open plain xml file dialog
static std::string openSumoConfigFileDialog(FXWindow *window, bool save, bool multi=false)
open SUMO config file dialog
static std::string openEdgeTypeFileDialog(FXWindow *window, bool save)
open edgeType file dialog
static std::string openNetworkFileDialog(FXWindow *window, bool save, bool multi=false)
open netconvert file dialog
static std::string openNetconvertFileDialog(FXWindow *window)
open netconvert file dialog
MFXCheckableButton * menuCheckToggleTAZDrawFill
menu check to toggle TAZ draw fill
MFXCheckableButton * menuCheckShowAdditionals
menu check to show Additionals
MFXCheckableButton * menuCheckShowShapes
menu check to show Shapes
MFXCheckableButton * menuCheckToggleTAZRelOnlyFrom
menu check to toggle TAZRel only from
MFXCheckableButton * menuCheckToggleDrawJunctionShape
checkable button to show junction shapes
void getVisibleDataMenuCommands(std::vector< MFXCheckableButton * > &commands) const
get visible demand menu commands
MFXCheckableButton * menuCheckToggleTAZRelDrawing
menu check to toggle TAZ Rel drawing
MFXCheckableButton * menuCheckShowDemandElements
menu check to show Demand Elements
MFXCheckableButton * menuCheckToggleTAZRelOnlyTo
menu check to toggle TAZRel only to
MFXCheckableButton * menuCheckShowAllTrips
show all trips
MFXCheckableButton * menuCheckToggleGrid
menu check to show grid button
MFXCheckableButton * menuCheckToggleDrawJunctionShape
checkable button to show junction shapes
MFXCheckableButton * menuCheckDrawSpreadVehicles
menu check to draw vehicles in begin position or spread in lane
MFXCheckableButton * menuCheckShowOverlappedRoutes
show overlapped routes
MFXCheckableButton * menuCheckShowAllPersonPlans
show all person plans
MFXCheckableButton * menuCheckShowAllContainerPlans
show all container plans
MFXCheckableButton * menuCheckHideNonInspectedDemandElements
Hide non inspected demand elements.
MFXCheckableButton * menuCheckHideShapes
Hide shapes (Polygons and POIs)
MFXCheckableButton * menuCheckLockPerson
Lock Person.
void getVisibleDemandMenuCommands(std::vector< MFXCheckableButton * > &commands) const
get visible demand menu commands
MFXCheckableButton * menuCheckLockContainer
Lock Container.
DataEditMode dataEditMode
the current Data edit mode
bool isDefaultView() const
check if default view is enabled
DemandEditMode demandEditMode
the current Demand edit mode
Supermode currentSupermode
the current supermode
NetworkEditMode networkEditMode
the current Network edit mode
bool isCurrentSupermodeDemand() const
@check if current supermode is Demand
bool isCurrentSupermodeData() const
@check if current supermode is Data
bool isCurrentSupermodeNetwork() const
@check if current supermode is Network
bool isJuPedSimView() const
check if default view is enabled
MFXCheckableButton * menuCheckSelectEdges
checkable button to select only edges
MFXCheckableButton * menuCheckChainEdges
checkable button to the endpoint for a created edge should be set as the new source
MFXCheckableButton * menuCheckShowDemandElements
checkable button to show Demand Elements
MFXCheckableButton * menuCheckMoveElevation
checkable button to apply movement to elevation
MFXCheckableButton * menuCheckShowTAZElements
checkable button to show TAZ elements
void getVisibleNetworkMenuCommands(std::vector< MFXCheckableButton * > &commands) const
get visible network menu commands
MFXCheckableButton * menuCheckAutoOppositeEdge
check checkable to create auto create opposite edge
MFXCheckableButton * menuCheckDrawSpreadVehicles
checkable button to draw vehicles in begin position or spread in lane
MFXCheckableButton * menuCheckShowConnections
checkable button to show connections
MFXCheckableButton * menuCheckHideConnections
checkable button to hide connections in connect mode
MFXCheckableButton * menuCheckToggleDrawJunctionShape
checkable button to show junction shapes
MFXCheckableButton * menuCheckToggleGrid
checkable button to show grid button
MFXCheckableButton * menuCheckShowJunctionBubble
checkable button to show connection as bubble in "Move" mode.
MFXCheckableButton * menuCheckWarnAboutMerge
checkable button to we should warn about merging junctions
MFXCheckableButton * menuCheckShowAdditionalSubElements
checkable button to show additional sub-elements
MFXCheckableButton * menuCheckChangeAllPhases
checkable button to set change all phases
MFXCheckableButton * menuCheckExtendSelection
checkable button to extend to edge nodes
void setSaveIndividualFiles(bool value)
enable or disable save individual files