Eclipse SUMO - Simulation of Urban MObility
GNEFrameAttributesModuls.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-2019 German Aerospace Center (DLR) and others.
4 // This program and the accompanying materials
5 // are made available under the terms of the Eclipse Public License v2.0
6 // which accompanies this distribution, and is available at
7 // http://www.eclipse.org/legal/epl-v20.html
8 // SPDX-License-Identifier: EPL-2.0
9 /****************************************************************************/
14 // Auxiliar class for GNEFrame Moduls (only for attributes edition)
15 /****************************************************************************/
16 #ifndef GNEFrameAttributesModuls_h
17 #define GNEFrameAttributesModuls_h
18 
19 // ===========================================================================
20 // included modules
21 // ===========================================================================
22 #include <config.h>
23 
26 
27 // ===========================================================================
28 // class declaration
29 // ===========================================================================
30 
31 class GNEFrame;
32 
33 // ===========================================================================
34 // class definitions
35 // ===========================================================================
36 
38 
39 public:
40  // ===========================================================================
41  // class declaration
42  // ===========================================================================
43 
44  class AttributesCreator;
45  class AttributesEditor;
48 
49  // ===========================================================================
50  // class AttributesCreatorRow
51  // ===========================================================================
52 
53  class AttributesCreatorRow : public FXHorizontalFrame {
56 
57  public:
59  AttributesCreatorRow(AttributesCreator* AttributesCreatorParent, const GNEAttributeCarrier::AttributeProperties& attrProperties);
60 
62  void destroy();
63 
66 
68  std::string getValue() const;
69 
71  bool getAttributeCheckButtonCheck() const;
72 
74  void setAttributeCheckButtonCheck(bool value);
75 
78 
81 
83  bool isAttributesCreatorRowEnabled() const;
84 
86  void refreshRow() const;
87 
89  const std::string& isAttributeValid() const;
90 
93 
97  long onCmdSetAttribute(FXObject*, FXSelector, void*);
98 
100  long onCmdSelectCheckButton(FXObject*, FXSelector, void*);
101 
103  long onCmdSelectColorButton(FXObject*, FXSelector, void*);
105 
106  protected:
108 
109 
110  std::string checkComplexAttribute(const std::string& value);
111 
113  std::string generateID() const;
114 
116  bool isValidID() const;
117 
118  private:
121 
124 
126  std::string myInvalidValue;
127 
129  FXLabel* myAttributeLabel = nullptr;
130 
132  FXCheckButton* myAttributeCheckButton = nullptr;
133 
135  FXButton* myAttributeColorButton = nullptr;
136 
138  FXTextField* myValueTextField = nullptr;
139 
141  FXCheckButton* myValueCheckButton = nullptr;
142  };
143 
144  // ===========================================================================
145  // class AttributesCreator
146  // ===========================================================================
147 
148  class AttributesCreator : public FXGroupBox {
151 
152  // declare friend class
153  friend class Row;
154 
155  public:
157  AttributesCreator(GNEFrame* frameParent);
158 
161 
166  void showAttributesCreatorModul(const GNEAttributeCarrier::TagProperties& tagProperties, const std::vector<SumoXMLAttr>& hiddenAttributes);
167 
170 
172  GNEFrame* getFrameParent() const;
173 
175  std::map<SumoXMLAttr, std::string> getAttributesAndValues(bool includeAll) const;
176 
178  GNEAttributeCarrier::TagProperties getCurrentTagProperties() const;
179 
181  bool areValuesValid() const;
182 
184  void showWarningMessage(std::string extra = "") const;
185 
189  long onCmdHelp(FXObject*, FXSelector, void*);
191 
193  void refreshRows();
194 
195  protected:
197 
198  private:
201 
204 
207 
210 
212  FXButton* myHelpButton = nullptr;
213  };
214 
215  // ===========================================================================
216  // class AttributesCreatorFlow
217  // ===========================================================================
218 
219  class AttributesCreatorFlow : public FXGroupBox {
222 
223  public:
225  AttributesCreatorFlow(AttributesCreator* attributesCreatorParent);
226 
229 
231  void showAttributesCreatorFlowModul();
232 
234  void hideAttributesCreatorFlowModul();
235 
237  void refreshAttributesCreatorFlow();
238 
240  void setFlowParameters(std::map<SumoXMLAttr, std::string>& parameters);
241 
243  bool areValuesValid() const;
244 
246  void showWarningMessage(std::string extra = "") const;
247 
251  long onCmdSetFlowAttribute(FXObject*, FXSelector, void*);
252 
254  long onCmdSelectFlowRadioButton(FXObject*, FXSelector, void*);
256 
257  protected:
259 
260  private:
263 
265  FXRadioButton* myAttributeEndRadioButton = nullptr;
266 
268  FXTextField* myValueEndTextField = nullptr;
269 
271  FXRadioButton* myAttributeNumberRadioButton = nullptr;
272 
274  FXTextField* myValueNumberTextField = nullptr;
275 
277  FXRadioButton* myAttributeVehsPerHourRadioButton = nullptr;
278 
280  FXTextField* myValueVehsPerHourTextField = nullptr;
281 
283  FXRadioButton* myAttributePeriodRadioButton = nullptr;
284 
286  FXTextField* myValuePeriodTextField = nullptr;
287 
289  FXRadioButton* myAttributeProbabilityRadioButton = nullptr;
290 
292  FXTextField* myValueProbabilityTextField = nullptr;
293 
296  };
297 
298  // ===========================================================================
299  // class AttributesEditorRow
300  // ===========================================================================
301 
302  class AttributesEditorRow : protected FXHorizontalFrame {
305 
306  public:
308  AttributesEditorRow(AttributesEditor* attributeEditorParent, const GNEAttributeCarrier::AttributeProperties& ACAttr, const std::string& value, bool attributeEnabled);
309 
311  void destroy();
312 
314  void refreshAttributesEditorRow(const std::string& value, bool forceRefresh, bool attributeEnabled);
315 
317  bool isAttributesEditorRowValid() const;
318 
321 
323  long onCmdSetAttribute(FXObject*, FXSelector, void*);
324 
326  long onCmdSelectCheckButton(FXObject*, FXSelector, void*);
327 
329  long onCmdOpenAttributeDialog(FXObject*, FXSelector, void*);
331 
332  protected:
334 
336  std::string stripWhitespaceAfterComma(const std::string& stringValue);
337 
338  private:
340  AttributesEditor* myAttributesEditorParent = nullptr;
341 
344 
346  const bool myMultiple;
347 
349  FXLabel* myAttributeLabel = nullptr;
350 
352  FXCheckButton* myAttributeCheckButton = nullptr;
353 
355  FXButton* myAttributeButtonCombinableChoices = nullptr;
356 
358  FXButton* myAttributeColorButton = nullptr;
359 
361  FXTextField* myValueTextField = nullptr;
362 
364  FXComboBox* myValueComboBoxChoices = nullptr;
365 
367  FXCheckButton* myValueCheckButton = nullptr;
368  };
369 
370  // ===========================================================================
371  // class AttributesEditor
372  // ===========================================================================
373 
374  class AttributesEditor : public FXGroupBox {
377 
378  public:
380  AttributesEditor(GNEFrame* inspectorFrameParent);
381 
383  void showAttributeEditorModul(const std::vector<GNEAttributeCarrier*>& ACs, bool includeExtended, bool forceAttributeEnabled);
384 
386  void hideAttributesEditorModul();
387 
389  void refreshAttributeEditor(bool forceRefreshShape, bool forceRefreshPosition);
390 
392  GNEFrame* getFrameParent() const;
393 
395  const std::vector<GNEAttributeCarrier*>& getEditedACs() const;
396 
398  void removeEditedAC(GNEAttributeCarrier* AC);
399 
403  long onCmdAttributesEditorHelp(FXObject*, FXSelector, void*);
405 
406  protected:
408 
409  private:
412 
414  AttributesEditorFlow* myAttributesEditorFlow = nullptr;
415 
417  std::vector<AttributesEditorRow*> myAttributesEditorRows;
418 
420  FXButton* myHelpButton = nullptr;
421 
423  std::vector<GNEAttributeCarrier*> myEditedACs;
424 
427  };
428 
429  // ===========================================================================
430  // class AttributesEditorFlow
431  // ===========================================================================
432 
433  class AttributesEditorFlow : protected FXGroupBox {
436 
437  public:
439  AttributesEditorFlow(AttributesEditor* attributesEditorParent);
440 
442  void showAttributeEditorFlowModul();
443 
445  void hideAttributesEditorFlowModul();
446 
448  bool isAttributesEditorFlowModulShown() const;
449 
451  void refreshAttributeEditorFlow();
452 
456  long onCmdSetFlowAttribute(FXObject*, FXSelector, void*);
457 
459  long onCmdSelectFlowRadioButton(FXObject*, FXSelector, void*);
461 
462  protected:
464 
465 
466  void refreshEnd();
467 
469  void refreshNumber();
470 
472  void refreshVehsPerHour();
473 
475  void refreshPeriod();
476 
478  void refreshProbability();
479 
480  private:
482  AttributesEditor* myAttributesEditorParent = nullptr;
483 
485  FXRadioButton* myAttributeEndRadioButton = nullptr;
486 
488  FXTextField* myValueEndTextField = nullptr;
489 
491  FXRadioButton* myAttributeNumberRadioButton = nullptr;
492 
494  FXTextField* myValueNumberTextField = nullptr;
495 
497  FXRadioButton* myAttributeVehsPerHourRadioButton = nullptr;
498 
500  FXTextField* myValueVehsPerHourTextField = nullptr;
501 
503  FXRadioButton* myAttributePeriodRadioButton = nullptr;
504 
506  FXTextField* myValuePeriodTextField = nullptr;
507 
509  FXRadioButton* myAttributeProbabilityRadioButton = nullptr;
510 
512  FXTextField* myValueProbabilityTextField = nullptr;
513  };
514 
515  // ===========================================================================
516  // class AttributesEditorExtended
517  // ===========================================================================
518 
519  class AttributesEditorExtended : protected FXGroupBox {
522 
523  public:
525  AttributesEditorExtended(GNEFrame* frameParent);
526 
529 
531  void showAttributesEditorExtendedModul();
532 
534  void hideAttributesEditorExtendedModul();
535 
539  long onCmdOpenDialog(FXObject*, FXSelector, void*);
541 
542  protected:
544 
545  private:
548  };
549 
550  // ===========================================================================
551  // class ParametersEditor
552  // ===========================================================================
553 
554  class ParametersEditor : private FXGroupBox {
557 
558  public:
560  ParametersEditor(GNEFrame* frameParent);
561 
563  ~ParametersEditor();
564 
566  void showParametersEditor(GNEAttributeCarrier* AC);
567 
569  void showParametersEditor(std::vector<GNEAttributeCarrier*> ACs);
570 
572  void hideParametersEditor();
573 
575  void refreshParametersEditor();
576 
578  const std::map<std::string, std::string>& getParametersMap() const;
579 
581  std::string getParametersStr() const;
582 
584  std::vector<std::pair<std::string, std::string> > getParametersVectorStr() const;
585 
587  void setParameters(const std::vector<std::pair<std::string, std::string> >& parameters);
588 
590  GNEFrame* getFrameParent() const;
591 
595  long onCmdEditParameters(FXObject*, FXSelector, void*);
596 
598  long onCmdSetParameters(FXObject*, FXSelector, void*);
600 
601  protected:
603 
604  private:
607 
609  GNEAttributeCarrier* myAC = nullptr;
610 
612  std::vector<GNEAttributeCarrier*> myACs;
613 
615  std::map<std::string, std::string> myParameters;
616 
618  FXTextField* myTextFieldParameters = nullptr;
619 
621  FXButton* myButtonEditParameters = nullptr;
622  };
623 
624  // ===========================================================================
625  // class DrawingShape
626  // ===========================================================================
627 
628  class DrawingShape : private FXGroupBox {
631 
632  public:
634  DrawingShape(GNEFrame* frameParent);
635 
637  ~DrawingShape();
638 
640  void showDrawingShape();
641 
643  void hideDrawingShape();
644 
646  void startDrawing();
647 
649  void stopDrawing();
650 
652  void abortDrawing();
653 
655  void addNewPoint(const Position& P);
656 
658  void removeLastPoint();
659 
661  const PositionVector& getTemporalShape() const;
662 
664  bool isDrawing() const;
665 
667  void setDeleteLastCreatedPoint(bool value);
668 
670  bool getDeleteLastCreatedPoint();
671 
675  long onCmdStartDrawing(FXObject*, FXSelector, void*);
676 
678  long onCmdStopDrawing(FXObject*, FXSelector, void*);
679 
681  long onCmdAbortDrawing(FXObject*, FXSelector, void*);
683 
684  protected:
686 
687  private:
690 
693 
696 
699 
702 
705 
708  };
709 
710  // ===========================================================================
711  // class NeteditAttributes
712  // ===========================================================================
713 
714  class NeteditAttributes : protected FXGroupBox {
717 
718  public:
720  NeteditAttributes(GNEFrame* frameParent);
721 
724 
726  void showNeteditAttributesModul(const GNEAttributeCarrier::TagProperties& tagValue);
727 
729  void hideNeteditAttributesModul();
730 
732  bool getNeteditAttributesAndValues(std::map<SumoXMLAttr, std::string>& valuesMap, const GNELane* lane) const;
733 
737  long onCmdSetNeteditAttribute(FXObject*, FXSelector, void*);
738 
740  long onCmdHelp(FXObject*, FXSelector, void*);
742 
743  protected:
745 
746  private:
752  GNE_ADDITIONALREFERENCEPOINT_INVALID
753  };
754 
756  double setStartPosition(double positionOfTheMouseOverLane, double lengthOfAdditional) const;
757 
759  double setEndPosition(double positionOfTheMouseOverLane, double lengthOfAdditional) const;
760 
763 
766 
768  FXHorizontalFrame* myLengthFrame;
769 
771  FXTextField* myLengthTextField;
772 
774  FXHorizontalFrame* myBlockMovementFrame;
775 
778 
780  FXHorizontalFrame* myBlockShapeFrame;
781 
783  FXCheckButton* myBlockShapeCheckButton;
784 
786  FXHorizontalFrame* myCloseShapeFrame;
787 
789  FXCheckButton* myCloseShapeCheckButton;
790 
792  FXHorizontalFrame* myCenterViewAfterCreationFrame;
793 
796 
799 
802 
805  };
806 };
807 
808 
809 #endif
810 
811 /****************************************************************************/
GNEFrameAttributesModuls::AttributesEditorRow
Definition: GNEFrameAttributesModuls.h:302
GNEFrameAttributesModuls::AttributesCreatorRow::getAttributesCreatorParent
AttributesCreator * getAttributesCreatorParent() const
get AttributesCreator parent
Definition: GNEFrameAttributesModuls.cpp:313
GNEFrameAttributesModuls::NeteditAttributes::AdditionalReferencePoint
AdditionalReferencePoint
list of the reference points
Definition: GNEFrameAttributesModuls.h:748
GNEFrameAttributesModuls::NeteditAttributes::myCloseShapeFrame
FXHorizontalFrame * myCloseShapeFrame
horizontal frame for close polygon
Definition: GNEFrameAttributesModuls.h:786
GNEAttributeCarrier::TagProperties
struct with the attribute Properties
Definition: GNEAttributeCarrier.h:317
GNEFrameAttributesModuls::AttributesCreatorRow::checkComplexAttribute
std::string checkComplexAttribute(const std::string &value)
check if given complex attribute is valid
Definition: GNEFrameAttributesModuls.cpp:505
GNEFrameAttributesModuls::AttributesCreatorRow
Definition: GNEFrameAttributesModuls.h:53
GNEFrameAttributesModuls::AttributesEditorFlow
Definition: GNEFrameAttributesModuls.h:433
GNEFrameAttributesModuls::AttributesCreator::myHelpButton
FXButton * myHelpButton
help button
Definition: GNEFrameAttributesModuls.h:212
GNEFrameAttributesModuls::AttributesCreatorRow::AttributesCreatorRow
AttributesCreatorRow(AttributesCreator *AttributesCreatorParent, const GNEAttributeCarrier::AttributeProperties &attrProperties)
FOX-declaration.
Definition: GNEFrameAttributesModuls.cpp:116
GNEFrameAttributesModuls::NeteditAttributes::myCloseShapeCheckButton
FXCheckButton * myCloseShapeCheckButton
checkbox to enable/disable close polygon
Definition: GNEFrameAttributesModuls.h:789
GNEFrameAttributesModuls::AttributesCreatorFlow::FOX_CONSTRUCTOR
FOX_CONSTRUCTOR(AttributesCreatorFlow)
GNEFrameAttributesModuls::NeteditAttributes
Definition: GNEFrameAttributesModuls.h:714
GNEFrameAttributesModuls::AttributesCreator::getCurrentTagProperties
GNEAttributeCarrier::TagProperties getCurrentTagProperties() const
get current edited Tag Properties
Definition: GNEFrameAttributesModuls.cpp:698
GNEFrameAttributesModuls::AttributesCreatorRow::enableAttributesCreatorRow
void enableAttributesCreatorRow()
enable row
Definition: GNEFrameAttributesModuls.cpp:266
GNEFrameAttributesModuls::AttributesCreator
Definition: GNEFrameAttributesModuls.h:148
GNEFrameAttributesModuls::AttributesEditor::myAttributesEditorRows
std::vector< AttributesEditorRow * > myAttributesEditorRows
list of Attribute editor rows
Definition: GNEFrameAttributesModuls.h:417
GNEFrameAttributesModuls::NeteditAttributes::GNE_ADDITIONALREFERENCEPOINT_RIGHT
@ GNE_ADDITIONALREFERENCEPOINT_RIGHT
Definition: GNEFrameAttributesModuls.h:750
GNEFrameAttributesModuls::AttributesCreator::areValuesValid
bool areValuesValid() const
check if parameters of attributes are valid
Definition: GNEFrameAttributesModuls.cpp:731
GNEFrameAttributesModuls::AttributesEditor::myEditedACs
std::vector< GNEAttributeCarrier * > myEditedACs
the multi-selection currently being inspected
Definition: GNEFrameAttributesModuls.h:423
GNEFrameAttributesModuls::AttributesCreatorRow::isAttributeValid
const std::string & isAttributeValid() const
returns a empty string if current value is valid, a string with information about invalid value in ot...
Definition: GNEFrameAttributesModuls.cpp:307
GNEFrame
Definition: GNEFrame.h:34
GNEFrameAttributesModuls::AttributesCreator::myTagProperties
GNEAttributeCarrier::TagProperties myTagProperties
current edited Tag Properties
Definition: GNEFrameAttributesModuls.h:206
GNEFrameAttributesModuls::AttributesCreatorRow::myAttributeCheckButton
FXCheckButton * myAttributeCheckButton
check button to enable/disable Label attribute
Definition: GNEFrameAttributesModuls.h:132
GNEFrameAttributesModuls::AttributesCreator::getFrameParent
GNEFrame * getFrameParent() const
return frame parent
Definition: GNEFrameAttributesModuls.cpp:665
GNEFrameAttributesModuls::DrawingShape::myFrameParent
GNEFrame * myFrameParent
pointer to frame parent
Definition: GNEFrameAttributesModuls.h:689
GNEFrameAttributesModuls::DrawingShape::myTemporalShapeShape
PositionVector myTemporalShapeShape
current drawed shape
Definition: GNEFrameAttributesModuls.h:695
GNEFrameAttributesModuls::NeteditAttributes::helpReferencePoint
FXButton * helpReferencePoint
Button for help about the reference point.
Definition: GNEFrameAttributesModuls.h:798
PositionVector
A list of positions.
Definition: PositionVector.h:45
GNEFrameAttributesModuls::AttributesCreatorRow::isValidID
bool isValidID() const
check if current ID placed in myValueTextField is valid
Definition: GNEFrameAttributesModuls.cpp:577
GNEFrameAttributesModuls::DrawingShape::myStopDrawingButton
FXButton * myStopDrawingButton
button for stop drawing
Definition: GNEFrameAttributesModuls.h:701
GNEFrameAttributesModuls::NeteditAttributes::myBlockMovementFrame
FXHorizontalFrame * myBlockMovementFrame
horizontal frame for block movement
Definition: GNEFrameAttributesModuls.h:774
GNEFrameAttributesModuls::AttributesCreator::myAttributesCreatorFlow
AttributesCreatorFlow * myAttributesCreatorFlow
pointer to myAttributesCreatorFlow
Definition: GNEFrameAttributesModuls.h:203
GNEFrameAttributesModuls::AttributesCreatorFlow::myAttributesCreatorParent
AttributesCreator * myAttributesCreatorParent
pointer to Attributes Creator Parent
Definition: GNEFrameAttributesModuls.h:262
GNEFrameAttributesModuls::AttributesEditor
Definition: GNEFrameAttributesModuls.h:374
GNEFrameAttributesModuls::AttributesCreator::hideAttributesCreatorModul
void hideAttributesCreatorModul()
hide group box
Definition: GNEFrameAttributesModuls.cpp:659
GNEFrameAttributesModuls::NeteditAttributes::myActualAdditionalReferencePoint
AdditionalReferencePoint myActualAdditionalReferencePoint
actual additional reference point selected in the match Box
Definition: GNEFrameAttributesModuls.h:804
GNEFrameAttributesModuls::AttributesCreator::Row
friend class Row
FOX-declaration.
Definition: GNEFrameAttributesModuls.h:153
GNEFrameAttributesModuls::AttributesCreator::getAttributesAndValues
std::map< SumoXMLAttr, std::string > getAttributesAndValues(bool includeAll) const
get attributes and their values
Definition: GNEFrameAttributesModuls.cpp:671
GNEFrameAttributesModuls::DrawingShape::myAbortDrawingButton
FXButton * myAbortDrawingButton
button for abort drawing
Definition: GNEFrameAttributesModuls.h:704
GNEFrameAttributesModuls::AttributesCreatorRow::getAttributeCheckButtonCheck
bool getAttributeCheckButtonCheck() const
return status of label checkbox button
Definition: GNEFrameAttributesModuls.cpp:233
GNEFrameAttributesModuls::AttributesCreatorRow::myValueTextField
FXTextField * myValueTextField
textField to modify the default value of string parameters
Definition: GNEFrameAttributesModuls.h:138
GNEFrameAttributesModuls::AttributesEditorExtended
Definition: GNEFrameAttributesModuls.h:519
GNEFrameAttributesModuls::AttributesCreatorRow::myAttributeLabel
FXLabel * myAttributeLabel
Label with the name of the attribute.
Definition: GNEFrameAttributesModuls.h:129
GNEAttributeCarrier::AttributeProperties
struct with the attribute Properties
Definition: GNEAttributeCarrier.h:97
GNEFrameAttributesModuls::AttributesEditorRow::myMultiple
const bool myMultiple
flag to check if input element contains multiple values
Definition: GNEFrameAttributesModuls.h:346
GNEFrameAttributesModuls::NeteditAttributes::myReferencePointMatchBox
FXComboBox * myReferencePointMatchBox
match box with the list of reference points
Definition: GNEFrameAttributesModuls.h:765
GNEFrameAttributesModuls::AttributesCreatorRow::refreshRow
void refreshRow() const
refresh row
Definition: GNEFrameAttributesModuls.cpp:298
GNEFrameAttributesModuls::DrawingShape::myInformationLabel
FXLabel * myInformationLabel
Label with information.
Definition: GNEFrameAttributesModuls.h:707
GNEFrameAttributesModuls::AttributesCreator::myFrameParent
GNEFrame * myFrameParent
pointer to Frame Parent
Definition: GNEFrameAttributesModuls.h:200
GNEFrameAttributesModuls::AttributesCreatorRow::setAttributeCheckButtonCheck
void setAttributeCheckButtonCheck(bool value)
enable or disable label checkbox button for optional attributes
Definition: GNEFrameAttributesModuls.cpp:243
FOX_CONSTRUCTOR
#define FOX_CONSTRUCTOR(classname)
Definition: config.h:13
GNEFrameAttributesModuls::AttributesCreatorRow::myAttributesCreatorParent
AttributesCreator * myAttributesCreatorParent
pointer to AttributesCreator
Definition: GNEFrameAttributesModuls.h:120
GNEFrameAttributesModuls::AttributesCreatorRow::getValue
std::string getValue() const
return value
Definition: GNEFrameAttributesModuls.cpp:223
Position
A point in 2D or 3D with translation and scaling methods.
Definition: Position.h:38
GNEFrameAttributesModuls::NeteditAttributes::myBlockShapeFrame
FXHorizontalFrame * myBlockShapeFrame
horizontal frame for block shape
Definition: GNEFrameAttributesModuls.h:780
GNEFrameAttributesModuls::AttributesCreatorRow::onCmdSelectColorButton
long onCmdSelectColorButton(FXObject *, FXSelector, void *)
called when user press the "Color" button
Definition: GNEFrameAttributesModuls.cpp:485
GNEFrameAttributesModuls::AttributesCreatorRow::onCmdSetAttribute
long onCmdSetAttribute(FXObject *, FXSelector, void *)
Definition: GNEFrameAttributesModuls.cpp:319
GNEFrameAttributesModuls::ParametersEditor
Definition: GNEFrameAttributesModuls.h:554
GNEFrameAttributesModuls::NeteditAttributes::myCurrentLengthValid
bool myCurrentLengthValid
Flag to check if current length is valid.
Definition: GNEFrameAttributesModuls.h:801
GNEFrameAttributesModuls::ParametersEditor::myACs
std::vector< GNEAttributeCarrier * > myACs
list of edited ACs
Definition: GNEFrameAttributesModuls.h:612
GNEFrameAttributesModuls::AttributesCreatorRow::myInvalidValue
std::string myInvalidValue
string which indicates the reason due current value is invalid
Definition: GNEFrameAttributesModuls.h:126
GNEFrameAttributesModuls::AttributesCreator::refreshRows
void refreshRows()
refresh rows (called after creating an element)
Definition: GNEFrameAttributesModuls.cpp:744
GNEFrameAttributesModuls::NeteditAttributes::myBlockMovementCheckButton
FXCheckButton * myBlockMovementCheckButton
checkBox for block movement
Definition: GNEFrameAttributesModuls.h:777
GNEFrameAttributesModuls::NeteditAttributes::myLengthTextField
FXTextField * myLengthTextField
textField for length
Definition: GNEFrameAttributesModuls.h:771
GNEFrameAttributesModuls::AttributesCreator::onCmdHelp
long onCmdHelp(FXObject *, FXSelector, void *)
Definition: GNEFrameAttributesModuls.cpp:752
GNEFrameAttributesModuls::NeteditAttributes::myCenterViewAfterCreationButton
FXCheckButton * myCenterViewAfterCreationButton
checkbox to enable/disable center element after creation
Definition: GNEFrameAttributesModuls.h:795
GNEFrameAttributesModuls::AttributesCreatorFlow
Definition: GNEFrameAttributesModuls.h:219
GNEFrameAttributesModuls::AttributesCreatorRow::isAttributesCreatorRowEnabled
bool isAttributesCreatorRowEnabled() const
check if row is enabled
Definition: GNEFrameAttributesModuls.cpp:286
GNEFrameAttributesModuls::AttributesCreatorRow::myAttributeColorButton
FXButton * myAttributeColorButton
Button for open color editor.
Definition: GNEFrameAttributesModuls.h:135
GNEFrameAttributesModuls::AttributesCreatorRow::destroy
void destroy()
destroy AttributesCreatorRow (but don't delete)
Definition: GNEFrameAttributesModuls.cpp:208
GNEFrameAttributesModuls::AttributesCreator::FOX_CONSTRUCTOR
FOX_CONSTRUCTOR(AttributesCreator)
GNEFrameAttributesModuls
Definition: GNEFrameAttributesModuls.h:37
GNEFrameAttributesModuls::AttributesCreatorRow::getAttrProperties
const GNEAttributeCarrier::AttributeProperties & getAttrProperties() const
return Attr
Definition: GNEFrameAttributesModuls.cpp:217
GNEFrameAttributesModuls::AttributesCreatorRow::myAttrProperties
const GNEAttributeCarrier::AttributeProperties myAttrProperties
attribute properties
Definition: GNEFrameAttributesModuls.h:123
GNEFrameAttributesModuls::DrawingShape::myDeleteLastCreatedPoint
bool myDeleteLastCreatedPoint
flag to enable/disable delete point mode
Definition: GNEFrameAttributesModuls.h:692
GNEFrameAttributesModuls::NeteditAttributes::GNE_ADDITIONALREFERENCEPOINT_LEFT
@ GNE_ADDITIONALREFERENCEPOINT_LEFT
Definition: GNEFrameAttributesModuls.h:749
GNEFrameAttributesModuls::AttributesEditorRow::myACAttr
const GNEAttributeCarrier::AttributeProperties myACAttr
current AC Attribute
Definition: GNEFrameAttributesModuls.h:343
GNEAttributeCarrier.h
GNEFrameAttributesModuls::AttributesCreatorRow::onCmdSelectCheckButton
long onCmdSelectCheckButton(FXObject *, FXSelector, void *)
called when user press a check button
Definition: GNEFrameAttributesModuls.cpp:468
GNEFrameAttributesModuls::NeteditAttributes::myBlockShapeCheckButton
FXCheckButton * myBlockShapeCheckButton
checkBox for block shape
Definition: GNEFrameAttributesModuls.h:783
config.h
GNEFrameAttributesModuls::AttributesCreatorRow::generateID
std::string generateID() const
generate ID
Definition: GNEFrameAttributesModuls.cpp:563
GNEFrameAttributesModuls::NeteditAttributes::myLengthFrame
FXHorizontalFrame * myLengthFrame
horizontal frame for length
Definition: GNEFrameAttributesModuls.h:768
GNEViewNetHelper.h
GNEFrameAttributesModuls::AttributesCreatorFlow::myFlowParameters
int myFlowParameters
variable used to save current flow configuration
Definition: GNEFrameAttributesModuls.h:295
GNEFrameAttributesModuls::AttributesEditor::myIncludeExtended
bool myIncludeExtended
flag used to mark if current edited ACs are bein edited including extended attribute
Definition: GNEFrameAttributesModuls.h:426
GNEFrameAttributesModuls::NeteditAttributes::GNE_ADDITIONALREFERENCEPOINT_CENTER
@ GNE_ADDITIONALREFERENCEPOINT_CENTER
Definition: GNEFrameAttributesModuls.h:751
SumoXMLAttr
SumoXMLAttr
Numbers representing SUMO-XML - attributes.
Definition: SUMOXMLDefinitions.h:372
GNEFrameAttributesModuls::AttributesCreatorRow::disableAttributesCreatorRow
void disableAttributesCreatorRow()
disable row
Definition: GNEFrameAttributesModuls.cpp:276
GNEFrameAttributesModuls::ParametersEditor::myParameters
std::map< std::string, std::string > myParameters
pointer to current map of parameters
Definition: GNEFrameAttributesModuls.h:615
GNEFrameAttributesModuls::DrawingShape::myStartDrawingButton
FXButton * myStartDrawingButton
button for start drawing
Definition: GNEFrameAttributesModuls.h:698
GNELane
This lane is powered by an underlying GNEEdge and basically knows how to draw itself.
Definition: GNELane.h:45
GNEFrameAttributesModuls::AttributesCreatorRow::myValueCheckButton
FXCheckButton * myValueCheckButton
check button to enable/disable the value of boolean parameters
Definition: GNEFrameAttributesModuls.h:141
GNEAttributeCarrier
Definition: GNEAttributeCarrier.h:54
GNEFrameAttributesModuls::AttributesCreator::showAttributesCreatorModul
void showAttributesCreatorModul(const GNEAttributeCarrier::TagProperties &tagProperties, const std::vector< SumoXMLAttr > &hiddenAttributes)
show AttributesCreator modul
Definition: GNEFrameAttributesModuls.cpp:603
GNEFrameAttributesModuls::AttributesCreator::showWarningMessage
void showWarningMessage(std::string extra="") const
show warning message with information about non-valid attributes
Definition: GNEFrameAttributesModuls.cpp:704
GNEFrameAttributesModuls::AttributesCreator::myAttributesCreatorRows
std::vector< AttributesCreatorRow * > myAttributesCreatorRows
vector with the AttributesCreatorRow
Definition: GNEFrameAttributesModuls.h:209
GNEFrameAttributesModuls::DrawingShape
Definition: GNEFrameAttributesModuls.h:628
GNEFrameAttributesModuls::NeteditAttributes::myCenterViewAfterCreationFrame
FXHorizontalFrame * myCenterViewAfterCreationFrame
horizontal frame for center view after creation frame
Definition: GNEFrameAttributesModuls.h:792
GNEFrameAttributesModuls::NeteditAttributes::myFrameParent
GNEFrame * myFrameParent
pointer to frame parent
Definition: GNEFrameAttributesModuls.h:762