SUMO - Simulation of Urban MObility
GNEDialog_FixAdditionalPositions.h
Go to the documentation of this file.
1 /****************************************************************************/
2 // Eclipse SUMO, Simulation of Urban MObility; see https://eclipse.org/sumo
3 // Copyright (C) 2001-2018 German Aerospace Center (DLR) and others.
4 // This program and the accompanying materials
5 // are made available under the terms of the Eclipse Public License v2.0
6 // which accompanies this distribution, and is available at
7 // http://www.eclipse.org/legal/epl-v20.html
8 // SPDX-License-Identifier: EPL-2.0
9 /****************************************************************************/
15 // Dialog used to fix invalid stopping places
16 /****************************************************************************/
17 #ifndef GNEDialog_FixAdditionalPositions_h
18 #define GNEDialog_FixAdditionalPositions_h
19 
20 // ===========================================================================
21 // included modules
22 // ===========================================================================
23 
24 #include <config.h>
25 
26 #include <fx.h>
27 
28 // ===========================================================================
29 // class declarations
30 // ===========================================================================
31 class GNEStoppingPlace;
32 class GNEDetector;
33 class GNEViewNet;
34 
35 // ===========================================================================
36 // class definitions
37 // ===========================================================================
38 
43 class GNEDialog_FixAdditionalPositions : public FXDialogBox {
46 
47 public:
49  GNEDialog_FixAdditionalPositions(GNEViewNet* viewNet, const std::vector<GNEAdditional*>& invalidSingleLaneAdditionals, const std::vector<GNEAdditional*>& invalidMultiLaneAdditionals);
50 
53 
57  long onCmdSelectOption(FXObject* obj, FXSelector, void*);
58 
60  long onCmdAccept(FXObject*, FXSelector, void*);
61 
63  long onCmdCancel(FXObject*, FXSelector, void*);
65 
66 protected:
68  struct PositionOptions {
70  void buildPositionOptions(GNEDialog_FixAdditionalPositions *fixAdditionalPositions, FXVerticalFrame* mainFrame);
71 
73  void selectOption(FXObject* option);
74 
76  void enablePositionOptions();
77 
80 
83 
85  FXRadioButton* fixPositionsAndSave;
86 
88  FXRadioButton* saveInvalid;
89 
92  };
93 
97  void buildConsecutiveLaneOptions(GNEDialog_FixAdditionalPositions *fixAdditionalPositions, FXVerticalFrame* mainFrame);
98 
100  void selectOption(FXObject* option);
101 
103  void enableConsecutiveLaneOptions();
104 
106  void disableConsecutiveLaneOptions();
107 
110 
112  FXRadioButton* removeInvalidElements;
113 
116 
118  FXRadioButton* fixPositionsAndSave;
119  };
120 
123 
126 
128  std::vector<GNEAdditional*> myInvalidSingleLaneAdditionals;
129 
131  std::vector<GNEAdditional*> myInvalidMultiLaneAdditionals;
132 
134  FXTable* myTable;
135 
138 
141 
143  FXButton* myAcceptButton;
144 
146  FXButton* myCancelButton;
147 
148 private:
151 
154 };
155 
156 #endif
struct for group all radio buttons related with position
void buildPositionOptions(GNEDialog_FixAdditionalPositions *fixAdditionalPositions, FXVerticalFrame *mainFrame)
build Position Options
long onCmdAccept(FXObject *, FXSelector, void *)
event after press accept button
FXRadioButton * buildConnectionBetweenLanes
Option "build connections between lanes".
FXTable * myTable
list with the stoppingPlaces and detectors
FXRadioButton * activateFriendlyPositionAndSave
Option "Activate friendlyPos and save".
FXRadioButton * activateFriendlyPositionAndSave
Option "Activate friendlyPos and save".
struct for group all radio buttons related with position
FXRadioButton * removeInvalidElements
Option "remove invalid elements".
PositionOptions myPositionOptions
struct with position options
ConsecutiveLaneOptions myConsecutiveLaneOptions
struct with the consecutive lane options
std::vector< GNEAdditional * > myInvalidMultiLaneAdditionals
vector with the invalid multi-lane additionals
FXRadioButton * fixPositionsAndSave
Option "Fix Positions and save".
FXRadioButton * selectInvalidStopsAndCancel
Option "Select invalid stops and cancel".
GNEDialog_FixAdditionalPositions & operator=(const GNEDialog_FixAdditionalPositions &)=delete
Invalidated assignment operator.
long onCmdCancel(FXObject *, FXSelector, void *)
event after press cancel button
long onCmdSelectOption(FXObject *obj, FXSelector, void *)
std::vector< GNEAdditional * > myInvalidSingleLaneAdditionals
vector with the invalid single-lane additionals
FXRadioButton * fixPositionsAndSave
Option "Fix Positions and save".