Eclipse SUMO - Simulation of Urban MObility
GNEVehicleFrame.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-2020 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 add Vehicles/Flows/Trips/etc. elements
19 /****************************************************************************/
20 #pragma once
21 
23 
24 
25 // ===========================================================================
26 // class definitions
27 // ===========================================================================
31 class GNEVehicleFrame : public GNEFrame {
32 
33 public:
34 
35  // ===========================================================================
36  // class HelpCreation
37  // ===========================================================================
38 
39  class HelpCreation : protected FXGroupBox {
40 
41  public:
43  HelpCreation(GNEVehicleFrame* vehicleFrameParent);
44 
46  ~HelpCreation();
47 
49  void showHelpCreation();
50 
52  void hideHelpCreation();
53 
55  void updateHelpCreation();
56 
57  private:
60 
63  };
64 
69  GNEVehicleFrame(FXHorizontalFrame* horizontalFrameParent, GNEViewNet* viewNet);
70 
73 
75  void show();
76 
78  void hide();
79 
85  bool addVehicle(const GNEViewNetHelper::ObjectsUnderCursor& objectsUnderCursor, const GNEViewNetHelper::MouseButtonKeyPressed& mouseButtonKeyPressed);
86 
89 
90 protected:
92  void tagSelected();
93 
95  void demandElementSelected();
96 
98  void createPath();
99 
100 private:
103 
106 
109 
112 
115 };
void showHelpCreation()
show HelpCreation
void hideHelpCreation()
hide HelpCreation
void updateHelpCreation()
update HelpCreation
GNEVehicleFrame * myVehicleFrameParent
pointer to Vehicle Frame Parent
HelpCreation(GNEVehicleFrame *vehicleFrameParent)
constructor
FXLabel * myInformationLabel
Label with creation information.
GNEFrameModuls::TagSelector * myVehicleTagSelector
vehicle tag selector (used to select diffent kind of vehicles)
void hide()
hide Frame
GNEFrameModuls::PathCreator * getPathCreator() const
get PathCreator modul
~GNEVehicleFrame()
Destructor.
void show()
show Frame
void createPath()
create path
bool addVehicle(const GNEViewNetHelper::ObjectsUnderCursor &objectsUnderCursor, const GNEViewNetHelper::MouseButtonKeyPressed &mouseButtonKeyPressed)
add vehicle element
void tagSelected()
Tag selected in TagSelector.
GNEFrameModuls::DemandElementSelector * myVTypeSelector
Vehicle Type selectors.
GNEVehicleFrame(FXHorizontalFrame *horizontalFrameParent, GNEViewNet *viewNet)
Constructor.
GNEFrameAttributesModuls::AttributesCreator * myVehicleAttributes
internal vehicle attributes
HelpCreation * myHelpCreation
Help creation.
GNEFrameModuls::PathCreator * myPathCreator
edge path creator (used for trips and flows)
void demandElementSelected()
selected vehicle type in DemandElementSelector
class used to group all variables related with objects under cursor after a click over view
class used to group all variables related with mouse buttons and key pressed after certain events