83 myMicrosimID(microsimID),
84 myPrefix(TypeNames.getString(type)) {
101 (*i)->removeObject(
this);
161 GUIGlObject::getNode()
const {
167 GUIGlObject::setNode(osg::Node* node) {
178 new FXMenuSeparator(ret);
187 new FXMenuSeparator(ret);
194 new FXMenuCommand(ret,
"Copy name to clipboard", 0, ret,
MID_COPY_NAME);
197 new FXMenuSeparator(ret);
210 new FXMenuSeparator(ret);
219 new FXMenuSeparator(ret);
228 new FXMenuSeparator(ret);
240 new FXMenuSeparator(ret);
249 new FXMenuSeparator(ret);
262 std::set<GUIParameterTableWindow*>::iterator i =
myParamWindows.find(t);
293 new FXMenuCommand(ret, (
"type: " + type +
"").c_str(), 0, 0, 0);
294 new FXMenuSeparator(ret);
316 new FXMenuCommand(ret, (
"type: " + type +
"").c_str(), 0, 0, 0);
317 new FXMenuSeparator(ret);
Show object parameter - 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 ...
void buildNameCopyPopupEntry(GUIGLObjectPopupMenu *ret, bool addSeparator=true)
Builds entries which allow to copy the name / typed name into the clipboard.
GUIGlID myGlID
The numerical id of the object.
Stores the information about how to visualize structures.
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.
static void drawText(const std::string &text, const Position &pos, const double layer, const double size, const RGBColor &col=RGBColor::BLACK, const double angle=0, int align=0, double width=-1)
Center view to object - popup entry.
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.
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)
Remove from selected items - Menu Etry.
void removeParameterTable(GUIParameterTableWindow *w)
Lets this object know a parameter window showing the object's values was closed.
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.
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
Copy object name - popup entry.
virtual const std::string & getMicrosimID() const
Returns the id of the object as known to microsim.
Copy cursor geo-coordinate position - popup entry.
Show object type parameter - popup entry.
static std::string emptyString
An empty string.
const GUIGlObjectType myGLObjectType
The type of the object.
void buildShowManipulatorPopupEntry(GUIGLObjectPopupMenu *ret, bool addSeparator=true)
Builds an entry which allows to open the manipulator window.
Open the object's manipulator.
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...
virtual const std::string & getParentName() const
Returns the name of the parent object (if any)
Copy cursor position - popup entry.
std::string myPrefix
prefix of GL Object
std::string myFullName
full name of GL Object
GUIGlID getGlID() const
Returns the numerical id of the object.
Copy typed object name - popup entry.
GUIGlID registerObject(GUIGlObject *object, const std::string &fullName)
Registers an object.
GUIGlObject(GUIGlObjectType type, const std::string µsimID)
Constructor.
const std::string & getFullName() const
std::set< GUIParameterTableWindow * > myParamWindows
Parameter table windows which refer to this object.
void setPrefix(const std::string &prefix)
usually names are prefixed by a type-specific string. this method can be used to change the default ...
GUISelectedStorage gSelected
A global holder of selected objects.
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
Add to selected items - menu entry.