SUMO - Simulation of Urban MObility
GUIParam_PopupMenu.cpp
Go to the documentation of this file.
1
/****************************************************************************/
8
// A popup-menu for dynamic patameter table entries
9
/****************************************************************************/
10
// SUMO, Simulation of Urban MObility; see http://sumo.dlr.de/
11
// Copyright (C) 2001-2017 DLR (http://www.dlr.de/) and contributors
12
/****************************************************************************/
13
//
14
// This file is part of SUMO.
15
// SUMO is free software: you can redistribute it and/or modify
16
// it under the terms of the GNU General Public License as published by
17
// the Free Software Foundation, either version 3 of the License, or
18
// (at your option) any later version.
19
//
20
/****************************************************************************/
21
22
23
// ===========================================================================
24
// included modules
25
// ===========================================================================
26
#ifdef _MSC_VER
27
#include <
windows_config.h
>
28
#else
29
#include <
config.h
>
30
#endif
31
32
#include <iostream>
33
#include <string>
34
#include "
GUIParameterTableWindow.h
"
35
#include <
utils/gui/globjects/GUIGlObject.h
>
36
#include "
GUIParam_PopupMenu.h
"
37
#include <
utils/gui/tracker/GUIParameterTracker.h
>
38
#include <
utils/gui/tracker/TrackerValueDesc.h
>
39
#include <
utils/gui/windows/GUIAppEnum.h
>
40
#include <
utils/gui/windows/GUIMainWindow.h
>
41
42
43
// ===========================================================================
44
// FOX callback mapping
45
// ===========================================================================
46
FXDEFMAP
(
GUIParam_PopupMenuInterface
) GUIParam_PopupMenuInterfaceMap[] = {
47
FXMAPFUNC(SEL_COMMAND,
MID_OPENTRACKER
,
GUIParam_PopupMenuInterface::onCmdOpenTracker
),
48
};
49
50
// Object implementation
51
FXIMPLEMENT(
GUIParam_PopupMenuInterface
, FXMenuPane, GUIParam_PopupMenuInterfaceMap, ARRAYNUMBER(GUIParam_PopupMenuInterfaceMap))
52
53
54
// ===========================================================================
55
// method definitions
56
// ===========================================================================
57
GUIParam_PopupMenuInterface
::
GUIParam_PopupMenuInterface
(
GUIMainWindow
& app,
58
GUIParameterTableWindow
& parentWindow,
GUIGlObject
& o, const std::
string
& varName,
59
ValueSource
<
double
>* src)
60
: FXMenuPane(&parentWindow), myObject(&o), myParentWindow(&parentWindow),
61
myApplication(&app), myVarName(varName), mySource(src) {
62
}
63
64
65
GUIParam_PopupMenuInterface::~GUIParam_PopupMenuInterface
() {
66
delete
mySource
;
67
}
68
69
70
long
71
GUIParam_PopupMenuInterface::onCmdOpenTracker
(FXObject*, FXSelector,
void
*) {
72
std::string trackerName =
myVarName
+
" from "
+
myObject
->
getFullName
();
73
GUIParameterTracker
* tr =
new
GUIParameterTracker
(*
myApplication
, trackerName);
74
TrackerValueDesc
* newTracked =
new
TrackerValueDesc
(
myVarName
,
RGBColor::BLACK
,
myApplication
->
getCurrentSimTime
());
75
tr->
addTracked
(*
myObject
,
mySource
->
copy
(), newTracked);
76
tr->
create
();
77
tr->show();
78
return
1;
79
}
80
81
82
/****************************************************************************/
83
GUIParam_PopupMenuInterface::onCmdOpenTracker
long onCmdOpenTracker(FXObject *, FXSelector, void *)
Called when a tracker for the value shall be opened.
Definition:
GUIParam_PopupMenu.cpp:71
GUIMainWindow::getCurrentSimTime
virtual SUMOTime getCurrentSimTime() const =0
windows_config.h
GUIParam_PopupMenuInterface::myObject
GUIGlObject * myObject
The object the table displays.
Definition:
GUIParam_PopupMenu.h:90
ValueSource::copy
virtual ValueSource * copy() const =0
GUIMainWindow
Definition:
GUIMainWindow.h:54
config.h
TrackerValueDesc
Representation of a timeline of floats with their names and moments.
Definition:
TrackerValueDesc.h:51
GUIParam_PopupMenuInterface
A popup-menu for dynamic patameter table entries.
Definition:
GUIParam_PopupMenu.h:55
RGBColor::BLACK
static const RGBColor BLACK
Definition:
RGBColor.h:197
GUIParameterTracker.h
ValueSource
Definition:
ValueSource.h:41
GUIParameterTracker
A window which displays the time line of one (or more) value(s)
Definition:
GUIParameterTracker.h:56
GUIParam_PopupMenuInterface::myApplication
GUIMainWindow * myApplication
The main application window; holder of some needed values.
Definition:
GUIParam_PopupMenu.h:96
GUIParameterTracker::addTracked
void addTracked(GUIGlObject &o, ValueSource< double > *src, TrackerValueDesc *newTracked)
Adds a further time line to display.
Definition:
GUIParameterTracker.cpp:127
GUIGlObject.h
GUIParam_PopupMenuInterface::mySource
ValueSource< double > * mySource
The source of the value.
Definition:
GUIParam_PopupMenu.h:102
MID_OPENTRACKER
A Tracker shall be opened.
Definition:
GUIAppEnum.h:295
TrackerValueDesc.h
GUIParameterTracker::create
void create()
Creates the window.
Definition:
GUIParameterTracker.cpp:98
GUIGlObject
Definition:
GUIGlObject.h:73
GUIParam_PopupMenuInterface::myVarName
std::string myVarName
The name of the value.
Definition:
GUIParam_PopupMenu.h:99
GUIParam_PopupMenuInterface::~GUIParam_PopupMenuInterface
~GUIParam_PopupMenuInterface()
Destructor.
Definition:
GUIParam_PopupMenu.cpp:65
GUIParam_PopupMenu.h
GUIAppEnum.h
GUIMainWindow.h
GUIGlObject::getFullName
const std::string & getFullName() const
Definition:
GUIGlObject.cpp:109
FXDEFMAP
FXDEFMAP(GUIParam_PopupMenuInterface) GUIParam_PopupMenuInterfaceMap[]
GUIParameterTableWindow
A window containing a gl-object's parameter.
Definition:
GUIParameterTableWindow.h:69
GUIParameterTableWindow.h
src
utils
gui
div
GUIParam_PopupMenu.cpp
Generated on Sun Dec 17 2017 21:15:31 for SUMO - Simulation of Urban MObility by
1.8.13