SUMO - Simulation of Urban MObility
GNEAdditionalFrame Class Reference

#include <GNEAdditionalFrame.h>

Inheritance diagram for GNEAdditionalFrame:
Inheritance graph
Collaboration diagram for GNEAdditionalFrame:
Collaboration graph

Data Structures

class  AdditionalAttributeList
 
class  AdditionalAttributes
 
class  AdditionalAttributeSingle
 
class  NeteditAttributes
 
class  SelectorParentAdditional
 
class  SelectorParentEdges
 
class  SelectorParentLanes
 

Public Types

enum  AddAdditionalResult { ADDADDITIONAL_INVALID_ARGUMENTS, ADDADDITIONAL_INVALID_PARENT, ADDADDITIONAL_SUCCESS }
 FOX-declaration. More...
 

Public Member Functions

AddAdditionalResult addAdditional (GNENetElement *netElement, GUISUMOAbstractView *parent)
 add additional element More...
 
void focusUpperElement ()
 focus upper element of frame More...
 
FXFont * getFrameHeaderFont () const
 get font of the header's frame More...
 
FXLabel * getFrameHeaderLabel () const
 get the label for the frame's header More...
 
GNEViewNetgetViewNet () const
 get view net More...
 
 GNEAdditionalFrame (FXHorizontalFrame *horizontalFrameParent, GNEViewNet *viewNet)
 Constructor. More...
 
virtual void hide ()
 hide Frame More...
 
void removeAdditional (GNEAdditional *additional)
 remove an additional element previously added More...
 
void setFrameWidth (int width)
 set width of GNEFrame More...
 
void show ()
 show additional frame and update use selected edges/lanes More...
 
 ~GNEAdditionalFrame ()
 Destructor. More...
 
FOX-callbacks

Called when the user select another additional Type

long onCmdSelectAdditional (FXObject *, FXSelector, void *)
 

Static Public Member Functions

static std::string getIdsSelected (const FXList *list)
 get list of selecte id's in string format More...
 

Protected Member Functions

 GNEAdditionalFrame ()
 FOX needs this. More...
 

Protected Attributes

FXVerticalFrame * myContentFrame
 Vertical frame that holds all widgets of frame. More...
 
FXFont * myFrameHeaderFont
 Font for the Header. More...
 
FXLabel * myFrameHeaderLabel
 the label for the frame's header More...
 
FXHorizontalFrame * myHeaderFrame
 fame for header elements More...
 
FXHorizontalFrame * myHeaderLeftFrame
 fame for left header elements More...
 
FXHorizontalFrame * myHeaderRightFrame
 fame for right header elements More...
 
GNEViewNetmyViewNet
 the window to inform when the tls is modfied More...
 

Private Member Functions

std::string generateID (GNENetElement *netElement) const
 generate a ID for an additiona element More...
 
double setEndPosition (double laneLength, double positionOfTheMouseOverLane, double lengthOfAdditional)
 obtain the End position values of StoppingPlaces and E2 detector over the lane More...
 
void setParametersOfAdditional (SumoXMLTag actualAdditionalType)
 set parameters depending of the new additionalType More...
 
double setStartPosition (double positionOfTheMouseOverLane, double lengthOfAdditional)
 obtain the Start position values of StoppingPlaces and E2 detector over the lane More...
 

Private Attributes

SumoXMLTag myActualAdditionalType
 actual additional type selected in the match Box More...
 
FXComboBox * myAdditionalMatchBox
 combo box with the list of additional elements More...
 
GNEAdditionalFrame::AdditionalAttributesmyadditionalParameters
 additional internal attributes More...
 
GNEAdditionalFrame::SelectorParentAdditionalmyAdditionalParentSelector
 list of additional Set More...
 
GNEAdditionalFrame::SelectorParentEdgesmyedgeParentsSelector
 list of SelectorParentEdges More...
 
GNEAdditionalFrame::NeteditAttributesmyEditorParameters
 Netedit parameter. More...
 
FXGroupBox * myGroupBoxForMyAdditionalMatchBox
 groupBox for Match Box of additionals More...
 
GNEAdditionalFrame::SelectorParentLanesmylaneParentsSelector
 list of SelectorParentLanes More...
 

Detailed Description

The Widget for setting internal attributes of additional elements

Definition at line 49 of file GNEAdditionalFrame.h.

Member Enumeration Documentation

◆ AddAdditionalResult

FOX-declaration.

enum with all possible values after try to create an additional using frame

