Eclipse SUMO - Simulation of Urban MObility
GUIGLObjectPopupMenu.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-2022 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
// The popup menu of a globject.
21
/****************************************************************************/
22
#pragma once
23
#include <config.h>
24
25
#include <vector>
26
#include <
utils/foxtools/fxheader.h
>
27
#include <
utils/geom/Position.h
>
28
29
30
// ===========================================================================
31
// class declarations
32
// ===========================================================================
33
class
GUISUMOAbstractView
;
34
class
GUIGlObject
;
35
class
GUIMainWindow
;
36
37
38
// ===========================================================================
39
// class definitions
40
// ===========================================================================
45
class
GUIGLObjectPopupMenu
:
public
FXMenuPane {
46
// FOX-declarations
47
FXDECLARE(
GUIGLObjectPopupMenu
)
48
49
public
:
50
52
enum class
PopupType
{
53
ATTRIBUTES,
54
PROPERTIES,
55
SELECT_ELEMENT,
56
DELETE_ELEMENT,
57
FRONT_ELEMENT
58
};
59
65
GUIGLObjectPopupMenu
(
GUIMainWindow
& app,
GUISUMOAbstractView
& parent,
GUIGlObject
& o);
66
71
GUIGLObjectPopupMenu
(
GUIMainWindow
* app,
GUISUMOAbstractView
* parent,
PopupType
popupType);
72
74
virtual
~GUIGLObjectPopupMenu
();
75
77
void
insertMenuPaneChild
(FXMenuPane* child);
78
80
GUISUMOAbstractView
*
getParentView
();
81
83
PopupType
getPopupType
()
const
;
84
88
long
onCmdCenter
(FXObject*, FXSelector,
void
*);
89
91
long
onCmdCopyName
(FXObject*, FXSelector,
void
*);
92
94
long
onCmdCopyTypedName
(FXObject*, FXSelector,
void
*);
95
97
long
onCmdCopyEdgeName
(FXObject*, FXSelector,
void
*);
98
100
long
onCmdCopyCursorPosition
(FXObject*, FXSelector,
void
*);
101
103
long
onCmdCopyCursorGeoPosition
(FXObject*, FXSelector,
void
*);
104
106
long
onCmdShowCursorGeoPositionOnline
(FXObject*, FXSelector,
void
*);
107
109
long
onCmdShowPars
(FXObject*, FXSelector,
void
*);
110
112
long
onCmdShowTypePars
(FXObject*, FXSelector,
void
*);
113
115
long
onCmdAddSelected
(FXObject*, FXSelector,
void
*);
116
118
long
onCmdRemoveSelected
(FXObject*, FXSelector,
void
*);
119
121
122
protected
:
124
GUIGLObjectPopupMenu
();
125
127
GUISUMOAbstractView
*
myParent
;
128
130
GUIGlObject
*
myObject
;
131
133
GUIMainWindow
*
myApplication
;
134
136
const
PopupType
myPopupType
;
137
139
const
Position
myNetworkPosition
;
140
142
std::vector<FXMenuPane*>
myMenuPanes
;
143
};
Position.h
GUIGLObjectPopupMenu
The popup menu of a globject.
Definition:
GUIGLObjectPopupMenu.h:45
GUIGLObjectPopupMenu::myObject
GUIGlObject * myObject
The object that belongs to this popup-menu.
Definition:
GUIGLObjectPopupMenu.h:130
GUIGLObjectPopupMenu::PopupType
PopupType
Definition:
GUIGLObjectPopupMenu.h:52
GUIGLObjectPopupMenu::myNetworkPosition
const Position myNetworkPosition
The position within the network the cursor was above when instanting the popup.
Definition:
GUIGLObjectPopupMenu.h:139
GUIGLObjectPopupMenu::onCmdCopyName
long onCmdCopyName(FXObject *, FXSelector, void *)
Called if the name shall be copied to clipboard.
Definition:
GUIGLObjectPopupMenu.cpp:139
GUIGLObjectPopupMenu::myParent
GUISUMOAbstractView * myParent
The parent window.
Definition:
GUIGLObjectPopupMenu.h:127
GUIGLObjectPopupMenu::onCmdCopyCursorPosition
long onCmdCopyCursorPosition(FXObject *, FXSelector, void *)
Called if the cursor position shall be copied to clipboard.
Definition:
GUIGLObjectPopupMenu.cpp:174
GUIGLObjectPopupMenu::getParentView
GUISUMOAbstractView * getParentView()
return the real owner of this popup
Definition:
GUIGLObjectPopupMenu.cpp:115
GUIGLObjectPopupMenu::onCmdCopyCursorGeoPosition
long onCmdCopyCursorGeoPosition(FXObject *, FXSelector, void *)
Called if the cursor geo-position shall be copied to clipboard.
Definition:
GUIGLObjectPopupMenu.cpp:181
GUIGLObjectPopupMenu::onCmdAddSelected
long onCmdAddSelected(FXObject *, FXSelector, void *)
Called if the object shall be added to the list of selected objects.
Definition:
GUIGLObjectPopupMenu.cpp:227
GUIGLObjectPopupMenu::onCmdShowTypePars
long onCmdShowTypePars(FXObject *, FXSelector, void *)
Called if the type parameter of this object shall be shown.
Definition:
GUIGLObjectPopupMenu.cpp:216
GUIGLObjectPopupMenu::onCmdShowPars
long onCmdShowPars(FXObject *, FXSelector, void *)
Called if the parameter of this object shall be shown.
Definition:
GUIGLObjectPopupMenu.cpp:204
GUIGLObjectPopupMenu::myApplication
GUIMainWindow * myApplication
The main application.
Definition:
GUIGLObjectPopupMenu.h:133
GUIGLObjectPopupMenu::onCmdCopyEdgeName
long onCmdCopyEdgeName(FXObject *, FXSelector, void *)
Called if the edge name shall be copied to clipboard (for lanes only)
Definition:
GUIGLObjectPopupMenu.cpp:161
GUIGLObjectPopupMenu::getPopupType
PopupType getPopupType() const
popup type;
Definition:
GUIGLObjectPopupMenu.cpp:121
GUIGLObjectPopupMenu::myPopupType
const PopupType myPopupType
popup type;
Definition:
GUIGLObjectPopupMenu.h:136
GUIGLObjectPopupMenu::onCmdShowCursorGeoPositionOnline
long onCmdShowCursorGeoPositionOnline(FXObject *, FXSelector, void *)
Called if the cursor geo-position shall be shown online.
Definition:
GUIGLObjectPopupMenu.cpp:192
GUIGLObjectPopupMenu::onCmdCenter
long onCmdCenter(FXObject *, FXSelector, void *)
Definition:
GUIGLObjectPopupMenu.cpp:127
GUIGLObjectPopupMenu::insertMenuPaneChild
void insertMenuPaneChild(FXMenuPane *child)
Insert a sub-menu pane in this GUIGLObjectPopupMenu.
Definition:
GUIGLObjectPopupMenu.cpp:98
GUIGLObjectPopupMenu::onCmdRemoveSelected
long onCmdRemoveSelected(FXObject *, FXSelector, void *)
Called if the object shall be removed from the list of selected objects.
Definition:
GUIGLObjectPopupMenu.cpp:239
GUIGLObjectPopupMenu::GUIGLObjectPopupMenu
GUIGLObjectPopupMenu()
FOX needs this.
Definition:
GUIGLObjectPopupMenu.cpp:250
GUIGLObjectPopupMenu::myMenuPanes
std::vector< FXMenuPane * > myMenuPanes
vector mit Sub-MenuPanes
Definition:
GUIGLObjectPopupMenu.h:142
GUIGLObjectPopupMenu::~GUIGLObjectPopupMenu
virtual ~GUIGLObjectPopupMenu()
Destructor.
Definition:
GUIGLObjectPopupMenu.cpp:85
GUIGLObjectPopupMenu::onCmdCopyTypedName
long onCmdCopyTypedName(FXObject *, FXSelector, void *)
Called if the typed name shall be copied to clipboard.
Definition:
GUIGLObjectPopupMenu.cpp:150
GUIGlObject
Definition:
GUIGlObject.h:67
GUIMainWindow
Definition:
GUIMainWindow.h:46
GUISUMOAbstractView
Definition:
GUISUMOAbstractView.h:70
Position
A point in 2D or 3D with translation and scaling methods.
Definition:
Position.h:37
fxheader.h
src
utils
gui
globjects
GUIGLObjectPopupMenu.h
Generated on Mon Oct 28 2024 15:44:00 for Eclipse SUMO - Simulation of Urban MObility by
1.9.4