Eclipse SUMO - Simulation of Urban MObility
GNEMatchGenericDataAttribute.h
Go to the documentation of this file.
1 /****************************************************************************/
2 // Eclipse SUMO, Simulation of Urban MObility; see https://eclipse.dev/sumo
3 // Copyright (C) 2001-2024 German Aerospace Center (DLR) and others.
4 // This program and the accompanying materials are made available under the
5 // terms of the Eclipse Public License 2.0 which is available at
6 // https://www.eclipse.org/legal/epl-2.0/
7 // This Source Code may also be made available under the following Secondary
8 // Licenses when the conditions for such availability set forth in the Eclipse
9 // Public License 2.0 are satisfied: GNU General Public License, version 2
10 // or later which is available at
11 // https://www.gnu.org/licenses/old-licenses/gpl-2.0-standalone.html
12 // SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-or-later
13 /****************************************************************************/
18 // The Widget for modifying selections of network-elements
19 // (some elements adapted from GUIDialog_GLChosenEditor)
20 /****************************************************************************/
21 #pragma once
22 #include <config.h>
23 
24 #include "GNESelectorFrame.h"
25 
26 // ===========================================================================
27 // class definitions
28 // ===========================================================================
29 
33 
34 public:
36  GNEMatchGenericDataAttribute(GNEElementSet* elementSet, SumoXMLTag defaultTag, SumoXMLAttr defaultAttr, const std::string& defaultValue);
37 
40 
43 
46 
49 
52 
55 
57  long onCmdSetInterval(FXObject*, FXSelector, void*);
58 
60  long onCmdSetBegin(FXObject*, FXSelector, void*);
61 
63  long onCmdSetEnd(FXObject*, FXSelector, void*);
64 
66  long onCmdSetFromTAZ(FXObject*, FXSelector, void*);
67 
69  long onCmdSetToTAZ(FXObject*, FXSelector, void*);
70 
72  long onCmdSelectTag(FXObject*, FXSelector, void*);
73 
75  long onCmdSelectAttribute(FXObject*, FXSelector, void*);
76 
78  long onCmdProcessString(FXObject*, FXSelector, void*);
79 
81  long onCmdHelp(FXObject*, FXSelector, void*);
82 
84 
85 protected:
87  FOX_CONSTRUCTOR(GNEMatchGenericDataAttribute)
88 
89 
90  void updateTAZComboBox();
91 
92 private:
95 
98 
100  FXTextField* myBegin;
101 
103  FXTextField* myEnd;
104 
107 
109  FXHorizontalFrame* myTAZHorizontalFrame;
110 
113 
116 
119 
122 
124  std::string myCurrentAttribute;
125 
128 
129  // declare a set and fill it with all intervals
130  std::map<std::pair<double, double>, int> myIntervals;
131 
134 
137 };
SumoXMLTag
Numbers representing SUMO-XML - element names.
SumoXMLAttr
Numbers representing SUMO-XML - attributes.
long onCmdHelp(FXObject *, FXSelector, void *)
Called when the user clicks the help button.
long onCmdSetToTAZ(FXObject *, FXSelector, void *)
Called when the user change toTAZ text field.
long onCmdSetBegin(FXObject *, FXSelector, void *)
Called when the user change begin text field.
void disableMatchGenericDataAttribute()
disable match attributes
SumoXMLTag myCurrentTag
current SumoXMLTag tag
void enableMatchGenericDataAttribute()
enable match attributes
void hideMatchGenericDataAttribute()
hide match attributes
long onCmdSetInterval(FXObject *, FXSelector, void *)
Called when the user selects an interval.
std::string myCurrentAttribute
current string Attribute
GNEElementSet * myElementSet
pointer to element set Parent
FXTextField * myEnd
TextField for end.
MFXComboBoxIcon * myIntervalSelector
tag of the match box
FXTextField * myMatchGenericDataString
string of the match
MFXComboBoxIcon * myMatchGenericDataTagComboBox
tag of the match box
long onCmdSelectTag(FXObject *, FXSelector, void *)
Called when the user selects a tag in the match box.
long onCmdSetFromTAZ(FXObject *, FXSelector, void *)
Called when the user change fromTAZ text field.
void showMatchGenericDataAttribute()
show match attributes
MFXComboBoxIcon * myFromTAZComboBox
TextField for fromTAZ.
long onCmdSelectAttribute(FXObject *, FXSelector, void *)
Called when the user selects an attribute in the match box.
long onCmdProcessString(FXObject *, FXSelector, void *)
Called when the user enters a new selection expression.
FXTextField * myBegin
TextField for begin.
MFXComboBoxIcon * myToTAZComboBox
TextField for toTAZ.
GNEMatchGenericDataAttribute(GNEElementSet *elementSet, SumoXMLTag defaultTag, SumoXMLAttr defaultAttr, const std::string &defaultValue)
FOX-declaration.
GNEMatchGenericDataAttribute(const GNEMatchGenericDataAttribute &)=delete
Invalidated copy constructor.
long onCmdSetEnd(FXObject *, FXSelector, void *)
Called when the user change end text field.
GNEMatchGenericDataAttribute & operator=(const GNEMatchGenericDataAttribute &)=delete
Invalidated assignment operator.
MFXComboBoxIcon * myMatchGenericDataAttrComboBox
attributes of the match box
std::map< std::pair< double, double >, int > myIntervals
FXHorizontalFrame * myTAZHorizontalFrame
horizontal frame for TAZs,
ComboBox with icon.
MFXGroupBoxModule (based on FXGroupBox)