![]() |
Eclipse SUMO - Simulation of Urban MObility
|
#include <GUIDialog_ChooserAbstract.h>
Public Member Functions | |
int | getMessageId () const |
GUIGlObject * | getObject () const |
Returns the chosen (selected) object. More... | |
GUIDialog_ChooserAbstract (GUIGlChildWindow *windowsParent, int messageId, 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_ChooserAbstract () |
Destructor. More... | |
FOX-callbacks | |
long | onCmdCenter (FXObject *, FXSelector, void *) |
Callback: The selected item shall be centered within the calling view. More... | |
long | onCmdTrack (FXObject *, FXSelector, void *) |
Callback: The selected vehicle shall be tracked 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 | onChgList (FXObject *, FXSelector, void *) |
Callback: Current list item has changed. More... | |
long | onChgListSel (FXObject *, FXSelector, void *) |
Callback: Current list item selection has changed. More... | |
long | onCmdFilter (FXObject *, FXSelector, void *) |
Callback: Hides unselected items if pressed. More... | |
long | onCmdFilterSubstr (FXObject *, FXSelector, void *) |
Callback: Hides unmatched items if pressed. More... | |
long | onCmdToggleSelection (FXObject *, FXSelector, void *) |
Callback: Toggle selection status of current object / list. More... | |
long | onCmdAddListSelection (FXObject *, FXSelector, void *) |
long | onCmdClearListSelection (FXObject *, FXSelector, void *) |
long | onCmdLocateByName (FXObject *, FXSelector, void *) |
Callback: Toggle locator by name. More... | |
long | onCmdUpdate (FXObject *, FXSelector, void *) |
Callback: Update list. More... | |
Protected Member Functions | |
virtual void | deselect (int listIndex) |
unset selection (handled differently in NETEDIT) More... | |
virtual void | filterACs (const std::vector< GUIGlID > &GLIDs) |
filter ACs (needed in NETEDIT) More... | |
virtual std::string | getObjectName (GUIGlObject *o) const |
@bbrief retrieve name for the given object More... | |
void | refreshList (const std::vector< GUIGlID > &ids) |
update the list with the given ids More... | |
virtual void | select (int listIndex) |
set selection (handled differently in NETEDIT) More... | |
virtual void | toggleSelection (int listIndex) |
fox need this More... | |
Private Attributes | |
FXCheckButton * | myCaseSensitive |
Whether search is case sensitive. More... | |
FXButton * | myCenterButton |
The button that triggers centering on the select object. More... | |
FXLabel * | myCountLabel |
label for declaring list size More... | |
bool | myHaveFilteredSubstring |
whether the list was filter by substring More... | |
std::set< GUIGlID > | myIDs |
myList contains (void) pointers to elements of myIDs instead of the more volatile pointers to GUIGlObject More... | |
FXCheckButton * | myInstantCenter |
Whether each change in the list should re-center the view. More... | |
FXList * | myList |
The list that holds the ids. More... | |
bool | myLocateByName |
whether to locate by object name instead of id More... | |
int | myMessageId |
the object type being chosen More... | |
GUIGlObject * | mySelected |
The chosen id. More... | |
FXTextField * | myTextEntry |
The text field. More... | |
FXButton * | myTrackButton |
The button that triggers tracking on the select vehicle. More... | |
GUIGlChildWindow * | myWindowsParent |
window parent More... | |
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 50 of file GUIDialog_ChooserAbstract.h.
GUIDialog_ChooserAbstract::GUIDialog_ChooserAbstract | ( | GUIGlChildWindow * | windowsParent, |
int | messageId, | ||
FXIcon * | icon, | ||
const FXString & | title, | ||
const std::vector< GUIGlID > & | ids, | ||
GUIGlObjectStorage & | glStorage | ||
) |
Constructor.
[in] | windowsParent | The calling view |
[in] | viewParent | The calling view (NETEDIT) |
[in] | icon | The icon to use |
[in] | title | The title to use |
[in] | glStorage | The storage to retrieve ids from |
Definition at line 67 of file GUIDialog_ChooserAbstract.cpp.
References FLAG, GUIIconSubSys::getIcon(), GUIDesignAuxiliarFrame, GUIDesignChooserButtons, GUIDesignChooserLayoutLeft, GUIDesignChooserLayoutList, GUIDesignChooserLayoutRight, GUIDesignChooserListSingle, GUIDesignChooserTextField, GUIDesignHorizontalSeparator, MID_CANCEL, MID_CHOOSEN_CLEAR, MID_CHOOSEN_INVERT, MID_CHOOSEN_NAME, MID_CHOOSEN_SELECT, MID_CHOOSER_CENTER, MID_CHOOSER_FILTER, MID_CHOOSER_FILTER_SUBSTR, MID_CHOOSER_LIST, MID_CHOOSER_TEXT, MID_CHOOSER_TRACK, MID_UPDATE, NO, RECENTERVIEW, RELOAD, and TL.
|
virtual |
Destructor.
Definition at line 115 of file GUIDialog_ChooserAbstract.cpp.
References GUIGlChildWindow::getParent(), myCaseSensitive, myInstantCenter, myWindowsParent, and GUIMainWindow::removeChild().
|
protectedvirtual |
unset selection (handled differently in NETEDIT)
Reimplemented in GNEDialogACChooser.
Definition at line 422 of file GUIDialog_ChooserAbstract.cpp.
References GUISelectedStorage::deselect(), gSelected, and myList.
Referenced by onCmdClearListSelection().
|
protectedvirtual |
filter ACs (needed in NETEDIT)
Reimplemented in GNEDialogACChooser.
Definition at line 429 of file GUIDialog_ChooserAbstract.cpp.
Referenced by onCmdFilterSubstr().
|
inline |
Definition at line 122 of file GUIDialog_ChooserAbstract.h.
References myMessageId.
Referenced by GUISUMOViewParent::eraseGLObjChooser().
GUIGlObject * GUIDialog_ChooserAbstract::getObject | ( | ) | const |
Returns the chosen (selected) object.
Definition at line 124 of file GUIDialog_ChooserAbstract.cpp.
References mySelected.
|
protectedvirtual |
@bbrief retrieve name for the given object
Reimplemented in GNEDialogACChooser.
Definition at line 304 of file GUIDialog_ChooserAbstract.cpp.
References GUIGlObject::getMicrosimID(), GUIGlObject::getOptionalName(), and myLocateByName.
Referenced by GNEDialogACChooser::getObjectName(), onCmdLocateByName(), and refreshList().
long GUIDialog_ChooserAbstract::onChgList | ( | FXObject * | , |
FXSelector | , | ||
void * | |||
) |
Callback: Current list item has changed.
Definition at line 170 of file GUIDialog_ChooserAbstract.cpp.
References myInstantCenter, myList, and onCmdCenter().
Referenced by FXDEFMAP().
long GUIDialog_ChooserAbstract::onChgListSel | ( | FXObject * | , |
FXSelector | , | ||
void * | |||
) |
Callback: Current list item selection has changed.
Definition at line 182 of file GUIDialog_ChooserAbstract.cpp.
References myList.
Referenced by FXDEFMAP().
long GUIDialog_ChooserAbstract::onChgText | ( | FXObject * | , |
FXSelector | , | ||
void * | |||
) |
Callback: Something has been typed into the the field.
Definition at line 188 of file GUIDialog_ChooserAbstract.cpp.
References myCaseSensitive, myCenterButton, myHaveFilteredSubstring, myList, myLocateByName, myTextEntry, and myTrackButton.
Referenced by FXDEFMAP(), and onCmdFilterSubstr().
long GUIDialog_ChooserAbstract::onCmdAddListSelection | ( | FXObject * | , |
FXSelector | , | ||
void * | |||
) |
Definition at line 351 of file GUIDialog_ChooserAbstract.cpp.
References flag, FLAG, GUIIconSubSys::getIcon(), GUIGlChildWindow::getView(), myList, myWindowsParent, and select().
Referenced by FXDEFMAP().
long GUIDialog_ChooserAbstract::onCmdCenter | ( | FXObject * | , |
FXSelector | , | ||
void * | |||
) |
Callback: The selected item shall be centered within the calling view.
Definition at line 137 of file GUIDialog_ChooserAbstract.cpp.
References GUIGlChildWindow::getView(), myList, myWindowsParent, GUIGlChildWindow::setView(), and GUISUMOAbstractView::stopTrack().
Referenced by FXDEFMAP(), and onChgList().
long GUIDialog_ChooserAbstract::onCmdClearListSelection | ( | FXObject * | , |
FXSelector | , | ||
void * | |||
) |
Definition at line 365 of file GUIDialog_ChooserAbstract.cpp.
References deselect(), GUIGlChildWindow::getView(), myList, and myWindowsParent.
Referenced by FXDEFMAP().
long GUIDialog_ChooserAbstract::onCmdClose | ( | FXObject * | , |
FXSelector | , | ||
void * | |||
) |
Callback: The dialog shall be closed.
Definition at line 164 of file GUIDialog_ChooserAbstract.cpp.
Referenced by FXDEFMAP().
long GUIDialog_ChooserAbstract::onCmdFilter | ( | FXObject * | , |
FXSelector | , | ||
void * | |||
) |
Callback: Hides unselected items if pressed.
Definition at line 260 of file GUIDialog_ChooserAbstract.cpp.
References flag, FLAG, GUIIconSubSys::getIcon(), myList, and refreshList().
Referenced by FXDEFMAP().
long GUIDialog_ChooserAbstract::onCmdFilterSubstr | ( | FXObject * | , |
FXSelector | , | ||
void * | |||
) |
Callback: Hides unmatched items if pressed.
Definition at line 276 of file GUIDialog_ChooserAbstract.cpp.
References filterACs(), myCaseSensitive, myHaveFilteredSubstring, myList, myTextEntry, onChgText(), and refreshList().
Referenced by FXDEFMAP().
long GUIDialog_ChooserAbstract::onCmdLocateByName | ( | FXObject * | , |
FXSelector | , | ||
void * | |||
) |
Callback: Toggle locator by name.
Definition at line 378 of file GUIDialog_ChooserAbstract.cpp.
References GUIGlObjectStorage::getObjectBlocking(), getObjectName(), GUIGlObjectStorage::gIDStorage, myList, myLocateByName, myTextEntry, refreshList(), and GUIGlObjectStorage::unblockObject().
Referenced by FXDEFMAP().
long GUIDialog_ChooserAbstract::onCmdText | ( | FXObject * | , |
FXSelector | , | ||
void * | |||
) |
Callback: Selects to current item if enter is pressed.
Definition at line 231 of file GUIDialog_ChooserAbstract.cpp.
References myList, myWindowsParent, and GUIGlChildWindow::setView().
Referenced by FXDEFMAP(), and onListKeyPress().
long GUIDialog_ChooserAbstract::onCmdToggleSelection | ( | FXObject * | , |
FXSelector | , | ||
void * | |||
) |
Callback: Toggle selection status of current object / list.
Definition at line 333 of file GUIDialog_ChooserAbstract.cpp.
References flag, FLAG, GUIIconSubSys::getIcon(), GUIGlChildWindow::getView(), myList, myWindowsParent, and toggleSelection().
Referenced by FXDEFMAP().
long GUIDialog_ChooserAbstract::onCmdTrack | ( | FXObject * | , |
FXSelector | , | ||
void * | |||
) |
Callback: The selected vehicle shall be tracked within the calling view.
Definition at line 148 of file GUIDialog_ChooserAbstract.cpp.
References GUIGlObject::getGlID(), GUIGlObjectStorage::getObjectBlocking(), GUIGlObject::getType(), GUIGlChildWindow::getView(), GUIGlObjectStorage::gIDStorage, GLO_VEHICLE, myList, myWindowsParent, GUIGlChildWindow::setView(), GUISUMOAbstractView::startTrack(), and GUIGlObjectStorage::unblockObject().
Referenced by FXDEFMAP().
long GUIDialog_ChooserAbstract::onCmdUpdate | ( | FXObject * | , |
FXSelector | , | ||
void * | |||
) |
Callback: Update list.
Definition at line 404 of file GUIDialog_ChooserAbstract.cpp.
References GUIGlChildWindow::getObjectIDs(), myMessageId, myWindowsParent, and refreshList().
Referenced by FXDEFMAP().
long GUIDialog_ChooserAbstract::onListKeyPress | ( | FXObject * | , |
FXSelector | , | ||
void * | ptr | ||
) |
Callback: Selects to current item if enter is pressed.
Definition at line 242 of file GUIDialog_ChooserAbstract.cpp.
References myList, myTextEntry, and onCmdText().
Referenced by FXDEFMAP().
|
protected |
update the list with the given ids
Definition at line 313 of file GUIDialog_ChooserAbstract.cpp.
References FLAG, GUIGlObject::getGlID(), GUIIconSubSys::getIcon(), GUIGlObjectStorage::getObjectBlocking(), getObjectName(), GUIGlObjectStorage::gIDStorage, GUIGlChildWindow::isSelected(), myCountLabel, myIDs, myList, myWindowsParent, toString(), and GUIGlObjectStorage::unblockObject().
Referenced by GNEDialogACChooser::GNEDialogACChooser(), onCmdFilter(), onCmdFilterSubstr(), onCmdLocateByName(), and onCmdUpdate().
|
protectedvirtual |
set selection (handled differently in NETEDIT)
Reimplemented in GNEDialogACChooser.
Definition at line 416 of file GUIDialog_ChooserAbstract.cpp.
References gSelected, myList, and GUISelectedStorage::select().
Referenced by onCmdAddListSelection().
void GUIDialog_ChooserAbstract::show | ( | ) |
sets the focus after the window is created to work-around bug in libfox
Definition at line 130 of file GUIDialog_ChooserAbstract.cpp.
References myTextEntry.
|
protectedvirtual |
fox need this
toggle selection (handled differently in NETEDIT)
Reimplemented in GNEDialogACChooser.
Definition at line 410 of file GUIDialog_ChooserAbstract.cpp.
References gSelected, myList, and GUISelectedStorage::toggleSelection().
Referenced by onCmdToggleSelection().
|
private |
Whether search is case sensitive.
Definition at line 183 of file GUIDialog_ChooserAbstract.h.
Referenced by onChgText(), onCmdFilterSubstr(), and ~GUIDialog_ChooserAbstract().
|
private |
The button that triggers centering on the select object.
Definition at line 159 of file GUIDialog_ChooserAbstract.h.
Referenced by onChgText().
|
private |
label for declaring list size
Definition at line 180 of file GUIDialog_ChooserAbstract.h.
Referenced by refreshList().
|
private |
whether the list was filter by substring
Definition at line 177 of file GUIDialog_ChooserAbstract.h.
Referenced by onChgText(), and onCmdFilterSubstr().
|
private |
myList contains (void) pointers to elements of myIDs instead of the more volatile pointers to GUIGlObject
Definition at line 171 of file GUIDialog_ChooserAbstract.h.
Referenced by refreshList().
|
private |
Whether each change in the list should re-center the view.
Definition at line 186 of file GUIDialog_ChooserAbstract.h.
Referenced by onChgList(), and ~GUIDialog_ChooserAbstract().
|
private |
The list that holds the ids.
Definition at line 156 of file GUIDialog_ChooserAbstract.h.
Referenced by deselect(), onChgList(), onChgListSel(), onChgText(), onCmdAddListSelection(), onCmdCenter(), onCmdClearListSelection(), onCmdFilter(), onCmdFilterSubstr(), onCmdLocateByName(), onCmdText(), onCmdToggleSelection(), onCmdTrack(), onListKeyPress(), refreshList(), select(), and toggleSelection().
|
private |
whether to locate by object name instead of id
Definition at line 174 of file GUIDialog_ChooserAbstract.h.
Referenced by getObjectName(), onChgText(), and onCmdLocateByName().
|
private |
the object type being chosen
Definition at line 153 of file GUIDialog_ChooserAbstract.h.
Referenced by getMessageId(), and onCmdUpdate().
|
private |
The chosen id.
Definition at line 165 of file GUIDialog_ChooserAbstract.h.
Referenced by getObject().
|
private |
The text field.
Definition at line 168 of file GUIDialog_ChooserAbstract.h.
Referenced by onChgText(), onCmdFilterSubstr(), onCmdLocateByName(), onListKeyPress(), and show().
|
private |
The button that triggers tracking on the select vehicle.
Definition at line 162 of file GUIDialog_ChooserAbstract.h.
Referenced by onChgText().
|
private |
window parent
Definition at line 150 of file GUIDialog_ChooserAbstract.h.
Referenced by onCmdAddListSelection(), onCmdCenter(), onCmdClearListSelection(), onCmdText(), onCmdToggleSelection(), onCmdTrack(), onCmdUpdate(), refreshList(), and ~GUIDialog_ChooserAbstract().