Eclipse SUMO - Simulation of Urban MObility
GNENeteditAttributes.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-2022 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// Modul for edit NETEDIT attributes
19/****************************************************************************/
20#pragma once
21#include <config.h>
22
25
26// ===========================================================================
27// class declaration
28// ===========================================================================
29
30class GNEFrame;
32class GNELane;
33
34// ===========================================================================
35// class definitions
36// ===========================================================================
37
40 FXDECLARE(GNENeteditAttributes)
41
42public:
44 GNENeteditAttributes(GNEFrame* frameParent);
45
48
51
54
57
61 long onCmdSetNeteditAttribute(FXObject*, FXSelector, void*);
62
64 long onCmdHelp(FXObject*, FXSelector, void*);
66
67protected:
68 FOX_CONSTRUCTOR(GNENeteditAttributes)
69
70private:
73 LEFT,
74 RIGHT,
75 CENTER,
77 };
78
80 double setStartPosition(double positionOfTheMouseOverLane, double lengthOfAdditional) const;
81
83 double setEndPosition(double positionOfTheMouseOverLane, double lengthOfAdditional) const;
84
87
90
92 FXHorizontalFrame* myLengthFrame;
93
95 FXTextField* myLengthTextField;
96
98 FXHorizontalFrame* myCloseShapeFrame;
99
102
105
108
111
114
117};
@ RIGHT
At the rightmost side of the lane.
@ LEFT
At the leftmost side of the lane.
@ CENTER
At the center of the lane.
This lane is powered by an underlying GNEEdge and basically knows how to draw itself.
Definition: GNELane.h:46
FXHorizontalFrame * myLengthFrame
horizontal frame for length
FXHorizontalFrame * myCenterViewAfterCreationFrame
horizontal frame for center view after creation frame
double setEndPosition(double positionOfTheMouseOverLane, double lengthOfAdditional) const
obtain the End position values of StoppingPlaces and E2 detector over the lane
FXButton * helpReferencePoint
Button for help about the reference point.
GNENeteditAttributes(GNEFrame *frameParent)
FOX-declaration.
long onCmdSetNeteditAttribute(FXObject *, FXSelector, void *)
double setStartPosition(double positionOfTheMouseOverLane, double lengthOfAdditional) const
obtain the Start position values of StoppingPlaces and E2 detector over the lane
AdditionalReferencePoint myActualAdditionalReferencePoint
actual additional reference point selected in the match Box
FXComboBox * myReferencePointMatchBox
match box with the list of reference points
long onCmdHelp(FXObject *, FXSelector, void *)
Called when user press the help button.
bool myCurrentLengthValid
Flag to check if current length is valid.
FXTextField * myLengthTextField
textField for length
FXCheckButton * myCenterViewAfterCreationButton
checkbox to enable/disable center element after creation
void showNeteditAttributesModule(GNEAttributeCarrier *templateAC)
show Netedit attributes modul
FXHorizontalFrame * myCloseShapeFrame
horizontal frame for close polygon
void hideNeteditAttributesModule()
hide Netedit attributes modul
FXCheckButton * myCloseShapeCheckButton
checkbox to enable/disable close polygon
bool getNeteditAttributesAndValues(CommonXMLStructure::SumoBaseObject *baseObject, const GNELane *lane) const
fill valuesMap with netedit attributes
AdditionalReferencePoint
list of the reference points
GNEFrame * myFrameParent
pointer to frame parent
MFXGroupBoxModule (based on FXGroupBox)