Eclipse SUMO - Simulation of Urban MObility
GNEFixAdditionalElements.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-2019 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 /****************************************************************************/
14 // Dialog used to fix additional elements
15 /****************************************************************************/
16 #ifndef GNEFixAdditionalElements_h
17 #define GNEFixAdditionalElements_h
18 
19 // ===========================================================================
20 // included modules
21 // ===========================================================================
22 
23 #include <config.h>
24 
25 #include <fx.h>
26 
27 // ===========================================================================
28 // class declarations
29 // ===========================================================================
30 class GNEStoppingPlace;
31 class GNEDetector;
32 class GNEViewNet;
33 
34 // ===========================================================================
35 // class definitions
36 // ===========================================================================
37 
42 class GNEFixAdditionalElements : public FXDialogBox {
44  FXDECLARE(GNEFixAdditionalElements)
45 
46 public:
48  GNEFixAdditionalElements(GNEViewNet* viewNet, const std::vector<GNEAdditional*>& invalidSingleLaneAdditionals, const std::vector<GNEAdditional*>& invalidMultiLaneAdditionals);
49 
52 
56  long onCmdSelectOption(FXObject* obj, FXSelector, void*);
57 
59  long onCmdAccept(FXObject*, FXSelector, void*);
60 
62  long onCmdCancel(FXObject*, FXSelector, void*);
64 
65 protected:
67  class AdditionalList : protected FXGroupBox {
68 
69  public:
71  AdditionalList(GNEFixAdditionalElements* fixAdditionalPositions, const std::vector<GNEAdditional*>& invalidSingleLaneAdditionals, const std::vector<GNEAdditional*>& invalidMultiLaneAdditionals);
72 
74  std::vector<GNEAdditional*> myInvalidSingleLaneAdditionals;
75 
77  std::vector<GNEAdditional*> myInvalidMultiLaneAdditionals;
78 
80  FXTable* myTable;
81  };
82 
84  class PositionOptions : public FXGroupBox {
85 
86  public:
88  PositionOptions(GNEFixAdditionalElements* fixAdditionalPositions);
89 
91  void selectOption(FXObject* option);
92 
94  void enablePositionOptions();
95 
98 
101 
103  FXRadioButton* fixPositionsAndSave;
104 
106  FXRadioButton* saveInvalid;
107 
110  };
111 
113  class ConsecutiveLaneOptions : public FXGroupBox {
114 
115  public:
117  ConsecutiveLaneOptions(GNEFixAdditionalElements* fixAdditionalPositions);
118 
120  void selectOption(FXObject* option);
121 
124 
127 
130 
132  FXRadioButton* removeInvalidElements;
133 
136 
138  FXRadioButton* fixPositionsAndSave;
139  };
140 
142 
143 
145 
147  FXVerticalFrame* myMainFrame;
148 
151 
154 
157 
159  FXButton* myAcceptButton;
160 
162  FXButton* myCancelButton;
163 
164 private:
167 
170 };
171 
172 #endif
GNEFixAdditionalElements::ConsecutiveLaneOptions::removeInvalidElements
FXRadioButton * removeInvalidElements
Option "remove invalid elements".
Definition: GNEFixAdditionalElements.h:132
GNEFixAdditionalElements::ConsecutiveLaneOptions
groupbox for group all radio buttons related to additionals with consecutive lanes
Definition: GNEFixAdditionalElements.h:113
GNEFixAdditionalElements::PositionOptions::selectInvalidStopsAndCancel
FXRadioButton * selectInvalidStopsAndCancel
Option "Select invalid stops and cancel".
Definition: GNEFixAdditionalElements.h:109
GNEFixAdditionalElements::AdditionalList::myInvalidSingleLaneAdditionals
std::vector< GNEAdditional * > myInvalidSingleLaneAdditionals
vector with the invalid single-lane additionals
Definition: GNEFixAdditionalElements.h:74
GNEFixAdditionalElements::PositionOptions::activateFriendlyPositionAndSave
FXRadioButton * activateFriendlyPositionAndSave
Option "Activate friendlyPos and save".
Definition: GNEFixAdditionalElements.h:100
GNEFixAdditionalElements::GNEFixAdditionalElements
GNEFixAdditionalElements(GNEViewNet *viewNet, const std::vector< GNEAdditional * > &invalidSingleLaneAdditionals, const std::vector< GNEAdditional * > &invalidMultiLaneAdditionals)
FOX-declaration.
Definition: GNEFixAdditionalElements.cpp:49
GNEFixAdditionalElements::ConsecutiveLaneOptions::ConsecutiveLaneOptions
ConsecutiveLaneOptions(GNEFixAdditionalElements *fixAdditionalPositions)
build consecutive lane Options
Definition: GNEFixAdditionalElements.cpp:317
GNEFixAdditionalElements::AdditionalList
groupbox for list
Definition: GNEFixAdditionalElements.h:67
GNEFixAdditionalElements::onCmdCancel
long onCmdCancel(FXObject *, FXSelector, void *)
event after press cancel button
Definition: GNEFixAdditionalElements.cpp:174
GNEFixAdditionalElements::PositionOptions::PositionOptions
PositionOptions(GNEFixAdditionalElements *fixAdditionalPositions)
build Position Options
Definition: GNEFixAdditionalElements.cpp:249
GNEFixAdditionalElements
Dialog for edit rerouters.
Definition: GNEFixAdditionalElements.h:42
GNEFixAdditionalElements::PositionOptions::saveInvalid
FXRadioButton * saveInvalid
Option "Save invalid".
Definition: GNEFixAdditionalElements.h:106
GNEFixAdditionalElements::PositionOptions::disablePositionOptions
void disablePositionOptions()
disable position options
Definition: GNEFixAdditionalElements.cpp:306
GNEViewNet
Definition: GNEViewNet.h:42
GNEFixAdditionalElements::AdditionalList::AdditionalList
AdditionalList(GNEFixAdditionalElements *fixAdditionalPositions, const std::vector< GNEAdditional * > &invalidSingleLaneAdditionals, const std::vector< GNEAdditional * > &invalidMultiLaneAdditionals)
constructor
Definition: GNEFixAdditionalElements.cpp:184
GNEStoppingPlace
Definition: GNEStoppingPlace.h:39
GNEFixAdditionalElements::ConsecutiveLaneOptions::enableConsecutiveLaneOptions
void enableConsecutiveLaneOptions()
enable consecutive lane options
Definition: GNEFixAdditionalElements.cpp:363
FOX_CONSTRUCTOR
#define FOX_CONSTRUCTOR(classname)
Definition: config.h:13
GNEDetector
Definition: GNEDetector.h:33
GNEFixAdditionalElements::ConsecutiveLaneOptions::selectOption
void selectOption(FXObject *option)
select option
Definition: GNEFixAdditionalElements.cpp:342
GNEFixAdditionalElements::myConsecutiveLaneOptions
ConsecutiveLaneOptions * myConsecutiveLaneOptions
consecutive lane options
Definition: GNEFixAdditionalElements.h:156
GNEFixAdditionalElements::myViewNet
GNEViewNet * myViewNet
view net
Definition: GNEFixAdditionalElements.h:144
GNEFixAdditionalElements::~GNEFixAdditionalElements
~GNEFixAdditionalElements()
destructor
Definition: GNEFixAdditionalElements.cpp:81
GNEFixAdditionalElements::AdditionalList::myTable
FXTable * myTable
list with the stoppingPlaces and detectors
Definition: GNEFixAdditionalElements.h:80
GNEFixAdditionalElements::myMainFrame
FXVerticalFrame * myMainFrame
main
Definition: GNEFixAdditionalElements.h:147
GNEFixAdditionalElements::PositionOptions::enablePositionOptions
void enablePositionOptions()
enable position options
Definition: GNEFixAdditionalElements.cpp:297
GNEFixAdditionalElements::myAcceptButton
FXButton * myAcceptButton
accept button
Definition: GNEFixAdditionalElements.h:159
GNEFixAdditionalElements::ConsecutiveLaneOptions::buildConnectionBetweenLanes
FXRadioButton * buildConnectionBetweenLanes
Option "build connections between lanes".
Definition: GNEFixAdditionalElements.h:129
GNEFixAdditionalElements::myAdditionalList
AdditionalList * myAdditionalList
Additional List.
Definition: GNEFixAdditionalElements.h:150
GNEFixAdditionalElements::ConsecutiveLaneOptions::disableConsecutiveLaneOptions
void disableConsecutiveLaneOptions()
disable consecutive lane options
Definition: GNEFixAdditionalElements.cpp:372
GNEFixAdditionalElements::PositionOptions::selectOption
void selectOption(FXObject *option)
select option
Definition: GNEFixAdditionalElements.cpp:271
GNEFixAdditionalElements::AdditionalList::myInvalidMultiLaneAdditionals
std::vector< GNEAdditional * > myInvalidMultiLaneAdditionals
vector with the invalid multi-lane additionals
Definition: GNEFixAdditionalElements.h:77
GNEFixAdditionalElements::ConsecutiveLaneOptions::activateFriendlyPositionAndSave
FXRadioButton * activateFriendlyPositionAndSave
Option "Activate friendlyPos and save".
Definition: GNEFixAdditionalElements.h:135
GNEFixAdditionalElements::onCmdAccept
long onCmdAccept(FXObject *, FXSelector, void *)
event after press accept button
Definition: GNEFixAdditionalElements.cpp:94
GNEFixAdditionalElements::PositionOptions
groupbox for group all radio buttons related to additionals with single lanes
Definition: GNEFixAdditionalElements.h:84
GNEFixAdditionalElements::onCmdSelectOption
long onCmdSelectOption(FXObject *obj, FXSelector, void *)
Definition: GNEFixAdditionalElements.cpp:86
config.h
GNEFixAdditionalElements::PositionOptions::fixPositionsAndSave
FXRadioButton * fixPositionsAndSave
Option "Fix Positions and save".
Definition: GNEFixAdditionalElements.h:103
GNEFixAdditionalElements::myPositionOptions
PositionOptions * myPositionOptions
position options
Definition: GNEFixAdditionalElements.h:153
GNEFixAdditionalElements::myCancelButton
FXButton * myCancelButton
cancel button
Definition: GNEFixAdditionalElements.h:162
GNEFixAdditionalElements::ConsecutiveLaneOptions::fixPositionsAndSave
FXRadioButton * fixPositionsAndSave
Option "Fix Positions and save".
Definition: GNEFixAdditionalElements.h:138