This class implements a selector for ordered but not necessairly continuous integers. It handles 2 graphical widgets: a number selector and a number display. Each widget has its own getter. Calling class is in charge of positioning the widgets in the window.
Public Member Functions | |
| QGUINumberSelector (const std::vector< int > &validNumbers) | |
| constructor with vector of int | |
| QGUINumberSelector (const std::vector< unsigned short > &validNumbers) | |
| constructor with vector of unsigned short | |
| virtual | ~QGUINumberSelector () |
| dtor | |
| int | GetCurrent () const |
| void | HandleValueSet () |
| this method is called every time channel selector is modified by the user | |
| void | UpdateCurrentNumber () |
| update number display value and also update current loaded number. If currently selected number is invalid, old value is restored in selector and display is not updated. | |
| void | Loaded () |
| void | Changed () |
| TGNumberEntry * | GetSelector (const TGWindow *parent) |
| TGTextEntry * | GetDisplay (const TGWindow *parent) |
Private Types | |
| enum | QDirection_t { QUP = true, QDOWN = false } |
| direction of arrows in number selection widget | |
Private Member Functions | |
| int | GetSelected () const |
| get value that is currently dispalyed in number selector | |
| bool | IsValid (int value) const |
| check wether requested value is present in vector of valid numbers | |
| int | GetNextValid (int current, QDirection_t dir) const |
| get next valid value with respect to current one and with respect to scanning direction | |
| int | GetFirstValid () const |
| get smallest allowed value | |
| int | GetLastValid () const |
| get biggest allowed value | |
| void | SetCurrent (int value) |
| update both number selector and number display with current value | |
| void | Init () |
| void | StartTimer () |
Private Attributes | |
| std::vector< int > | fValidNumbers |
| int | fPrevious |
| int | fCurrent |
| TTimer | fTimer |
| TGNumberEntry * | fSelector |
| TGTextEntry * | fLoadText |
| QGUINumberSelector::QGUINumberSelector | ( | const std::vector< int > & | validNumbers | ) |
constructor with vector of int
| validNumbers | vector of int containing allowed values for this selector |
| QGUINumberSelector::QGUINumberSelector | ( | const std::vector< unsigned short > & | validNumbers | ) |
constructor with vector of unsigned short
| validNumbers | vector of int containing allowed values for this selector |
| bool QGUINumberSelector::IsValid | ( | int | value | ) | const [private] |
check wether requested value is present in vector of valid numbers
| value | number to be checked |
| int QGUINumberSelector::GetNextValid | ( | int | current, | |
| QDirection_t | dir | |||
| ) | const [private] |
get next valid value with respect to current one and with respect to scanning direction
| current | value from which vector scanning is to be started | |
| dir | scanning direction |
int QGUINumberSelector::fPrevious [private] |
previous value in the Number Entry
int QGUINumberSelector::fCurrent [private] |
current valid number
TGNumberEntry* QGUINumberSelector::fSelector [private] |
widget for number selection
TGTextEntry* QGUINumberSelector::fLoadText [private] |
widget for current number display
1.5.1