Eclipse SUMO - Simulation of Urban MObility
Loading...
Searching...
No Matches
GNEFixElementsDialog.h
Go to the documentation of this file.
1/****************************************************************************/
2// Eclipse SUMO, Simulation of Urban MObility; see https://eclipse.dev/sumo
3// Copyright (C) 2001-2024 German Aerospace Center (DLR) and others.
4// This program and the accompanying materials are made available under the
5// terms of the Eclipse Public License 2.0 which is available at
6// https://www.eclipse.org/legal/epl-2.0/
7// This Source Code may also be made available under the following Secondary
8// Licenses when the conditions for such availability set forth in the Eclipse
9// Public License 2.0 are satisfied: GNU General Public License, version 2
10// or later which is available at
11// https://www.gnu.org/licenses/old-licenses/gpl-2.0-standalone.html
12// SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-or-later
13/****************************************************************************/
18// Dialog used to fix elements during saving
19/****************************************************************************/
20#pragma once
21#include <config.h>
22
24
25// ===========================================================================
26// class declarations
27// ===========================================================================
29class GNEDetector;
30class GNEViewNet;
31
32// ===========================================================================
33// class definitions
34// ===========================================================================
35
36class GNEFixElementsDialog : public FXDialogBox {
38 FXDECLARE(GNEFixElementsDialog)
39
40public:
42 GNEFixElementsDialog(GNEViewNet* viewNet, const std::vector<GNEAdditional*>& invalidSingleLaneAdditionals, const std::vector<GNEAdditional*>& invalidMultiLaneAdditionals);
43
46
50 long onCmdSelectOption(FXObject* obj, FXSelector, void*);
51
53 long onCmdAccept(FXObject*, FXSelector, void*);
54
56 long onCmdCancel(FXObject*, FXSelector, void*);
58
59protected:
61 class AdditionalList : protected FXGroupBox {
62
63 public:
65 AdditionalList(GNEFixElementsDialog* fixAdditionalPositions, const std::vector<GNEAdditional*>& invalidSingleLaneAdditionals, const std::vector<GNEAdditional*>& invalidMultiLaneAdditionals);
66
68 std::vector<GNEAdditional*> myInvalidSingleLaneAdditionals;
69
71 std::vector<GNEAdditional*> myInvalidMultiLaneAdditionals;
72
74 FXTable* myTable;
75 };
76
79
80 public:
82 PositionOptions(GNEFixElementsDialog* fixAdditionalPositions);
83
85 void selectOption(FXObject* option);
86
89
92
95
97 FXRadioButton* fixPositionsAndSave;
98
100 FXRadioButton* saveInvalid;
101
104 };
105
108
109 public:
111 ConsecutiveLaneOptions(GNEFixElementsDialog* fixAdditionalPositions);
112
114 void selectOption(FXObject* option);
115
118
121
124
126 FXRadioButton* removeInvalidElements;
127
130
132 FXRadioButton* fixPositionsAndSave;
133 };
134
135 FOX_CONSTRUCTOR(GNEFixElementsDialog)
136
137
139
141 FXVerticalFrame* myMainFrame;
142
145
148
151
154
156 FXButton* myCancelButton;
157
158private:
161
163 GNEFixElementsDialog& operator=(const GNEFixElementsDialog&) = delete;
164};
std::vector< GNEAdditional * > myInvalidMultiLaneAdditionals
vector with the invalid multi-lane additionals
FXTable * myTable
list with the stoppingPlaces and detectors
std::vector< GNEAdditional * > myInvalidSingleLaneAdditionals
vector with the invalid single-lane additionals
groupbox for group all radio buttons related to additionals with consecutive lanes
FXRadioButton * fixPositionsAndSave
Option "Fix Positions and save".
FXRadioButton * activateFriendlyPositionAndSave
Option "Activate friendlyPos and save".
FXRadioButton * removeInvalidElements
Option "remove invalid elements".
void enableConsecutiveLaneOptions()
enable consecutive lane options
FXRadioButton * buildConnectionBetweenLanes
Option "build connections between lanes".
void selectOption(FXObject *option)
select option
void disableConsecutiveLaneOptions()
disable consecutive lane options
groupbox for group all radio buttons related to additionals with single lanes
FXRadioButton * selectInvalidStopsAndCancel
Option "Select invalid stops and cancel".
FXRadioButton * saveInvalid
Option "Save invalid".
void selectOption(FXObject *option)
select option
FXRadioButton * fixPositionsAndSave
Option "Fix Positions and save".
FXRadioButton * activateFriendlyPositionAndSave
Option "Activate friendlyPos and save".
void enablePositionOptions()
enable position options
void disablePositionOptions()
disable position options
GNEViewNet * myViewNet
view net
long onCmdCancel(FXObject *, FXSelector, void *)
event after press cancel button
ConsecutiveLaneOptions * myConsecutiveLaneOptions
consecutive lane options
AdditionalList * myAdditionalList
Additional List.
FXButton * myCancelButton
cancel button
FXVerticalFrame * myMainFrame
main
PositionOptions * myPositionOptions
position options
long onCmdSelectOption(FXObject *obj, FXSelector, void *)
long onCmdAccept(FXObject *, FXSelector, void *)
event after press accept button
FXButton * myKeepOldButton
accept button
MFXGroupBoxModule (based on FXGroupBox)