Enumerator
ADDADDITIONAL_INVALID_ARGUMENTS 
ADDADDITIONAL_INVALID_PARENT 
ADDADDITIONAL_SUCCESS 

Definition at line 56 of file GNEAdditionalFrame.h.

Constructor & Destructor Documentation

◆ GNEAdditionalFrame() [1/2]

GNEAdditionalFrame::GNEAdditionalFrame ( FXHorizontalFrame *  horizontalFrameParent,
GNEViewNet viewNet 
)

Constructor.

parent FXHorizontalFrame in which this GNEFrame is placed viewNet viewNet that uses this GNEFrame

Create list for SelectorParentEdges

Create list for SelectorParentLanes

Definition at line 124 of file GNEAdditionalFrame.cpp.

References GNEAttributeCarrier::allowedTags(), GUIDesignComboBox, GUIDesignComboBoxNCol, GUIDesignGroupBoxFrame, MID_GNE_MODE_ADDITIONAL_ITEM, and toString().

◆ ~GNEAdditionalFrame()

GNEAdditionalFrame::~GNEAdditionalFrame ( )

Destructor.

Definition at line 167 of file GNEAdditionalFrame.cpp.

References gSelected, and GUISelectedStorage::remove2Update().

◆ GNEAdditionalFrame() [2/2]

GNEAdditionalFrame::GNEAdditionalFrame ( )
inlineprotected

FOX needs this.

Definition at line 658 of file GNEAdditionalFrame.h.

References generateID(), setEndPosition(), setParametersOfAdditional(), and setStartPosition().

Member Function Documentation

◆ addAdditional()

GNEAdditionalFrame::AddAdditionalResult GNEAdditionalFrame::addAdditional ( GNENetElement netElement,
GUISUMOAbstractView parent 
)

add additional element

Parameters
[in]netElementclicked netElement. if user dind't clicked over a GNENetElement in view, netElement will be NULL
[in]parentAbstractView to obtain the position of the mouse over the lane.
Returns
AddAdditionalStatus with the result of operation

Definition at line 173 of file GNEAdditionalFrame.cpp.

References ADDADDITIONAL_INVALID_ARGUMENTS, ADDADDITIONAL_INVALID_PARENT, ADDADDITIONAL_SUCCESS, GNEAdditionalFrame::AdditionalAttributes::areValuesValid(), GNEAdditionalHandler::buildAdditional(), generateID(), GNEAdditionalFrame::NeteditAttributes::getActualReferencePoint(), GNEAdditionalFrame::AdditionalAttributes::getAttributesAndValues(), GNEAttributeCarrier::getID(), GNEAdditionalFrame::SelectorParentAdditional::getIdSelected(), GNEAdditionalFrame::SelectorParentEdges::getIdsSelected(), GNEAdditionalFrame::SelectorParentLanes::getIdsSelected(), GNEEdge::getLanes(), GNELane::getLaneShapeLength(), GNEAdditionalFrame::NeteditAttributes::getLength(), GNEViewNet::getNet(), GUISUMOAbstractView::getPositionInformation(), GNELane::getShape(), GNEAdditionalFrame::NeteditAttributes::GNE_ADDITIONALREFERENCEPOINT_INVALID, GNE_ATTR_BLOCK_MOVEMENT, GNE_ATTR_PARENT, GNEAttributeCarrier::hasAttribute(), GNEAdditionalFrame::NeteditAttributes::isBlockEnabled(), GNEAdditionalFrame::NeteditAttributes::isCurrentLengthValid(), GNEAdditionalFrame::SelectorParentEdges::isUseSelectedEdgesEnable(), GNEAdditionalFrame::SelectorParentLanes::isUseSelectedLanesEnable(), joinToString(), myActualAdditionalType, myadditionalParameters, myAdditionalParentSelector, myedgeParentsSelector, myEditorParameters, mylaneParentsSelector, GNEFrame::myViewNet, PositionVector::nearest_offset_to_point2D(), GNENet::retrieveEdges(), GNENet::retrieveLanes(), setEndPosition(), setStartPosition(), GNEViewNet::setStatusBarText(), GNEAdditionalFrame::AdditionalAttributes::showWarningMessage(), GUISUMOAbstractView::snapToActiveGrid(), SUMO_ATTR_CROSSING, SUMO_ATTR_EDGE, SUMO_ATTR_EDGES, SUMO_ATTR_END, SUMO_ATTR_ENDPOS, SUMO_ATTR_FILE, SUMO_ATTR_ID, SUMO_ATTR_JUNCTION, SUMO_ATTR_LANE, SUMO_ATTR_LANES, SUMO_ATTR_OUTPUT, SUMO_ATTR_POSITION, SUMO_ATTR_STARTPOS, SUMO_ATTR_STARTTIME, SUMO_TAG_DET_ENTRY, SUMO_TAG_DET_EXIT, SUMO_TAG_E3DETECTOR, SUMO_TAG_EDGE, SUMO_TAG_LANE, SUMO_TAG_NOTHING, and toString().

