119 myGLObjectType(type),
120 myMicrosimID(microsimID) {
130 i->removeObject(
this);
195 GUIGlObject::getNode()
const {
201 GUIGlObject::setNode(osg::Node* node) {
211 new FXMenuSeparator(ret);
220 new FXMenuSeparator(ret);
227 new FXMenuCommand(ret,
"Copy name to clipboard",
nullptr, ret,
MID_COPY_NAME);
230 new FXMenuSeparator(ret);
243 new FXMenuSeparator(ret);
252 new FXMenuSeparator(ret);
261 new FXMenuSeparator(ret);
273 new FXMenuSeparator(ret);
282 new FXMenuSeparator(ret);
295 std::set<GUIParameterTableWindow*>::iterator i =
myParamWindows.find(t);
319 new FXMenuCommand(ret, (
"type: " + type +
"").c_str(),
nullptr,
nullptr, 0);
320 new FXMenuSeparator(ret);
342 new FXMenuCommand(ret, (
"type: " + type +
"").c_str(),
nullptr,
nullptr, 0);
343 new FXMenuSeparator(ret);
Copy object name - popup entry.
void buildShapePopupOptions(GUIMainWindow &app, GUIGLObjectPopupMenu *ret, const std::string &type)
build basic shape popup options. Used to unify pop-ups menu in netedit and SUMO-GUI ...
Center view to object - popup entry.
void buildNameCopyPopupEntry(GUIGLObjectPopupMenu *ret, bool addSeparator=true)
Builds entries which allow to copy the name / typed name into the clipboard.
Open the object's manipulator.
GUIGlID myGlID
The numerical id of the object.
Stores the information about how to visualize structures.
const std::string & getString(const T key) const
static void drawTextSettings(const GUIVisualizationTextSettings &settings, const std::string &text, const Position &pos, const double scale, const double angle=0, const double layer=2048)
bool remove(GUIGlID id)
Removes the named object from this container.
void buildCenterPopupEntry(GUIGLObjectPopupMenu *ret, bool addSeparator=true)
Builds an entry which allows to center to the object.
bool isSelected(GUIGlObjectType type, GUIGlID id)
Returns the information whether the object with the given type and id is selected.
void buildShowParamsPopupEntry(GUIGLObjectPopupMenu *ret, bool addSeparator=true)
Builds an entry which allows to open the parameter window.
Remove from selected items - Menu Etry.
void buildPositionCopyEntry(GUIGLObjectPopupMenu *ret, bool addSeparator=true)
Builds an entry which allows to copy the cursor position if geo projection is used, also builds an entry for copying the geo-position.
void buildShowTypeParamsPopupEntry(GUIGLObjectPopupMenu *ret, bool addSeparator=true)
Builds an entry which allows to open the type parameter window.
#define UNUSED_PARAMETER(x)
reserved GLO type to pack shapes
void removeParameterTable(GUIParameterTableWindow *w)
Lets this object know a parameter window showing the object's values was closed.
Copy cursor geo-coordinate position - popup entry.
Show object parameter - popup entry.
virtual std::string getParentName() const
Returns the name of the parent object (if any)
GUIGlObjectType getType() const
Returns the type of the object as coded in GUIGlObjectType.
virtual GUIParameterTableWindow * getTypeParameterWindow(GUIMainWindow &app, GUISUMOAbstractView &parent)
Returns an own type parameter window (optional)
A point in 2D or 3D with translation and scaling methods.
Copy cursor position - popup entry.
std::string myMicrosimID
ID of GL object.
static GUIGlObjectStorage gIDStorage
A single static instance of this class.
virtual ~GUIGlObject()
Destructor.
void addParameterTable(GUIParameterTableWindow *w)
void drawName(const Position &pos, const double scale, const GUIVisualizationTextSettings &settings, const double angle=0) const
draw name of item
virtual const std::string & getMicrosimID() const
Returns the id of the object as known to microsim.
reserved GLO type to pack all RouteElements (note: In this case the sorting of GLO_<element> is impor...
virtual const std::string getOptionalName() const
Returns the name of the object (default "")
static void removeObject(GUIGlObject &o)
Removes all instances that pass values from the object with the given id.
static std::string emptyString
An empty string.
const GUIGlObjectType myGLObjectType
The type of the object.
reserved GLO type to pack all additionals
void buildShowManipulatorPopupEntry(GUIGLObjectPopupMenu *ret, bool addSeparator=true)
Builds an entry which allows to open the manipulator window.
virtual void setMicrosimID(const std::string &newID)
Changes the microsimID of the object.
static StringBijection< GUIGlObjectType > TypeNames
associates object types with strings
static const GUIGlID INVALID_ID
void buildSelectionPopupEntry(GUIGLObjectPopupMenu *ret, bool addSeparator=true)
Builds an entry which allows to (de)select the object.
static StringBijection< GUIGlObjectType >::Entry GUIGlObjectTypeNamesInitializer[]
LinkStates (Currently unused)
static const GeoConvHelper & getFinal()
the coordinate transformation for writing the location element and for tracking the original coordina...
std::string myFullName
full name of GL Object
GUIGlID getGlID() const
Returns the numerical id of the object.
GUIGlID registerObject(GUIGlObject *object, const std::string &fullName)
Registers an object.
Show object type parameter - popup entry.
GUIGlObject(GUIGlObjectType type, const std::string µsimID)
Constructor.
const std::string & getFullName() const
Add to selected items - menu entry.
std::set< GUIParameterTableWindow * > myParamWindows
Parameter table windows which refer to this object.
GUISelectedStorage gSelected
A global holder of selected objects.
Copy typed object name - popup entry.
void buildAdditionalsPopupOptions(GUIMainWindow &app, GUIGLObjectPopupMenu *ret, const std::string &type)
build basic additional popup options. Used to unify pop-ups menu in netedit and SUMO-GUI ...
A window containing a gl-object's parameter.
static FXIcon * getIcon(GUIIcon which)
returns a icon previously defined in the enum GUIIcon
virtual void drawGLAdditional(GUISUMOAbstractView *const parent, const GUIVisualizationSettings &s) const
Draws additional, user-triggered visualisations.
void buildPopupHeader(GUIGLObjectPopupMenu *ret, GUIMainWindow &app, bool addSeparator=true)
Builds the header.
std::string createFullName() const
create full name
reserved GLO type to pack all netElements