Skip to content

Commit

Permalink
Added onCmdSimplifyNetwork(). Refs #10084
Browse files Browse the repository at this point in the history
  • Loading branch information
palvarezlopez committed Feb 28, 2022
1 parent 5f4b49c commit b93f9b1
Show file tree
Hide file tree
Showing 5 changed files with 58 additions and 2 deletions.
36 changes: 34 additions & 2 deletions src/netedit/GNEApplicationWindow.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -256,6 +256,9 @@ FXDEFMAP(GNEApplicationWindow) GNEApplicationWindowMap[] = {
FXMAPFUNC(SEL_UPDATE, MID_GNE_TOOLBAREDIT_LOADADDITIONALS, GNEApplicationWindow::onUpdNeedsNetwork),
FXMAPFUNC(SEL_COMMAND, MID_GNE_TOOLBAREDIT_LOADDEMAND, GNEApplicationWindow::onCmdLoadDemandInSUMOGUI),
FXMAPFUNC(SEL_UPDATE, MID_GNE_TOOLBAREDIT_LOADDEMAND, GNEApplicationWindow::onUpdNeedsNetwork),
FXMAPFUNC(SEL_COMMAND, MID_SIMPLIFY_NETWORK, GNEApplicationWindow::onCmdSimplifyNetwork),
FXMAPFUNC(SEL_UPDATE, MID_SIMPLIFY_NETWORK, GNEApplicationWindow::onUpdNeedsNetworkSelection),

FXMAPFUNC(SEL_COMMAND, MID_HOTKEY_CTRL_T_OPENSUMONETEDIT, GNEApplicationWindow::onCmdOpenSUMOGUI),
FXMAPFUNC(SEL_UPDATE, MID_HOTKEY_CTRL_T_OPENSUMONETEDIT, GNEApplicationWindow::onUpdNeedsNetwork),
/* Prepared for #6042
Expand Down Expand Up @@ -1220,6 +1223,10 @@ GNEApplicationWindow::fillMenuBar() {
myEditMenuCommands.buildFrontElementMenuCommand(myEditMenu);
// build separator
new FXMenuSeparator(myEditMenu);
// build network reduction menu commands
myEditMenuCommands.buildNetworkReductionMenuCommand(myEditMenu);
// build separator
new FXMenuSeparator(myEditMenu);
// build open in sumo menu commands
myEditMenuCommands.buildOpenSUMOMenuCommands(myEditMenu);
// build lock menu
Expand Down Expand Up @@ -2099,7 +2106,7 @@ GNEApplicationWindow::onCmdToggleGrid(FXObject* obj, FXSelector sel, void* ptr)


long
GNEApplicationWindow::onCmdSetFrontElement(FXObject* /*obj*/, FXSelector /*sel*/, void* /*ptr*/) {
GNEApplicationWindow::onCmdSetFrontElement(FXObject*, FXSelector, void*) {
if (myViewNet) {
if (myViewNet->getViewParent()->getInspectorFrame()->shown()) {
// get inspected AC
Expand All @@ -2119,6 +2126,14 @@ GNEApplicationWindow::onCmdSetFrontElement(FXObject* /*obj*/, FXSelector /*sel*/
}


long
GNEApplicationWindow::onCmdSimplifyNetwork(FXObject*, FXSelector, void*) {
if (myViewNet) {

}
return 1;
}

long
GNEApplicationWindow::onCmdToggleEditOptions(FXObject* obj, FXSelector sel, void* /* ptr */) {
// first check that we have a ViewNet
Expand Down Expand Up @@ -2500,9 +2515,26 @@ GNEApplicationWindow::onUpdNeedsFrontElement(FXObject* sender, FXSelector, void*
}


long
GNEApplicationWindow::onUpdNeedsNetworkSelection(FXObject* sender, FXSelector, void*) {
// check if net, viewnet and front attribute exist
if (myNet && myViewNet && myViewNet->getEditModes().isCurrentSupermodeNetwork() &&
(myViewNet->getEditModes().networkEditMode == NetworkEditMode::NETWORK_SELECT)) {
sender->handle(this, FXSEL(SEL_COMMAND, ID_ENABLE), nullptr);
} else {
sender->handle(this, FXSEL(SEL_COMMAND, ID_DISABLE), nullptr);
}
return 1;
}


long
GNEApplicationWindow::onUpdReload(FXObject* sender, FXSelector, void*) {
sender->handle(this, ((myNet == nullptr) || !OptionsCont::getOptions().isSet("sumo-net-file")) ? FXSEL(SEL_COMMAND, ID_DISABLE) : FXSEL(SEL_COMMAND, ID_ENABLE), nullptr);
if ((myNet == nullptr) || !OptionsCont::getOptions().isSet("sumo-net-file")) {
sender->handle(this, FXSEL(SEL_COMMAND, ID_DISABLE), nullptr);
} else {
sender->handle(this, FXSEL(SEL_COMMAND, ID_ENABLE), nullptr);
}
return 1;
}

Expand Down
6 changes: 6 additions & 0 deletions src/netedit/GNEApplicationWindow.h
Original file line number Diff line number Diff line change
Expand Up @@ -215,6 +215,9 @@ class GNEApplicationWindow : public GUIMainWindow, public MFXInterThreadEventCli
/// @brief called when the update/FXCall needs front element is executed
long onUpdNeedsFrontElement(FXObject*, FXSelector, void*);

/// @brief called when the update/FXCall needs network selection is executed
long onUpdNeedsNetworkSelection(FXObject*, FXSelector, void*);

/// @brief called when the update/FXCall reload is executed
long onUpdReload(FXObject*, FXSelector, void*);

Expand Down Expand Up @@ -352,6 +355,9 @@ class GNEApplicationWindow : public GUIMainWindow, public MFXInterThreadEventCli
/// @brief called if the user call set front element
long onCmdSetFrontElement(FXObject*, FXSelector, void*);

/// @brief called if the user call simplify network
long onCmdSimplifyNetwork(FXObject*, FXSelector, void*);

/// @brief called if the user press key combination Alt + <0-9>
long onCmdToggleEditOptions(FXObject*, FXSelector, void*);

Expand Down
10 changes: 10 additions & 0 deletions src/netedit/GNEApplicationWindowHelper.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -914,6 +914,7 @@ GNEApplicationWindowHelper::EditMenuCommands::EditMenuCommands(GNEApplicationWin
editViewScheme(nullptr),
editViewPort(nullptr),
clearFrontElement(nullptr),
networkReduction(nullptr),
loadAdditionalsInSUMOGUI(nullptr),
loadDemandInSUMOGUI(nullptr),
openInSUMOGUI(nullptr),
Expand Down Expand Up @@ -957,6 +958,15 @@ GNEApplicationWindowHelper::EditMenuCommands::buildFrontElementMenuCommand(FXMen
}


void
GNEApplicationWindowHelper::EditMenuCommands::buildNetworkReductionMenuCommand(FXMenuPane* editMenu) {
// add clear front element
networkReduction = GUIDesigns::buildFXMenuCommand(editMenu,
"Reduce network to selection", GUIIconSubSys::getIcon(GUIIcon::SIMPLIFYNETWORK),
myGNEApp, MID_SIMPLIFY_NETWORK);
}


void
GNEApplicationWindowHelper::EditMenuCommands::buildOpenSUMOMenuCommands(FXMenuPane* editMenu) {
// add open in sumo options
Expand Down
6 changes: 6 additions & 0 deletions src/netedit/GNEApplicationWindowHelper.h
Original file line number Diff line number Diff line change
Expand Up @@ -582,6 +582,9 @@ struct GNEApplicationWindowHelper {
/// @brief build front element commands
void buildFrontElementMenuCommand(FXMenuPane* editMenu);

/// @brief build network reduction commands
void buildNetworkReductionMenuCommand(FXMenuPane* editMenu);

/// @brief build open sumo menu commands
void buildOpenSUMOMenuCommands(FXMenuPane* editMenu);

Expand Down Expand Up @@ -612,6 +615,9 @@ struct GNEApplicationWindowHelper {
/// @brief FXMenuCommand for clear Front element
FXMenuCommand* clearFrontElement;

/// @brief FXMenuCommand for network reduction
FXMenuCommand* networkReduction;

/// @brief menu check for load additionals in SUMO GUI
FXMenuCheck* loadAdditionalsInSUMOGUI;

Expand Down
2 changes: 2 additions & 0 deletions src/utils/gui/windows/GUIAppEnum.h
Original file line number Diff line number Diff line change
Expand Up @@ -314,6 +314,8 @@ enum {
MID_EDITCHOSEN,
/// @brief Open in netedit
MID_NETEDIT,
/// @brief simplify network reduction
MID_SIMPLIFY_NETWORK,

/// @}

Expand Down

0 comments on commit b93f9b1

Please sign in to comment.