Referenced by GNEViewNet::onLeftBtnPress().

◆ focusUpperElement()

void GNEFrame::focusUpperElement ( )
inherited

◆ generateID()

std::string GNEAdditionalFrame::generateID ( GNENetElement netElement) const
private

◆ getFrameHeaderFont()

FXFont * GNEFrame::getFrameHeaderFont ( ) const
inherited

get font of the header's frame

Definition at line 135 of file GNEFrame.cpp.

References GNEFrame::myFrameHeaderFont.

◆ getFrameHeaderLabel()

FXLabel * GNEFrame::getFrameHeaderLabel ( ) const
inherited

get the label for the frame's header

Definition at line 129 of file GNEFrame.cpp.

References GNEFrame::myFrameHeaderLabel.

Referenced by GNEInspectorFrame::inspectMultisection().

◆ getIdsSelected()

std::string GNEAdditionalFrame::getIdsSelected ( const FXList *  list)
static

get list of selecte id's in string format

Definition at line 1421 of file GNEAdditionalFrame.cpp.

Referenced by GNEAdditionalFrame::SelectorParentEdges::getIdsSelected(), and GNEAdditionalFrame::SelectorParentLanes::getIdsSelected().

◆ getViewNet()

◆ hide()

◆ onCmdSelectAdditional()

◆ removeAdditional()

void GNEAdditionalFrame::removeAdditional ( GNEAdditional additional)

remove an additional element previously added

Parameters
[in]additionalelement to erase

Definition at line 435 of file GNEAdditionalFrame.cpp.

References GNEAttributeCarrier::getDescription(), GNEViewNet::getUndoList(), GNEFrame::myViewNet, GNEUndoList::p_begin(), and GNEUndoList::p_end().

Referenced by GNEViewNet::deleteSelectedAdditionals(), and GNEDeleteFrame::removeAttributeCarrier().

◆ setEndPosition()

double GNEAdditionalFrame::setEndPosition ( double  laneLength,
double  positionOfTheMouseOverLane,
double  lengthOfAdditional 
)
private

◆ setFrameWidth()

void GNEFrame::setFrameWidth ( int  width)
inherited

set width of GNEFrame

Definition at line 116 of file GNEFrame.cpp.

References GNEFrame::myScrollWindowsContents.

◆ setParametersOfAdditional()

void GNEAdditionalFrame::setParametersOfAdditional ( SumoXMLTag  actualAdditionalType)
private

◆ setStartPosition()

double GNEAdditionalFrame::setStartPosition ( double  positionOfTheMouseOverLane,
double  lengthOfAdditional 
)
private

◆ show()

Field Documentation

◆ myActualAdditionalType

SumoXMLTag GNEAdditionalFrame::myActualAdditionalType
private

actual additional type selected in the match Box

Definition at line 695 of file GNEAdditionalFrame.h.

Referenced by addAdditional(), generateID(), onCmdSelectAdditional(), and setParametersOfAdditional().

◆ myAdditionalMatchBox

FXComboBox* GNEAdditionalFrame::myAdditionalMatchBox
private

combo box with the list of additional elements

Definition at line 677 of file GNEAdditionalFrame.h.

Referenced by onCmdSelectAdditional().

◆ myadditionalParameters

GNEAdditionalFrame::AdditionalAttributes* GNEAdditionalFrame::myadditionalParameters
private

additional internal attributes

Definition at line 680 of file GNEAdditionalFrame.h.

Referenced by addAdditional(), onCmdSelectAdditional(), and setParametersOfAdditional().

◆ myAdditionalParentSelector

GNEAdditionalFrame::SelectorParentAdditional* GNEAdditionalFrame::myAdditionalParentSelector
private

list of additional Set

Definition at line 686 of file GNEAdditionalFrame.h.

Referenced by addAdditional(), onCmdSelectAdditional(), and setParametersOfAdditional().

◆ myContentFrame

FXVerticalFrame* GNEFrame::myContentFrame
protectedinherited

Vertical frame that holds all widgets of frame.

Definition at line 104 of file GNEFrame.h.

