Eclipse SUMO - Simulation of Urban MObility
GNEVehicleTypeFrame.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 // The Widget for edit Vehicle Type elements
15 /****************************************************************************/
16 #ifndef GNEVehicleTypeFrame_h
17 #define GNEVehicleTypeFrame_h
18 
19 
20 // ===========================================================================
21 // included modules
22 // ===========================================================================
23 #include "GNEFrame.h"
24 
25 // ===========================================================================
26 // class declarations
27 // ===========================================================================
28 
29 class GNEVehicle;
30 
31 // ===========================================================================
32 // class definitions
33 // ===========================================================================
37 class GNEVehicleTypeFrame : public GNEFrame {
38 
39 public:
40 
41  // ===========================================================================
42  // class VehicleTypeSelector
43  // ===========================================================================
44 
45  class VehicleTypeSelector : protected FXGroupBox {
48 
49  public:
51  VehicleTypeSelector(GNEVehicleTypeFrame* vehicleTypeFrameParent);
52 
55 
58 
61 
64 
67 
71  long onCmdSelectItem(FXObject*, FXSelector, void*);
73 
74  protected:
76 
77  private:
80 
83 
85  FXComboBox* myTypeMatchBox;
86  };
87 
88  // ===========================================================================
89  // class VehicleTypeEditor
90  // ===========================================================================
91 
92  class VehicleTypeEditor : protected FXGroupBox {
95 
96  public:
98  VehicleTypeEditor(GNEVehicleTypeFrame* vehicleTypeFrameParent);
99 
102 
105 
108 
111 
115  long onCmdCreateVehicleType(FXObject*, FXSelector, void*);
116 
118  long onCmdDeleteVehicleType(FXObject*, FXSelector, void*);
119 
121  long onCmdResetVehicleType(FXObject*, FXSelector, void*);
122 
124  long onCmdCopyVehicleType(FXObject*, FXSelector, void*);
126 
127  protected:
129 
130  private:
133 
136 
139 
142 
145  };
146 
151  GNEVehicleTypeFrame(FXHorizontalFrame* horizontalFrameParent, GNEViewNet* viewNet);
152 
155 
157  void show();
158 
161 
162 protected:
164  void attributeUpdated();
165 
168 
169 private:
172 
175 
178 
181 };
182 
183 
184 #endif
185 
186 /****************************************************************************/
GNEVehicleTypeFrame::VehicleTypeEditor::myCreateVehicleTypeButton
FXButton * myCreateVehicleTypeButton
"create vehicle type" button
Definition: GNEVehicleTypeFrame.h:135
GNEVehicleTypeFrame::VehicleTypeEditor::hideVehicleTypeEditorModul
void hideVehicleTypeEditorModul()
hide VehicleTypeEditor box
Definition: GNEVehicleTypeFrame.cpp:217
GNEVehicleTypeFrame::VehicleTypeSelector::~VehicleTypeSelector
~VehicleTypeSelector()
destructor
Definition: GNEVehicleTypeFrame.cpp:89
GNEVehicleTypeFrame::VehicleTypeEditor::showVehicleTypeEditorModul
void showVehicleTypeEditorModul()
show VehicleTypeEditor modul
Definition: GNEVehicleTypeFrame.cpp:210
GNEDemandElement
An Element which don't belongs to GNENet but has influency in the simulation.
Definition: GNEDemandElement.h:55
GNEVehicleTypeFrame::VehicleTypeSelector::refreshVehicleTypeSelectorIDs
void refreshVehicleTypeSelectorIDs()
refresh vehicle type selector (only IDs, without refreshing attributes)
Definition: GNEVehicleTypeFrame.cpp:151
GNEVehicleTypeFrame::VehicleTypeEditor::refreshVehicleTypeEditorModul
void refreshVehicleTypeEditorModul()
update VehicleTypeEditor modul
Definition: GNEVehicleTypeFrame.cpp:223
GNEVehicleTypeFrame::VehicleTypeSelector::onCmdSelectItem
long onCmdSelectItem(FXObject *, FXSelector, void *)
Definition: GNEVehicleTypeFrame.cpp:159
GNEVehicleTypeFrame::myVehicleTypeAttributesEditor
GNEFrameAttributesModuls::AttributesEditor * myVehicleTypeAttributesEditor
editorinternal vehicle type attributes
Definition: GNEVehicleTypeFrame.h:174
GNEVehicleTypeFrame
Definition: GNEVehicleTypeFrame.h:37
GNEFrame
Definition: GNEFrame.h:34
GNEVehicleTypeFrame::VehicleTypeSelector::getCurrentVehicleType
GNEDemandElement * getCurrentVehicleType() const
get current Vehicle Type
Definition: GNEVehicleTypeFrame.cpp:93
GNEVehicleTypeFrame::VehicleTypeEditor
Definition: GNEVehicleTypeFrame.h:92
GNEViewNet
Definition: GNEViewNet.h:42
GNEVehicleTypeFrame::attributeUpdated
void attributeUpdated()
function called after set a valid attribute in AttributeCreator/AttributeEditor/ParametersEditor/....
Definition: GNEVehicleTypeFrame.cpp:413
GNEVehicleTypeFrame::VehicleTypeEditor::myVehicleTypeFrameParent
GNEVehicleTypeFrame * myVehicleTypeFrameParent
pointer to vehicle type Frame Parent
Definition: GNEVehicleTypeFrame.h:132
GNEVehicleTypeFrame::VehicleTypeEditor::myResetDefaultVehicleTypeButton
FXButton * myResetDefaultVehicleTypeButton
"delete default vehicle type" button
Definition: GNEVehicleTypeFrame.h:141
GNEFrameAttributesModuls::AttributesEditor
Definition: GNEFrameAttributesModuls.h:374
GNEVehicleTypeFrame::VehicleTypeSelector::VehicleTypeSelector
VehicleTypeSelector(GNEVehicleTypeFrame *vehicleTypeFrameParent)
FOX-declaration.
Definition: GNEVehicleTypeFrame.cpp:61
GNEVehicleTypeFrame::VehicleTypeSelector::myCurrentVehicleType
GNEDemandElement * myCurrentVehicleType
pointer to current vehicle type
Definition: GNEVehicleTypeFrame.h:82
GNEVehicleTypeFrame::VehicleTypeEditor::onCmdCreateVehicleType
long onCmdCreateVehicleType(FXObject *, FXSelector, void *)
Definition: GNEVehicleTypeFrame.cpp:256
GNEFrameAttributesModuls::AttributesEditorExtended
Definition: GNEFrameAttributesModuls.h:519
GNEVehicleTypeFrame::VehicleTypeEditor::onCmdCopyVehicleType
long onCmdCopyVehicleType(FXObject *, FXSelector, void *)
Called when "Copy Vehicle Type" button is clicked.
Definition: GNEVehicleTypeFrame.cpp:343
FOX_CONSTRUCTOR
#define FOX_CONSTRUCTOR(classname)
Definition: config.h:13
GNEVehicleTypeFrame::GNEVehicleTypeFrame
GNEVehicleTypeFrame(FXHorizontalFrame *horizontalFrameParent, GNEViewNet *viewNet)
Constructor.
Definition: GNEVehicleTypeFrame.cpp:372
GNEVehicleTypeFrame::myVehicleTypeSelector
VehicleTypeSelector * myVehicleTypeSelector
vehicle type selector
Definition: GNEVehicleTypeFrame.h:171
GNEVehicleTypeFrame::myVehicleTypeEditor
VehicleTypeEditor * myVehicleTypeEditor
Vehicle Type editor (Create, copy, etc.)
Definition: GNEVehicleTypeFrame.h:180
GNEVehicleTypeFrame::VehicleTypeEditor::myCopyVehicleTypeButton
FXButton * myCopyVehicleTypeButton
"copy vehicle type"
Definition: GNEVehicleTypeFrame.h:144
GNEVehicleTypeFrame::VehicleTypeEditor::VehicleTypeEditor
VehicleTypeEditor(GNEVehicleTypeFrame *vehicleTypeFrameParent)
FOX-declaration.
Definition: GNEVehicleTypeFrame.cpp:192
GNEVehicleTypeFrame::VehicleTypeSelector::myTypeMatchBox
FXComboBox * myTypeMatchBox
comboBox with the list of elements type
Definition: GNEVehicleTypeFrame.h:85
GNEVehicleTypeFrame::show
void show()
show Frame
Definition: GNEVehicleTypeFrame.cpp:396
GNEVehicleTypeFrame::getVehicleTypeSelector
VehicleTypeSelector * getVehicleTypeSelector() const
get vehicle type selector
Definition: GNEVehicleTypeFrame.cpp:407
GNEVehicleTypeFrame::attributesEditorExtendedDialogOpened
void attributesEditorExtendedDialogOpened()
open AttributesCreator extended dialog (used for editing advance attributes of Vehicle Types)
Definition: GNEVehicleTypeFrame.cpp:420
GNEVehicleTypeFrame::VehicleTypeSelector::setCurrentVehicleType
void setCurrentVehicleType(GNEDemandElement *vType)
set current Vehicle Type
Definition: GNEVehicleTypeFrame.cpp:99
GNEVehicleTypeFrame::VehicleTypeEditor::onCmdDeleteVehicleType
long onCmdDeleteVehicleType(FXObject *, FXSelector, void *)
Called when "Delete Vehicle Type" button is clicked.
Definition: GNEVehicleTypeFrame.cpp:274
GNEVehicleTypeFrame::myAttributesEditorExtended
GNEFrameAttributesModuls::AttributesEditorExtended * myAttributesEditorExtended
modul for open extended attributes dialog
Definition: GNEVehicleTypeFrame.h:177
GNEVehicle
Definition: GNEVehicle.h:35
GNEVehicleTypeFrame::VehicleTypeSelector
Definition: GNEVehicleTypeFrame.h:45
GNEVehicleTypeFrame::VehicleTypeEditor::myDeleteVehicleTypeButton
FXButton * myDeleteVehicleTypeButton
"delete vehicle type" button
Definition: GNEVehicleTypeFrame.h:138
GNEVehicleTypeFrame::VehicleTypeEditor::~VehicleTypeEditor
~VehicleTypeEditor()
destructor
Definition: GNEVehicleTypeFrame.cpp:206
GNEFrame.h
GNEVehicleTypeFrame::VehicleTypeSelector::refreshVehicleTypeSelector
void refreshVehicleTypeSelector()
refresh vehicle type selector
Definition: GNEVehicleTypeFrame.cpp:106
GNEVehicleTypeFrame::VehicleTypeEditor::onCmdResetVehicleType
long onCmdResetVehicleType(FXObject *, FXSelector, void *)
Called when "Delete Vehicle Type" button is clicked.
Definition: GNEVehicleTypeFrame.cpp:316
GNEVehicleTypeFrame::VehicleTypeSelector::myVehicleTypeFrameParent
GNEVehicleTypeFrame * myVehicleTypeFrameParent
pointer to Frame Parent
Definition: GNEVehicleTypeFrame.h:79
GNEVehicleTypeFrame::~GNEVehicleTypeFrame
~GNEVehicleTypeFrame()
Destructor.
Definition: GNEVehicleTypeFrame.cpp:392