17 #ifndef GNEAdditionalFrame_h 18 #define GNEAdditionalFrame_h 114 void showParameter(
SumoXMLAttr additionalAttr, std::string value);
117 void hideParameter();
123 std::string getValue()
const;
126 const std::string& isAttributeValid()
const;
131 long onCmdSetAttribute(FXObject*, FXSelector,
void*);
134 long onCmdSetBooleanAttribute(FXObject*, FXSelector,
void*);
186 void clearAttributes();
189 void addAttribute(
SumoXMLAttr AdditionalAttributeSingle);
192 void showAdditionalParameters();
195 void hideAdditionalParameters();
198 std::map<
SumoXMLAttr, std::
string> getAttributesAndValues() const;
201 bool areValuesValid() const;
204 void showWarningMessage(std::
string extra = "") const;
212 long onCmdHelp(FXObject*, FXSelector,
void*);
242 GNE_ADDITIONALREFERENCEPOINT_INVALID
252 void showNeteditAttributes(
bool includeLengthAndReferencePoint);
255 void hideNeteditAttributes();
261 double getLength()
const;
264 bool isBlockEnabled()
const;
267 bool isCurrentLengthValid()
const;
272 long onCmdSetLength(FXObject*, FXSelector,
void*);
275 long onCmdSelectReferencePoint(FXObject*, FXSelector,
void*);
278 long onCmdSetBlocking(FXObject*, FXSelector,
void*);
281 long onCmdHelp(FXObject*, FXSelector,
void*);
327 std::string getIdSelected()
const;
330 void setIDSelected(
const std::string&
id);
333 void showListOfAdditionalParents(
SumoXMLTag additionalTypeParent);
336 void hideListOfAdditionalParents();
339 void refreshListOfAdditionalParents();
374 void showList(std::string search =
"");
380 void updateUseSelectedEdges();
383 bool isUseSelectedEdgesEnable()
const;
388 long onCmdUseSelectedEdges(FXObject*, FXSelector,
void*);
391 long onCmdTypeInSearchBox(FXObject*, FXSelector,
void*);
394 long onCmdSelectEdge(FXObject*, FXSelector,
void*);
397 long onCmdClearSelection(FXObject*, FXSelector,
void*);
400 long onCmdInvertSelection(FXObject*, FXSelector,
void*);
446 void showList(std::string search =
"");
452 void updateUseSelectedLanes();
455 bool isUseSelectedLanesEnable()
const;
460 long onCmdUseSelectedLanes(FXObject*, FXSelector,
void*);
463 long onCmdTypeInSearchBox(FXObject*, FXSelector,
void*);
466 long onCmdSelectLane(FXObject*, FXSelector,
void*);
469 long onCmdClearSelection(FXObject*, FXSelector,
void*);
472 long onCmdInvertSelection(FXObject*, FXSelector,
void*);
550 double setStartPosition(
double positionOfTheMouseOverLane,
double lengthOfAdditional);
553 double setEndPosition(
double laneLength,
double positionOfTheMouseOverLane,
double lengthOfAdditional);
double setStartPosition(double positionOfTheMouseOverLane, double lengthOfAdditional)
obtain the Start position values of StoppingPlaces and E2 detector over the lane
GNEAdditionalFrame::AdditionalSelector * myAdditionalSelector
additional selector
SumoXMLTag
Numbers representing SUMO-XML - element names.
SumoXMLAttr myAdditionalAttr
current XML attribute
additionalReferencePoint myActualAdditionalReferencePoint
actual additional reference point selected in the match Box
FXCheckButton * myUseSelectedLanesCheckButton
CheckBox for selected lanes.
SelectorParentAdditional * getAdditionalParentSelector() const
get additional parent selector
SumoXMLTag getCurrentAdditionalType() const
get current additional type
void setCurrentAdditional(SumoXMLTag actualAdditionalType)
set parameters depending of the given additionalType
AddAdditionalResult addAdditional(GNENetElement *netElement, GNEAdditional *additional)
add additional element
FXLabel * myFirstAdditionalParentsLabel
Label with the name of additional.
FXTextField * myTextFieldStrings
textField to modify the default value of string parameters
FXComboBox * myReferencePointMatchBox
match box with the list of reference points
additionalReferencePoint
FOX-declaration.
double setEndPosition(double laneLength, double positionOfTheMouseOverLane, double lengthOfAdditional)
obtain the End position values of StoppingPlaces and E2 detector over the lane
FXList * myFirstAdditionalParentsList
List of additional sets.
FXCheckButton * myBoolCheckButton
check button to enable/disable the value of boolean parameters
FXButton * myClearEdgesSelection
button for clear selection
~AdditionalSelector()
destructor
std::string myInvalidValue
string which indicates the reason due current value is invalid
GNEAdditionalFrame::SelectorParentEdges * myEdgeParentsSelector
list of SelectorParentEdges
FXTextField * myLengthTextField
textField for length
SumoXMLAttr
Numbers representing SUMO-XML - attributes.
bool myCurrentLengthValid
Flag to check if current length is valid.
FXTextField * myEdgesSearch
text field for search edge IDs
AdditionalAttributes * myAdditionalAttributesParent
additional attribute parent
FXButton * myInvertEdgesSelection
button for invert selection
GNEAdditionalFrame * myAdditionalFrameParent
pointer to additional frame parent
FXCheckButton * myUseSelectedEdgesCheckButton
CheckBox for selected edges.
long onCmdselectAttributeCarrier(FXObject *, FXSelector, void *)
FXButton * clearLanesSelection
button for clear selection
SelectorParentLanes * getLaneParentsSelector() const
get lane parents selector
GNEAdditionalFrame::NeteditAttributes * myNeteditParameters
Netedit parameter.
FXLabel * myLengthLabel
Label for length.
SelectorParentEdges * getEdgeParentsSelector() const
get edge parents selector
GNEAdditionalFrame * myAdditionalFrameParent
pointer to Additional Frame Parent
FXList * myList
List of SelectorParentLanes.
GNEAdditionalFrame::SelectorParentAdditional * myFirstAdditionalParentSelector
list of additional Set
FXComboBox * myAdditionalMatchBox
combo box with the list of additional elements
GNEAdditionalFrame::AdditionalAttributes * myAdditionalParameters
additional internal attributes
SelectorParentLanes()
FOX needs this.
void removeAdditional(GNEAdditional *additional)
remove an additional element previously added
SelectorParentEdges()
FOX needs this.
GNEAdditionalFrame::SelectorParentLanes * myLaneParentsSelector
list of SelectorParentLanes
AdditionalSelector()
FOX needs this.
~GNEAdditionalFrame()
Destructor.
FXLabel * myBlockLabel
Label for block movement.
FXTextField * myLanesSearch
text field for search lane IDs
GNEAdditionalFrame * myAdditionalFrameParent
pointer to additionalFrameParent
SumoXMLTag myCurrentAdditionalType
actual additional type selected in the match Box
SumoXMLTag myAdditionalTypeParent
current additional type parent
GNEAdditionalFrame * myAdditionalFrameParent
pointer to additional frame parent
FXList * myList
List of SelectorParentEdges.
FXLabel * myLabel
lael with the name of the parameter
AddAdditionalResult
enum with all possible values after try to create an additional using frame
void show()
show additional frame and update use selected edges/lanes
An Element which don't belongs to GNENet but has influency in the simulation.
std::string generateID(GNENetElement *netElement) const
generate a ID for an additiona element
GNEAdditionalFrame * myAdditionalFrameParent
pointer to Additional Frame Parent
AdditionalSelector * getAdditionalSelector() const
get additional selector
FXButton * invertLanesSelection
button for invert selection
AdditionalAttributeSingle()
FOX needs this.
FXTextField * myTextFieldInt
textField to modify the default value of int/float/string parameters
static std::string getIdsSelected(const FXList *list)
get list of selecte id's in string format
GNEAdditionalFrame(FXHorizontalFrame *horizontalFrameParent, GNEViewNet *viewNet)
Constructor.
AdditionalAttributes * getAdditionalParameters() const
get additional attributes
std::vector< AdditionalAttributeSingle * > myVectorOfsingleAdditionalParameter
vector with the additional parameters
NeteditAttributes * getNeteditAttributes() const
get netedit attributes
FXCheckButton * myBlockMovementCheckButton
checkBox for block movement
FXTextField * myTextFieldReal
textField to modify the default value of real/times parameters
FXButton * helpReferencePoint
Button for help about the reference point.
NeteditAttributes()
FOX needs this.