Referenced by GNEConnectorFrame::GNEConnectorFrame(), GNECrossingFrame::GNECrossingFrame(), GNEFrame::GNEFrame(), and GNEInspectorFrame::inspectMultisection().

◆ myedgeParentsSelector

GNEAdditionalFrame::SelectorParentEdges* GNEAdditionalFrame::myedgeParentsSelector
private

◆ myEditorParameters

GNEAdditionalFrame::NeteditAttributes* GNEAdditionalFrame::myEditorParameters
private

◆ myFrameHeaderFont

FXFont* GNEFrame::myFrameHeaderFont
protectedinherited

Font for the Header.

Definition at line 98 of file GNEFrame.h.

Referenced by GNEFrame::getFrameHeaderFont(), GNEFrame::GNEFrame(), and GNEFrame::~GNEFrame().

◆ myFrameHeaderLabel

FXLabel* GNEFrame::myFrameHeaderLabel
protectedinherited

the label for the frame's header

Definition at line 101 of file GNEFrame.h.

Referenced by GNEFrame::focusUpperElement(), GNEFrame::getFrameHeaderLabel(), GNEFrame::GNEFrame(), and GNESelectorFrame::selectionUpdated().

◆ myGroupBoxForMyAdditionalMatchBox

FXGroupBox* GNEAdditionalFrame::myGroupBoxForMyAdditionalMatchBox
private

groupBox for Match Box of additionals

Definition at line 674 of file GNEAdditionalFrame.h.

◆ myHeaderFrame

FXHorizontalFrame* GNEFrame::myHeaderFrame
protectedinherited

fame for header elements

Definition at line 107 of file GNEFrame.h.

Referenced by GNEFrame::GNEFrame().

◆ myHeaderLeftFrame

FXHorizontalFrame* GNEFrame::myHeaderLeftFrame
protectedinherited

◆ myHeaderRightFrame

FXHorizontalFrame* GNEFrame::myHeaderRightFrame
protectedinherited

fame for right header elements

Definition at line 113 of file GNEFrame.h.

Referenced by GNEFrame::GNEFrame().

◆ mylaneParentsSelector

GNEAdditionalFrame::SelectorParentLanes* GNEAdditionalFrame::mylaneParentsSelector
private

◆ myViewNet

GNEViewNet* GNEFrame::myViewNet
protectedinherited

the window to inform when the tls is modfied

Definition at line 95 of file GNEFrame.h.

Referenced by addAdditional(), GNETLSEditorFrame::buildIinternalLanes(), GNEDeleteFrame::createPopUpMenu(), GNEInspectorFrame::createPopUpMenu(), GNETLSEditorFrame::editJunction(), generateID(), GNESelectorFrame::getMatches(), GNEFrame::getViewNet(), GNETLSEditorFrame::handleChange(), GNESelectorFrame::handleIDs(), GNEConnectorFrame::handleLaneClick(), GNETLSEditorFrame::handleMultiChange(), GNEFrame::hide(), GNEConnectorFrame::initTargets(), GNEConnectorFrame::onCmdCancel(), GNETLSEditorFrame::onCmdCancel(), GNEDeleteFrame::onCmdCenterItem(), GNEInspectorFrame::onCmdCenterItem(), GNESelectorFrame::onCmdClear(), GNEConnectorFrame::onCmdClearSelectedConnections(), GNEInspectorFrame::onCmdCopyTemplate(), GNECrossingFrame::onCmdCreateCrossing(), GNETLSEditorFrame::onCmdDefCreate(), GNETLSEditorFrame::onCmdDefDelete(), GNETLSEditorFrame::onCmdDefSwitch(), GNEInspectorFrame::onCmdDeleteItem(), GNEInspectorFrame::onCmdGoBack(), GNEDeleteFrame::onCmdInspectItem(), GNESelectorFrame::onCmdInvert(), GNESelectorFrame::onCmdLoad(), GNEConnectorFrame::onCmdOK(), GNETLSEditorFrame::onCmdOK(), GNETLSEditorFrame::onCmdPhaseSwitch(), GNEConnectorFrame::onCmdResetSelectedConnections(), GNESelectorFrame::onCmdSave(), GNESelectorFrame::onCmdScaleSelection(), GNEConnectorFrame::onCmdSelectConflicts(), GNEConnectorFrame::onCmdSelectDeadEnds(), GNEConnectorFrame::onCmdSelectDeadStarts(), GNEConnectorFrame::onCmdSelectPass(), removeAdditional(), GNEDeleteFrame::removeAttributeCarrier(), and GNEFrame::show().


The documentation for this class was generated from the following files: