110 FXIMPLEMENT(
GNEAdditionalFrame, FXVerticalFrame, GNEAdditionalMap, ARRAYNUMBER(GNEAdditionalMap))
111 FXIMPLEMENT(
GNEAdditionalFrame::AdditionalAttributeSingle, FXHorizontalFrame, GNEsingleAdditionalParameterMap, ARRAYNUMBER(GNEsingleAdditionalParameterMap))
112 FXIMPLEMENT(
GNEAdditionalFrame::AdditionalAttributeList, FXVerticalFrame, GNEsingleAdditionalParameterListMap, ARRAYNUMBER(GNEsingleAdditionalParameterListMap))
113 FXIMPLEMENT(
GNEAdditionalFrame::AdditionalAttributes, FXGroupBox, GNEadditionalParametersMap, ARRAYNUMBER(GNEadditionalParametersMap))
114 FXIMPLEMENT(
GNEAdditionalFrame::NeteditAttributes, FXGroupBox, GNEEditorParametersMap, ARRAYNUMBER(GNEEditorParametersMap))
115 FXIMPLEMENT(
GNEAdditionalFrame::SelectorParentAdditional, FXGroupBox, GNEadditionalParentSelectorMap, ARRAYNUMBER(GNEadditionalParentSelectorMap))
116 FXIMPLEMENT(
GNEAdditionalFrame::SelectorParentEdges, FXGroupBox, GNEedgeParentsSelectorMap, ARRAYNUMBER(GNEedgeParentsSelectorMap))
117 FXIMPLEMENT(
GNEAdditionalFrame::SelectorParentLanes, FXGroupBox, GNElaneParentsSelectorMap, ARRAYNUMBER(GNElaneParentsSelectorMap))
124 GNEFrame(horizontalFrameParent, viewNet, "Additionals"),
128 myGroupBoxForMyAdditionalMatchBox =
new FXGroupBox(myContentFrame,
"Additional element",
GUIDesignGroupBoxFrame);
150 myAdditionalMatchBox->appendItem(
toString(i).c_str());
154 myAdditionalMatchBox->setNumVisible((
int)myAdditionalMatchBox->getNumItems());
160 setParametersOfAdditional(myActualAdditionalType);
192 pointed_junction =
dynamic_cast<GNEJunction*
>(netElement);
193 if (pointed_junction != NULL) {
210 if (dynamic_cast<GNELane*>(netElement) != NULL) {
211 pointed_edge = &(
dynamic_cast<GNELane*
>(netElement)->getParentEdge());
213 if (pointed_edge != NULL) {
229 pointed_lane =
dynamic_cast<GNELane*
>(netElement);
230 if (pointed_lane != NULL) {
246 pointed_crossing =
dynamic_cast<GNECrossing*
>(netElement);
247 if (pointed_crossing != NULL) {
274 double positionOfTheMouseOverEdge = pointed_edge->
getLanes().at(0)->getShape().nearest_offset_to_point2D(currentPosition);
294 }
else if (pointed_lane) {
324 double end = GNEAttributeCarrier::parse<double>(valuesOfElement[
SUMO_ATTR_END]);
358 std::vector<std::string> vectorOfIds;
362 for (
auto i : selectedEdges) {
363 vectorOfIds.push_back(i->getID());
381 std::vector<std::string> vectorOfIds;
385 for (
auto i : selectedLanes) {
386 vectorOfIds.push_back(i->getID());
413 std::set<GUIGlID> deselected;
414 deselected.insert(additional->
getGlID());
426 bool additionalNameCorrect =
false;
434 additionalNameCorrect =
true;
438 if (additionalNameCorrect ==
false) {
528 return positionOfTheMouseOverLane;
530 return positionOfTheMouseOverLane - lengthOfAdditional;
532 return positionOfTheMouseOverLane - lengthOfAdditional / 2;
543 return positionOfTheMouseOverLane + lengthOfAdditional;
545 return positionOfTheMouseOverLane;
547 return positionOfTheMouseOverLane + lengthOfAdditional / 2;
687 if (GNEAttributeCarrier::canParse<int>(
myTextFieldInt->getText().text())) {
689 int intValue = GNEAttributeCarrier::parse<int>(
myTextFieldInt->getText().text());
699 if (GNEAttributeCarrier::canParse<double>(
myTextFieldReal->getText().text())) {
701 double doubleValue = GNEAttributeCarrier::parse<double>(
myTextFieldReal->getText().text());
703 if (doubleValue < 0) {
710 if (GNEAttributeCarrier::canParse<double>(
myTextFieldReal->getText().text())) {
712 double doubleValue = GNEAttributeCarrier::parse<double>(
myTextFieldReal->getText().text());
726 myInvalidValue =
"input contains invalid characters for a filename";
767 myNumberOfVisibleTextfields(1),
768 myMaxNumberOfValuesInParameterList(20) {
831 FXVerticalFrame::show();
844 FXVerticalFrame::hide();
865 value += (
myTextFields.at(i)->getText().text() + std::string(
" "));
884 getParent()->recalc();
896 getParent()->recalc();
909 myIndexParameterList(0),
911 maxNumberOfListParameters(2) {
987 WRITE_WARNING(
"Attribute '" +
toString(AdditionalAttributeSingle) +
"' doesn't have a defined type. Check definition in GNEAttributeCarrier");
1011 std::map<SumoXMLAttr, std::string>
1013 std::map<SumoXMLAttr, std::string> values;
1028 std::string errorMessage;
1033 if (attributeValue.size() != 0) {
1034 errorMessage = attributeValue;
1045 if (extra.size() == 0) {
1091 FXTable* myTable =
new FXTable(helpDialog,
this,
MID_TABLE, TABLE_READONLY);
1093 myTable->setVisibleColumns(3);
1095 myTable->setBackColor(FXRGB(255, 255, 255));
1096 myTable->setColumnText(0,
"Name");
1097 myTable->setColumnText(1,
"Value");
1098 myTable->setColumnText(2,
"Definition");
1099 myTable->getRowHeader()->setWidth(0);
1100 FXHeader* header = myTable->getColumnHeader();
1101 header->setItemJustify(0, JUSTIFY_CENTER_X);
1102 header->setItemSize(0, 120);
1103 header->setItemJustify(1, JUSTIFY_CENTER_X);
1104 header->setItemSize(1, 80);
1105 int maxSizeColumnDefinitions = 0;
1111 myTable->setItem(i, 0,
new FXTableItem(
toString(additionalAttr).c_str()));
1113 FXTableItem* type =
new FXTableItem(
"");
1115 type->setText(
"int");
1117 type->setText(
"float");
1119 type->setText(
"time");
1121 type->setText(
"bool");
1123 type->setText(
"color");
1125 type->setText(
"string");
1127 type->setJustify(FXTableItem::CENTER_X);
1128 myTable->setItem(i, 1, type);
1131 definition->setJustify(FXTableItem::LEFT);
1132 myTable->setItem(i, 2, definition);
1142 myTable->setItem(i, 0,
new FXTableItem(
toString(additionalAttr).c_str()));
1144 FXTableItem* type =
new FXTableItem(
"");
1146 type->setText(
"list of integers");
1148 type->setText(
"list of floats");
1150 type->setText(
"list of times");
1152 type->setText(
"list of booleans");
1154 type->setText(
"list of strings");
1156 type->setJustify(FXTableItem::CENTER_X);
1157 myTable->setItem(i, 1, type);
1160 definition->setJustify(FXTableItem::LEFT);
1161 myTable->setItem(i, 2, definition);
1167 header->setItemJustify(2, JUSTIFY_CENTER_X);
1168 header->setItemSize(2, maxSizeColumnDefinitions * 6);
1171 helpDialog->create();
1182 myActualAdditionalReferencePoint(GNE_ADDITIONALREFERENCEPOINT_LEFT),
1183 myCurrentLengthValid(true) {
1252 if (GNEAttributeCarrier::canParse<double>(
myLengthTextField->getText().text()) &&
1305 FXDialogBox* helpDialog =
new FXDialogBox(
this,
"Parameter editor Help",
GUIDesignDialogBox);
1306 std::ostringstream help;
1308 <<
"Referece point: Mark the initial position of the additional element.\n" 1309 <<
"Example: If you want to create a busStop with a length of 30 in the point 100 of the lane:\n" 1310 <<
"- Reference Left will create it with startPos = 70 and endPos = 100.\n" 1311 <<
"- Reference Right will create it with startPos = 100 and endPos = 130.\n" 1312 <<
"- Reference Center will create it with startPos = 85 and endPos = 115.\n" 1314 <<
"Block movement: if is enabled, the created additional element will be blocked. i.e. cannot be moved with\n" 1315 <<
"the mouse. This option can be modified with the Inspector.";
1319 helpDialog->create();
1328 std::string vectorOfIds;
1329 for (
int i = 0; i < list->getNumItems(); i++) {
1330 if (list->isItemSelected(i)) {
1331 if (vectorOfIds.size() > 0) {
1334 vectorOfIds += (list->getItem(i)->getText()).
text();
1348 myUniqueSelection(false),
1370 for (
int i = 0; i <
myList->getNumItems(); i++) {
1371 if (
myList->isItemSelected(i)) {
1372 return myList->getItem(i)->getText().text();
1387 for (
auto i : vectorOfAdditionalParents) {
1388 myList->appendItem(i->getID().c_str());
1462 for (
auto i : vectorOfEdges) {
1464 if (i->getID().find(search) != std::string::npos) {
1465 myList->appendItem(i->getID().c_str());
1545 for (
int i = 0; i <
myList->getNumItems(); i++) {
1546 if (
myList->getItem(i)->isSelected()) {
1556 for (
int i = 0; i <
myList->getNumItems(); i++) {
1557 if (
myList->getItem(i)->isSelected()) {
1569 std::cout <<
"IMPLEMENT" << std::endl;
1619 for (
auto i : vectorOfLanes) {
1620 if (i->getID().find(search) != std::string::npos) {
1621 myList->appendItem(i->getID().c_str());
1697 for (
int i = 0; i <
myList->getNumItems(); i++) {
1698 if (
myList->getItem(i)->isSelected()) {
1708 for (
int i = 0; i <
myList->getNumItems(); i++) {
1709 if (
myList->getItem(i)->isSelected()) {
double setStartPosition(double positionOfTheMouseOverLane, double lengthOfAdditional)
obtain the Start position values of StoppingPlaces and E2 detector over the lane
std::string getIdsSelected() const
get list of selecte id's in string format
SelectorParentAdditional()
FOX needs this.
double getLaneShapeLength() const
returns the length of the lane's shape
double getLength() const
get value of length
int maxNumberOfListParameters
max number of parameters (Defined in constructor)
FXButton * helpLanes
button for help
std::vector< GNELane * > retrieveLanes(bool onlySelected=false)
return all lanes
SumoXMLTag
Numbers representing SUMO-XML - element names.
long onCmdSelectReferencePoint(FXObject *, FXSelector, void *)
Called when user enters another reference point.
SumoXMLAttr myAdditionalAttr
current XML attribute
additionalReferencePoint myActualAdditionalReferencePoint
actual additional reference point selected in the match Box
#define GUIDesignComboBoxNCol
number of column of every combo box
AddAdditionalResult addAdditional(GNENetElement *netElement, GUISUMOAbstractView *abstractViewParent)
add additional element
#define GUIDesignCheckButtonAttribute
checkButton without thick extended over the frame used for attributes
int maxNumberOfParameters
max number of parameters (Defined in constructor)
invert selection of edges
static bool isFloat(SumoXMLTag tag, SumoXMLAttr attr)
whether an attribute is numerical of type float
GNEViewNet * myViewNet
pointer to viewNet
long onCmdHelp(FXObject *, FXSelector, void *)
Called when help button is pressed.
FXCheckButton * myUseSelectedLanesCheckButton
CheckBox for selected lanes.
bool isUseSelectedEdgesEnable() const
get status of checkBox UseSelectedEdges
FXButton * myRemoveButton
Button to decrease the number of textFields.
long onCmdSelectLane(FXObject *, FXSelector, void *)
called when user select a lane of the list
begin/end of the description of a single lane
double nearest_offset_to_point2D(const Position &p, bool perpendicular=true) const
return the nearest offest to point 2D
int getNumberOfAddedAttributes() const
get number of added attributes
GNEAdditionalFrame::AdditionalAttributes * myadditionalParameters
additional internal attributes
FXDEFMAP(GNEAdditionalFrame) GNEAdditionalMap[]
int myNumberOfVisibleTextfields
number of visible text fields
~AdditionalAttributeList()
destructor
bool isCurrentLengthValid() const
check if current length is valid
void hideAdditionalParameters()
hide group box
std::string getValue() const
return value
FXList * myList
List of additional sets.
FXTextField * myTextFieldStrings
textField to modify the default value of string parameters
FXComboBox * myReferencePointMatchBox
match box with the list of reference points
SumoXMLAttr getAttr() const
return attribute of list
static bool buildAdditional(GNEViewNet *viewNet, bool allowUndoRedo, SumoXMLTag tag, std::map< SumoXMLAttr, std::string > values)
Build additionals.
additionalReferencePoint
FOX-declaration.
double setEndPosition(double laneLength, double positionOfTheMouseOverLane, double lengthOfAdditional)
obtain the End position values of StoppingPlaces and E2 detector over the lane
FXCheckButton * myBoolCheckButton
check button to enable/disable the value of boolean parameters
long onCmdHelp(FXObject *, FXSelector, void *)
FXButton * myClearEdgesSelection
button for clear selection
std::string myInvalidValue
string which indicates the reason due current value is invalid
void remove2Update()
Removes the dialog to be updated.
static bool isPositive(SumoXMLTag tag, SumoXMLAttr attr)
whether an attribute is only Positive (i.e. cannot take negative values)
void hideList()
hide SelectorParentLanes
long onCmdRemoveRow(FXObject *, FXSelector, void *)
add a new row int the list
long onCmdSelectAdditional(FXObject *, FXSelector, void *)
bool isSelected(GUIGlObjectType type, GUIGlID id)
Returns the information whether the object with the given type and id is selected.
int myIndexParameter
Index for myVectorOfsingleAdditionalParameter.
This lane is powered by an underlying GNEEdge and basically knows how to draw itself.
long onCmdAddRow(FXObject *, FXSelector, void *)
void p_begin(const std::string &description)
Begin undo command sub-group. This begins a new group of commands that are treated as a single comman...
FXTextField * myLengthTextField
textField for length
SumoXMLAttr
Numbers representing SUMO-XML - attributes.
show only selected edge in a list
Position snapToActiveGrid(const Position &pos) const
Returns a position that is mapped to the closest grid point if the grid is active.
static bool isValidFilename(const std::string &value)
true if value is a valid file value
long onCmdTypeInSearchBox(FXObject *, FXSelector, void *)
called when user type in search box
GNEViewNet * myViewNet
viewNet associated to GNEAdditionalFrame
static const std::vector< std::pair< SumoXMLAttr, std::string > > & allowedAttributes(SumoXMLTag tag)
get all editable attributes for tag and their default values.
GUIGlID getGlID() const
Returns the numerical id of the object.
void setParametersOfAdditional(SumoXMLTag actualAdditionalType)
set parameters depending of the new additionalType
bool myCurrentLengthValid
Flag to check if current length is valid.
int getNumberOfAdditionals(SumoXMLTag type=SUMO_TAG_NOTHING) const
Returns the number of additionals of the net.
#define WRITE_WARNING(msg)
FXTextField * myEdgesSearch
text field for search edge IDs
void showList(std::string search="")
Show list of SelectorParentEdges.
static OptionsCont & getOptions()
Retrieves the options.
const std::string & isAttributeValid() const
returns a empty string if current value is valid, a string with information about invalid value in ot...
FXButton * myInvertEdgesSelection
button for invert selection
std::string getIdSelected() const
get if currently additional Set
bool isBlockEnabled() const
check if block is enabled
GNEUndoList * getUndoList() const
get the undoList object
additional match box messages
static bool isString(SumoXMLTag tag, SumoXMLAttr attr)
whether an attribute is of type string
#define GUIDesignComboBox
GNEViewNet * myViewNet
the window to inform when the tls is modfied
FXCheckButton * myUseSelectedEdgesCheckButton
CheckBox for selected edges.
bool isUseSelectedLanesEnable() const
get status of checkBox UseSelectedLanes
static bool isInt(SumoXMLTag tag, SumoXMLAttr attr)
whether an attribute is numerical or type int
static bool isTime(SumoXMLTag tag, SumoXMLAttr attr)
whether an attribute is time
AdditionalAttributeList()
FOX needs this.
FXButton * clearLanesSelection
button for clear selection
SumoXMLTag getTag() const
return tag
std::map< SumoXMLAttr, std::string > getAttributesAndValues() const
get attributes and their values
#define GUIDesignList
design for FXLists
FXLabel * myLengthLabel
Label for length.
void hideLengthFieldAndReferecePoint()
hide length field
SumoXMLAttr getAttr() const
return Attr
long onCmdSetAttribute(FXObject *, FXSelector, void *)
#define GUIDesignTextField
std::string toString(const T &t, std::streamsize accuracy=gPrecision)
static bool hasAttribute(SumoXMLTag tag, SumoXMLAttr attr)
check if an element with certain tag has a certain attribute
This object is responsible for drawing a shape and for supplying a a popup menu. Messages are routete...
void addAttribute(SumoXMLTag additionalTag, SumoXMLAttr AdditionalAttributeSingle)
add attribute
static bool isColor(SumoXMLTag tag, SumoXMLAttr attr)
whether an attribute is of type color for a certain tag
void p_end()
End undo command sub-group. If the sub-group is still empty, it will be deleted; otherwise, the sub-group will be added as a new command into parent group. A matching begin() must have been called previously.
A point in 2D or 3D with translation and scaling methods.
#define GUIDesignAuxiliarHorizontalFrame
design for auxiliar (Without borders) horizontal frame used to pack another frames ...
FXList * myList
List of SelectorParentLanes.
std::vector< FXLabel * > myLabels
vector with with the name of every parameter
long onCmdUseSelectedEdges(FXObject *, FXSelector, void *)
int myIndexParameterList
index for myIndexParameterList
static bool isFilename(SumoXMLTag tag, SumoXMLAttr attr)
whether a string attribute is a filename
long onCmdInvertSelection(FXObject *, FXSelector, void *)
called when invert selection button is pressed
SumoXMLTag myActualAdditionalType
actual additional type selected in the match Box
FXButton * myHelpAdditionalParentSelector
button for help
SelectorParentLanes()
FOX needs this.
long onCmdHelp(FXObject *, FXSelector, void *)
Called when help button is pressed.
~AdditionalAttributes()
destructor
void removeAdditional(GNEAdditional *additional)
remove an additional element previously added
block movement of a graphic element
SelectorParentEdges()
FOX needs this.
static T getDefaultValue(SumoXMLTag tag, SumoXMLAttr attr)
return the default value of the attribute of an element
SumoXMLAttr myAdditionalAttr
current XML attribute
~GNEAdditionalFrame()
Destructor.
~NeteditAttributes()
destructor
FXLabel * myBlockLabel
Label for block movement.
~SelectorParentLanes()
destructor
FXComboBox * myAdditionalMatchBox
combo box with the list of additional elements
FXTextField * myLanesSearch
text field for search lane IDs
AdditionalAttributes()
FOX needs this.
GNEAdditionalFrame::NeteditAttributes * myEditorParameters
Netedit parameter.
SumoXMLTag myAdditionalTag
current XML tag
void showWarningMessage(std::string extra="") const
show warning message with information about non-valid attributes
void clearAttributes()
clear attributes
long onCmdClearSelection(FXObject *, FXSelector, void *)
called when clear selection button is pressed
const std::string getID() const
function to support debugging
#define GUIDesignButtonRectangular
little button rectangular (46x23) used in frames (For example, in "help" buttons) ...
std::vector< FXTextField * > myTextFields
vector textField to modify the value of parameter
additionalReferencePoint getActualReferencePoint() const
get actual reference point
void hideListOfAdditionals()
hide SelectorParentAdditional
#define GUIDesignButtonIcon
button only with icon (23x23)
FXButton * myAddButton
Button to increase the number of textFields.
begin/end of the description of an edge
std::vector< GNEAdditional * > getAdditionals(SumoXMLTag type=SUMO_TAG_NOTHING) const
get vector with additionals
GNEAdditionalFrame::SelectorParentLanes * mylaneParentsSelector
list of SelectorParentLanes
long onCmdClearSelection(FXObject *, FXSelector, void *)
called when clear selection button is pressed
GNEAdditionalFrame::SelectorParentEdges * myedgeParentsSelector
list of SelectorParentEdges
void showList(std::string search="")
Show list of SelectorParentLanes.
invert selection of lanes
void hideParameter()
hide all parameters
FXButton * helpAdditional
button for help
FXList * myList
List of SelectorParentEdges.
A road/street connecting two junctions (netedit-version)
static bool isUnique(SumoXMLTag tag, SumoXMLAttr attr)
whether an attribute is unique (may not be edited for a multi-selection and don't have a default valu...
bool areValuesValid() const
check if parameters of attributes are valid
#define GUIDesignTextFieldNCol
Num of column of text field.
~AdditionalAttributeSingle()
destructor
SumoXMLTag myAdditionalTag
current XML attribute
FXLabel * myLabel
lael with the name of the parameter
GNEAdditional * getAdditional(SumoXMLTag type, const std::string &id) const
Returns the named additional.
~SelectorParentAdditional()
destructor
AddAdditionalResult
FOX-declaration.
void hideParameter()
hide all parameters
long onCmdSetBlocking(FXObject *, FXSelector, void *)
Called when user changes the checkbox "set blocking".
SumoXMLTag myAdditionalTag
current additional tag
std::string generateID(GNENetElement *netElement) const
generate a ID for an additiona element
const PositionVector & getShape() const
returns the shape of the lane
const std::vector< GNELane * > & getLanes()
returns a reference to the lane vector
virtual void show()
show Frame
static bool isProbability(SumoXMLTag tag, SumoXMLAttr attr)
whether an attribute is a probability (i.e. oly can values between [0, 1])
long onCmdUseSelectedLanes(FXObject *, FXSelector, void *)
#define GUIDesignDialogBox
FXLabel * mySetLabel
Label with the name of additional.
static const std::vector< SumoXMLTag > & allowedAdditionalTags()
get all editable for tag additional elements
void show()
show additional frame and update use selected edges/lanes
std::vector< GNEEdge * > retrieveEdges(bool onlySelected=false)
return all edges
void showAdditionalParameters()
show group box
void showParameter(SumoXMLTag additionalTag, SumoXMLAttr additionalAttr, std::string value)
show name and value of attribute of type string
void showListParameter(SumoXMLTag additionalTag, SumoXMLAttr additionalAttr, std::vector< int > value)
show name and value of parameters of type int
An Element which don't belongs to GNENet but has influency in the simulation.
#define GUIDesignGroupBoxFrame
Group box design extended over frame.
static bool isBool(SumoXMLTag tag, SumoXMLAttr attr)
whether an attribute is of type bool for a certain tag
GNEViewNet * myViewNet
viewNet associated to GNEAdditionalFrame
~SelectorParentEdges()
destructor
std::string getListValues()
return the value of list
bool myUniqueSelection
flag to check if only a single parent is allowed
void showListOfAdditionals(SumoXMLTag type, bool uniqueSelection)
Show list of SelectorParentAdditional.
long onCmdSetBooleanAttribute(FXObject *, FXSelector, void *)
called when user change the value of myBoolCheckButton
void updateUseSelectedEdges()
Update use selectedEdges.
static std::string getDefinition(SumoXMLTag tag, SumoXMLAttr attr)
return definition of a certain SumoXMLAttr
GNENet * getNet() const
get the net object
#define GUIDesignTextFieldInt
text field extended over Frame with thick frame and limited to Integers
virtual void hide()
hide Frame
long onCmdHelp(FXObject *, FXSelector, void *)
Called when user press the help button.
SumoXMLTag getTag() const
return tag of list
#define GUIDesignTextFieldReal
text field extended over Frame with thick frame and limited to Doubles/doubles
void hideList()
hide SelectorParentEdges
#define GUIDesignButtonOK
SumoXMLTag getTag() const
get XML Tag assigned to this object
void setStatusBarText(const std::string &text)
set staturBar text
long onCmdInvertSelection(FXObject *, FXSelector, void *)
called when invert selection button is pressed
void showLengthFieldAndReferecePoint()
show length field and reference point
FXButton * invertLanesSelection
button for invert selection
parent of an additional element
long onCmdHelp(FXObject *, FXSelector, void *)
Called when help button is pressed.
bool isCurrentListValid() const
check that current list is valid
#define GUIDesignLabelLeft
GNEAdditionalFrame::SelectorParentAdditional * myAdditionalParentSelector
list of additional Set
AdditionalAttributeSingle()
FOX needs this.
FXTextField * myTextFieldInt
textField to modify the default value of int/float/string parameters
Position getPositionInformation() const
Returns the cursor's x/y position within the network.
static std::string getIdsSelected(const FXList *list)
get list of selecte id's in string format
std::string getIdsSelected() const
get list of selecte id's in string format
#define GUIDesignLabelAttribute
label extended over the matrix column with thick frame
long onCmdSetLength(FXObject *, FXSelector, void *)
FXHorizontalFrame * myHorizontalFrameButtons
horizontal frame for buttons
std::vector< FXHorizontalFrame * > myHorizontalFrames
Vector with HorizontalFrames.
GUISelectedStorage gSelected
A global holder of selected objects.
long onCmdTypeInSearchBox(FXObject *, FXSelector, void *)
called when user type in search box
int myMaxNumberOfValuesInParameterList
Number max of values in a parameter of type list.
GNEViewNet * myViewNet
viewNet associated to GNEAdditionalFrame
long onCmdSelectAdditionalParent(FXObject *, FXSelector, void *)
static FXIcon * getIcon(GUIIcon which)
returns a icon previously defined in the enum GUIIcon
std::vector< AdditionalAttributeSingle * > myVectorOfsingleAdditionalParameter
vector with the additional parameters
std::vector< AdditionalAttributeList * > myVectorOfsingleAdditionalParameterList
vector with the additional parameters of type list
#define GUIDesignLabelLeftThick
label extended over frame with thick and with text justify to left
std::string joinToString(const std::vector< T > &v, const T_BETWEEN &between, std::streamsize accuracy=gPrecision)
void updateUseSelectedLanes()
long onCmdSelectEdge(FXObject *, FXSelector, void *)
called when user select a edge of the list
static bool isList(SumoXMLTag tag, SumoXMLAttr attr)
whether an attribute is of type bool
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.
FXButton * myHelpedgeParentsSelector
button for help