SUMO - Simulation of Urban MObility
GUIDialog_GLObjChooser Class Reference

#include <GUIDialog_GLObjChooser.h>

Inheritance diagram for GUIDialog_GLObjChooser:
Inheritance graph
Collaboration diagram for GUIDialog_GLObjChooser:
Collaboration graph

Public Member Functions

GUIGlObjectgetObject () const
 Returns the chosen (selected) object. More...
 
 GUIDialog_GLObjChooser (GUIGlChildWindow *parent, FXIcon *icon, const FXString &title, const std::vector< GUIGlID > &ids, GUIGlObjectStorage &glStorage)
 Constructor. More...
 
void show ()
 sets the focus after the window is created to work-around bug in libfox More...
 
virtual ~GUIDialog_GLObjChooser ()
 Destructor. More...
 
FOX-callbacks
long onCmdCenter (FXObject *, FXSelector, void *)
 Callback: The selected item shall be centered within the calling view. More...
 
long onCmdClose (FXObject *, FXSelector, void *)
 Callback: The dialog shall be closed. More...
 
long onChgText (FXObject *, FXSelector, void *)
 Callback: Something has been typed into the the field. More...
 
long onCmdText (FXObject *, FXSelector, void *)
 Callback: Selects to current item if enter is pressed. More...
 
long onListKeyPress (FXObject *, FXSelector, void *)
 Callback: Selects to current item if enter is pressed. More...
 
long onCmdFilter (FXObject *, FXSelector, void *)
 Callback: Hides unselected items if pressed. More...
 
long onCmdToggleSelection (FXObject *, FXSelector, void *)
 Callback: Toggle selection status of current object. More...
 

Protected Member Functions

virtual std::string getObjectName (GUIGlObject *o) const
 retrieve name for the given object More...
 
 GUIDialog_GLObjChooser ()
 FOX needs this. More...
 
void refreshList (const std::vector< GUIGlID > &ids)
 update the list with the given ids More...
 
virtual void toggleSelection (int listIndex)
 toggle selection (handled differently in NETEDIT) More...
 

Private Attributes

FXButton * myCenterButton
 The button that triggers centering on the select object. More...
 
std::set< GUIGlIDmyIDs
 myList contains (void) pointers to elements of myIDs instead of the more More...
 
FXList * myList
 The list that holds the ids. More...
 
GUIGlChildWindowmyParent
 The parent window. More...
 
GUIGlObjectmySelected
 The chosen id. More...
 
FXTextField * myTextEntry
 The text field. More...
 

Detailed Description

Instances of this class are windows that display the list of instances from a given artifact like vehicles, edges or junctions and allow one of their items

Definition at line 52 of file GUIDialog_GLObjChooser.h.

Constructor & Destructor Documentation

◆ GUIDialog_GLObjChooser() [1/2]

GUIDialog_GLObjChooser::GUIDialog_GLObjChooser ( GUIGlChildWindow parent,
FXIcon *  icon,
const FXString &  title,
const std::vector< GUIGlID > &  ids,
GUIGlObjectStorage glStorage 
)

◆ ~GUIDialog_GLObjChooser()

GUIDialog_GLObjChooser::~GUIDialog_GLObjChooser ( )
virtual

Destructor.

Definition at line 86 of file GUIDialog_GLObjChooser.cpp.

References GUIGlChildWindow::getParent(), myParent, and GUIMainWindow::removeChild().

◆ GUIDialog_GLObjChooser() [2/2]

GUIDialog_GLObjChooser::GUIDialog_GLObjChooser ( )
inlineprotected

FOX needs this.

Definition at line 143 of file GUIDialog_GLObjChooser.h.

Member Function Documentation

◆ getObject()

GUIGlObject* GUIDialog_GLObjChooser::getObject ( ) const
inline

Returns the chosen (selected) object.

Returns
The selected object

Definition at line 75 of file GUIDialog_GLObjChooser.h.

References getObjectName(), mySelected, onChgText(), onCmdCenter(), onCmdClose(), onCmdFilter(), onCmdText(), onCmdToggleSelection(), onListKeyPress(), refreshList(), show(), and toggleSelection().

◆ getObjectName()

std::string GUIDialog_GLObjChooser::getObjectName ( GUIGlObject o) const
protectedvirtual

retrieve name for the given object

Reimplemented in GNEDialogACChooser.

Definition at line 175 of file GUIDialog_GLObjChooser.cpp.

References GUIGlObject::getMicrosimID().

Referenced by getObject(), and refreshList().

◆ onChgText()

long GUIDialog_GLObjChooser::onChgText ( FXObject *  ,
FXSelector  ,
void *   
)

Callback: Something has been typed into the the field.

