17 #ifndef GNEAdditionalFrame_h 18 #define GNEAdditionalFrame_h 137 std::string getIdSelected()
const;
140 void setIDSelected(
const std::string&
id);
143 bool showSelectorAdditionalParentModul(
SumoXMLTag additionalTypeParent);
146 void hideSelectorAdditionalParentModul();
149 void refreshSelectorAdditionalParentModul();
181 std::string getEdgeIdsSelected()
const;
184 void showSelectorEdgeChildsModul(std::string search =
"");
187 void hideSelectorEdgeChildsModul();
190 void updateUseSelectedEdges();
195 long onCmdUseSelectedEdges(FXObject*, FXSelector,
void*);
198 long onCmdTypeInSearchBox(FXObject*, FXSelector,
void*);
201 long onCmdSelectEdge(FXObject*, FXSelector,
void*);
204 long onCmdClearSelection(FXObject*, FXSelector,
void*);
207 long onCmdInvertSelection(FXObject*, FXSelector,
void*);
250 std::string getLaneIdsSelected()
const;
256 void hideSelectorLaneChildsModul();
259 void updateUseSelectedLanes();
264 long onCmdUseSelectedLanes(FXObject*, FXSelector,
void*);
267 long onCmdTypeInSearchBox(FXObject*, FXSelector,
void*);
270 long onCmdSelectLane(FXObject*, FXSelector,
void*);
273 long onCmdClearSelection(FXObject*, FXSelector,
void*);
276 long onCmdInvertSelection(FXObject*, FXSelector,
void*);
void enableModuls(const GNEAttributeCarrier::TagProperties &tagProperties)
enable moduls depending of item selected in ItemSelector
SumoXMLTag
Numbers representing SUMO-XML - element names.
SelectorEdgeChilds()
FOX needs this.
const RGBColor & getSelectedLaneColor() const
get selected lane color
GNEAdditionalFrame * myAdditionalFrameParent
pointer to additional frame parent
void showSelectorLaneParentsModul()
show SelectorLaneParents modul
FXButton * myInvertEdgesSelection
button for invert selection
FXTextField * myEdgesSearch
text field for search edge IDs
SumoXMLTag myAdditionalTypeParent
current additional type parent
bool buildAdditionalCommonAttributes(std::map< SumoXMLAttr, std::string > &valuesMap, const GNEAttributeCarrier::TagProperties &tagValues)
build common additional attributes
FXLabel * myFirstAdditionalParentsLabel
Label with the name of additional.
struct with the attribute Properties
FXList * myList
List of SelectorLaneChilds.
bool isShown() const
return true if modul is shown
long onCmdAbortSelection(FXObject *, FXSelector, void *)
Called when the user press abort selection button.
This lane is powered by an underlying GNEEdge and basically knows how to draw itself.
bool stopConsecutiveLaneSelector()
stop selection of consecutive lanes
long onCmdStopSelection(FXObject *, FXSelector, void *)
std::vector< GNELane * > myCandidateLanes
Vector with the colored lanes.
ACAttributes * myAdditionalAttributes
internal additional attributes
const std::vector< std::pair< GNELane *, double > > & getSelectedLanes() const
get current selected lanes
RGBColor myCandidateLaneColor
color for candidate lanes
FXList * myFirstAdditionalParentsList
List of additional sets.
bool buildAdditionalOverEdge(std::map< SumoXMLAttr, std::string > &valuesMap, GNELane *lane, const GNEAttributeCarrier::TagProperties &tagValues)
build additional over an edge (parent of lane)
GNEAdditionalFrame * myAdditionalFrameParent
pointer to Additional Frame Parent
FXButton * invertLanesSelection
button for invert selection
bool isLaneSelected(GNELane *lane) const
check if certain lane is selected
GNEAdditionalFrame::SelectorLaneParents * getConsecutiveLaneSelector() const
getConsecutive Lane Selector
bool addAdditional(const GNEViewNet::ObjectsUnderCursor &objectsUnderCursor)
add additional element
void removeLastSelectedLane()
remove last added point
A point in 2D or 3D with translation and scaling methods.
SelectorLaneChilds * mySelectorLaneChilds
Modul for select lane childs.
GNEAdditionalFrame * myAdditionalFrameParent
pointer to additionalFrameParent
FXButton * myStopSelectingButton
button for stop selecting
bool buildAdditionalOverLane(std::map< SumoXMLAttr, std::string > &valuesMap, GNELane *lane, const GNEAttributeCarrier::TagProperties &tagValues)
build additional over a single lane
SelectorLaneParents()
FOX needs this.
void removeAdditional(GNEAdditional *additional)
remove an additional element previously added
~GNEAdditionalFrame()
Destructor.
void showSelectorLaneChildsModul()
show selector lane child and update use selected edges/lanes
FXCheckButton * myUseSelectedEdgesCheckButton
CheckBox for selected edges.
FXList * myList
List of SelectorEdgeChilds.
FXButton * myAbortSelectingButton
button for abort selecting
std::vector< std::pair< GNELane *, double > > mySelectedLanes
Vector with the selected lanes and the clicked position.
FXTextField * myLanesSearch
text field for search lane IDs
FXButton * clearLanesSelection
button for clear selection
ItemSelector * myItemSelector
item selector
bool addSelectedLane(GNELane *lane, const Position &clickedPosition)
return true if lane can be selected as consecutive lane
An Element which don't belongs to GNENet but has influency in the simulation.
SelectorLaneChilds()
FOX needs this.
void disableModuls()
disable moduls if element selected in itemSelector isn't valid
NeteditAttributes * myNeteditAttributes
Netedit parameter.
FXCheckButton * myUseSelectedLanesCheckButton
CheckBox for selected lanes.
SelectorLaneParents * mySelectorLaneParents
Modul for select lane parents (currently only consecutives)
RGBColor mySelectedLaneColor
color for selected lanes
bool buildAdditionalOverView(std::map< SumoXMLAttr, std::string > &valuesMap, const GNEAttributeCarrier::TagProperties &tagValues)
build additional over view
void hideSelectorLaneParentsModul()
hide SelectorLaneParents
std::string generateID(GNENetElement *netElement) const
generate a ID for an additiona element
bool buildAdditionalWithParent(std::map< SumoXMLAttr, std::string > &valuesMap, GNEAdditional *parent, const GNEAttributeCarrier::TagProperties &tagValues)
build additional with Parent
SelectorAdditionalParent * mySelectorAdditionalParent
Modul for select a single additional parent (Used only for first Additional parent) ...
bool isSelectingLanes() const
return true if modul is selecting lane
GNEAdditionalFrame * myAdditionalFrameParent
pointer to additional frame parent
void startConsecutiveLaneSelector(GNELane *lane, const Position &clickedPosition)
start selection of consecutive lanes
bool buildAdditionalOverLanes(std::map< SumoXMLAttr, std::string > &valuesMap, GNELane *lane, const GNEAttributeCarrier::TagProperties &tagValues)
build additional over lanes
FXButton * myClearEdgesSelection
button for clear selection
SelectorEdgeChilds * mySelectorEdgeChilds
Modul for select edge childs.
GNEAdditionalFrame(FXHorizontalFrame *horizontalFrameParent, GNEViewNet *viewNet)
Constructor.
void abortConsecutiveLaneSelector()
abort selection of consecutive lanes
~SelectorLaneParents()
destructor