Eclipse SUMO - Simulation of Urban MObility
GUIGlChildWindow.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 /****************************************************************************/
20 //
21 /****************************************************************************/
22 #pragma once
23 #include <config.h>
24 
25 #include <fx.h>
26 
27 #include "GUISUMOAbstractView.h"
28 
29 
30 // ===========================================================================
31 // class definitions
32 // ===========================================================================
36 class GUIGlChildWindow : public FXMDIChild {
37  FXDECLARE(GUIGlChildWindow)
38 public:
40  GUIGlChildWindow(FXMDIClient* p, GUIMainWindow* parentWindow,
41  FXMDIMenu* mdimenu, const FXString& name, FXMenuBar* gripNavigationToolbar,
42  FXIcon* ic = NULL, FXuint opts = 0, FXint x = 0, FXint y = 0, FXint w = 0, FXint h = 0);
43 
45  virtual ~GUIGlChildWindow();
46 
48  virtual FXGLCanvas* getBuildGLCanvas() const;
49 
51  virtual void create();
52 
55 
60 
63  long onCmdRecenterView(FXObject*, FXSelector, void*);
64  long onCmdEditViewport(FXObject*, FXSelector, void*);
65  long onCmdEditViewScheme(FXObject*, FXSelector, void*);
66  long onCmdShowToolTips(FXObject* sender, FXSelector, void*);
67  long onCmdZoomStyle(FXObject* sender, FXSelector, void*);
68  long onCmdChangeColorScheme(FXObject*, FXSelector sel, void*);
70 
73 
75  FXPopup* getLocatorPopup();
76 
78  FXComboBox* getColoringSchemesCombo();
79 
83  void setView(GUIGlID id);
84 
86  virtual bool isSelected(GUIGlObject* o) const;
87 
88 protected:
89  FOX_CONSTRUCTOR(GUIGlChildWindow)
90 
91 
93 
96 
99 
102 
104  FXPopup* myLocatorPopup;
105 
107  FXMenuButton* myLocatorButton;
108 
110  FXVerticalFrame* myContentFrame;
111 
113  FXComboBox* myColoringSchemes;
114 
116  void buildNavigationToolBar();
117 
119  void buildColoringToolBar();
120 
122  void buildScreenshotToolBar();
123 
124 private:
127 
129  GUIGlChildWindow& operator=(const GUIGlChildWindow&) = delete;
130 };
unsigned int GUIGlID
Definition: GUIGlObject.h:40
virtual void create()
create GUIGlChildWindow
GUISUMOAbstractView * myView
The view.
long onCmdChangeColorScheme(FXObject *, FXSelector sel, void *)
FXComboBox * myColoringSchemes
The coloring schemes.
FXMenuButton * myLocatorButton
The locator button.
long onCmdEditViewScheme(FXObject *, FXSelector, void *)
virtual ~GUIGlChildWindow()
destructor
long onCmdEditViewport(FXObject *, FXSelector, void *)
FXVerticalFrame * myContentFrame
The contents frame.
FXToolBar * getNavigationToolBar(GUISUMOAbstractView &v)
return a reference to navigation toolbar
FXPopup * myLocatorPopup
The locator menu.
long onCmdShowToolTips(FXObject *sender, FXSelector, void *)
void setView(GUIGlID id)
Centers the view onto the given artifact.
long onCmdZoomStyle(FXObject *sender, FXSelector, void *)
FXComboBox * getColoringSchemesCombo()
return combobox with the current coloring schemes (standard, fastest standard, real world....
void buildColoringToolBar()
build coloring toolbar
void buildScreenshotToolBar()
build screenshot toolbar
virtual bool isSelected(GUIGlObject *o) const
true if the object is selected (may include extra logic besides calling gSelected)
long onCmdRecenterView(FXObject *, FXSelector, void *)
FXPopup * getLocatorPopup()
@ brief return a pointer to locator popup
GUISUMOAbstractView * getView() const
return GUISUMOAbstractView
GUIMainWindow * myParent
The parent window.
virtual FXGLCanvas * getBuildGLCanvas() const
get build GL Canvas
FXToolBar * myStaticNavigationToolBar
The static navigation tool bar.
void buildNavigationToolBar()
build navigation toolbar
GUIMainWindow * getParent()
Returns the main window.
FXMenuBar * myGripNavigationToolbar
The grip navigation tool bar.
GUIGlChildWindow(FXMDIClient *p, GUIMainWindow *parentWindow, FXMDIMenu *mdimenu, const FXString &name, FXMenuBar *gripNavigationToolbar, FXIcon *ic=NULL, FXuint opts=0, FXint x=0, FXint y=0, FXint w=0, FXint h=0)
constructor