Definition at line 116 of file GUIDialog_GLObjChooser.cpp.

References myCenterButton, myList, and myTextEntry.

Referenced by getObject().

◆ onCmdCenter()

long GUIDialog_GLObjChooser::onCmdCenter ( FXObject *  ,
FXSelector  ,
void *   
)

Callback: The selected item shall be centered within the calling view.

Definition at line 99 of file GUIDialog_GLObjChooser.cpp.

References myList, myParent, and GUIGlChildWindow::setView().

Referenced by getObject().

◆ onCmdClose()

long GUIDialog_GLObjChooser::onCmdClose ( FXObject *  ,
FXSelector  ,
void *   
)

Callback: The dialog shall be closed.

Definition at line 109 of file GUIDialog_GLObjChooser.cpp.

Referenced by getObject().

◆ onCmdFilter()

long GUIDialog_GLObjChooser::onCmdFilter ( FXObject *  ,
FXSelector  ,
void *   
)

Callback: Hides unselected items if pressed.

Definition at line 160 of file GUIDialog_GLObjChooser.cpp.

References flag, GUIIconSubSys::getIcon(), ICON_FLAG, myList, and refreshList().

Referenced by getObject().

◆ onCmdText()

long GUIDialog_GLObjChooser::onCmdText ( FXObject *  ,
FXSelector  ,
void *   
)

Callback: Selects to current item if enter is pressed.

Definition at line 135 of file GUIDialog_GLObjChooser.cpp.

References myList, myParent, and GUIGlChildWindow::setView().

Referenced by getObject(), and onListKeyPress().

◆ onCmdToggleSelection()

long GUIDialog_GLObjChooser::onCmdToggleSelection ( FXObject *  ,
FXSelector  ,
void *   
)

Callback: Toggle selection status of current object.

Definition at line 199 of file GUIDialog_GLObjChooser.cpp.

References flag, GUIIconSubSys::getIcon(), GUIGlChildWindow::getView(), ICON_FLAG, myList, myParent, and toggleSelection().

Referenced by getObject().

◆ onListKeyPress()

long GUIDialog_GLObjChooser::onListKeyPress ( FXObject *  ,
FXSelector  ,
void *  ptr 
)

Callback: Selects to current item if enter is pressed.

Definition at line 146 of file GUIDialog_GLObjChooser.cpp.

References onCmdText().

Referenced by getObject().

◆ refreshList()

◆ show()

void GUIDialog_GLObjChooser::show ( )

sets the focus after the window is created to work-around bug in libfox

Definition at line 92 of file GUIDialog_GLObjChooser.cpp.

References myTextEntry.

Referenced by getObject().

◆ toggleSelection()

void GUIDialog_GLObjChooser::toggleSelection ( int  listIndex)
protectedvirtual

toggle selection (handled differently in NETEDIT)

Reimplemented in GNEDialogACChooser.

Definition at line 217 of file GUIDialog_GLObjChooser.cpp.

References gSelected, myList, and GUISelectedStorage::toggleSelection().

Referenced by getObject(), and onCmdToggleSelection().

Field Documentation

◆ myCenterButton

FXButton* GUIDialog_GLObjChooser::myCenterButton
private

The button that triggers centering on the select object.

Definition at line 125 of file GUIDialog_GLObjChooser.h.

Referenced by onChgText().

◆ myIDs

std::set<GUIGlID> GUIDialog_GLObjChooser::myIDs
private

myList contains (void) pointers to elements of myIDs instead of the more

Definition at line 138 of file GUIDialog_GLObjChooser.h.

Referenced by refreshList().

◆ myList

FXList* GUIDialog_GLObjChooser::myList
private

The list that holds the ids.

Definition at line 122 of file GUIDialog_GLObjChooser.h.

Referenced by onChgText(), onCmdCenter(), onCmdFilter(), onCmdText(), onCmdToggleSelection(), refreshList(), and toggleSelection().

◆ myParent

GUIGlChildWindow* GUIDialog_GLObjChooser::myParent
private

The parent window.

Definition at line 128 of file GUIDialog_GLObjChooser.h.

Referenced by onCmdCenter(), onCmdText(), onCmdToggleSelection(), refreshList(), and ~GUIDialog_GLObjChooser().

◆ mySelected

GUIGlObject* GUIDialog_GLObjChooser::mySelected
private

The chosen id.

Definition at line 131 of file GUIDialog_GLObjChooser.h.

Referenced by getObject().

◆ myTextEntry

FXTextField* GUIDialog_GLObjChooser::myTextEntry
private

The text field.

Definition at line 134 of file GUIDialog_GLObjChooser.h.

Referenced by onChgText(), and show().


The documentation for this class was generated from the following files: