Display a list of menu options. More...
#include <GuiOptionBrowser.h>
Public Member Functions | |
| GuiOptionBrowser (int w, int h, OptionList *l) | |
| void | setCol1Position (int x) |
| Sets the x offset of the name column. | |
| void | setCol2Position (int x) |
| Sets the x offset of the value column. | |
| int | findMenuItem (int currentItem, int direction) |
| Finds the next non-blank option index from currentItem, skipping blank-named entries used as separators. | |
| int | getClickedOption () |
| void | resetState () |
| Resets the element's state to STATE::DEFAULT. | |
| void | setFocus (int f) |
| Sets the element's focus. | |
| void | draw () override |
| Draw the button on screen. | |
| void | triggerUpdate () |
| Forces the visible page to refresh from the underlying options list. | |
| void | resetText () |
| Called when the language has changed, to obtain new text values for all text elements. | |
| void | update (InputController *c) |
| Called constantly to allow the element to respond to the current input data. | |
Public Member Functions inherited from GuiElement | |
| GuiElement () | |
| Constructor. | |
| virtual | ~GuiElement () |
| Destructor. | |
| void | setParent (GuiElement *e) |
| Set the element's parent. | |
| GuiElement * | getParent () |
| Gets the element's parent. | |
| virtual void | remove (GuiElement *) |
| Removes the specified child. | |
| void | setRemoveOnDestroy (bool autoRemove) |
| Whether to notify parent on destruction to allow removal. | |
| int | getLeft () |
| Gets the current leftmost coordinate of the element Considers horizontal alignment, x offset, width, and parent element's GetLeft() / GetWidth() values. | |
| int | getTop () |
| Gets the current topmost coordinate of the element Considers vertical alignment, y offset, height, and parent element's GetTop() / GetHeight() values. | |
| void | setMinY (int y) |
| Sets the minimum y offset of the element. | |
| int | getMinY () |
| Gets the minimum y offset of the element. | |
| void | setMaxY (int y) |
| Sets the maximum y offset of the element. | |
| int | getMaxY () |
| Gets the maximum y offset of the element. | |
| void | setMinX (int x) |
| Sets the minimum x offset of the element. | |
| int | getMinX () |
| Gets the minimum x offset of the element. | |
| void | setMaxX (int x) |
| Sets the maximum x offset of the element. | |
| int | getMaxX () |
| Gets the maximum x offset of the element. | |
| int | getWidth () |
| Gets the current width of the element. | |
| int | getHeight () |
| Gets the height of the element. | |
| void | setSize (int w, int h) |
| Sets the size (width/height) of the element. | |
| bool | isVisible () |
| Checks whether or not the element is visible. | |
| bool | isSelectable () |
| Checks whether or not the element is selectable. | |
| bool | isClickable () |
| Checks whether or not the element is clickable. | |
| bool | isHoldable () |
| Checks whether or not the element is holdable. | |
| void | setSelectable (bool s) |
| Sets whether or not the element is selectable. | |
| void | setClickable (bool c) |
| Sets whether or not the element is clickable. | |
| void | setHoldable (bool h) |
| Sets whether or not the element is holdable. | |
| STATE | getState () |
| Gets the element's current state. | |
| int | getStateChan () |
| Gets the controller channel that last changed the element's state. | |
| void | setAlpha (int a) |
| Sets the element's alpha value. | |
| int | getAlpha () |
| Gets the element's alpha value Considers alpha, alphaDyn, and the parent element's GetAlpha() value. | |
| void | setScale (float s) |
| Sets the element's x and y scale. | |
| void | setScaleX (float s) |
| Sets the element's x scale. | |
| void | setScaleY (float s) |
| Sets the element's y scale. | |
| void | setScale (int w, int h) |
| Sets the element's x and y scale, using the provided max width/height. | |
| float | getScale () |
| Gets the element's current scale Considers scale, scaleDyn, and the parent element's GetScale() value. | |
| float | getScaleX () |
| Gets the element's current x scale Considers scale, scaleDyn, and the parent element's GetScale() value. | |
| float | getScaleY () |
| Gets the element's current y scale Considers scale, scaleDyn, and the parent element's GetScale() value. | |
| void | setTrigger (GuiTrigger *t) |
| Set a new GuiTrigger for the element. | |
| void | setTrigger (uint8_t i, GuiTrigger *t) |
| This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. | |
| bool | isRumble () |
| Checks whether rumble was requested by the element. | |
| void | setRumble (bool r) |
| Sets whether or not the element is requesting a rumble event. | |
| void | setEffect (int e, int a, int t=0) |
| Set an effect for the element. | |
| void | setEffectOnOver (int e, int a, int t=0) |
| Sets an effect to be enabled on wiimote cursor over. | |
| void | setEffectGrow () |
| Shortcut to SetEffectOnOver(EFFECT::SCALE, 4, 110) | |
| int | getEffect () |
| Gets the current element effects. | |
| bool | isInside (int x, int y) |
| Checks whether the specified coordinates are within the element's boundaries. | |
| void | setPosition (int x, int y) |
| Sets the element's position. | |
| void | updateEffects () |
| Updates the element's effects (dynamic values) Called by Draw(), used for animation purposes. | |
| void | setUpdateCallback (UpdateCallback u) |
| Sets a function to called after after Update() Callback function can be used to response to changes in the state of the element, and/or update the element's attributes. | |
| int | isFocused () |
| Checks whether the element is in focus. | |
| virtual void | setVisible (bool v) |
| Sets the element's visibility. | |
| virtual void | setState (STATE s, int c=-1) |
| Sets the element's state. | |
| virtual int | getSelected () |
| Gets whether or not the element is in STATE::SELECTED. | |
| virtual void | setAlignment (ALIGN_H hor, ALIGN_V vert) |
| Sets the element's alignment respective to its parent element. | |
| virtual void | getNaturalSize (int &w, int &h) |
| Layout protocol: how a layout container (GuiRow, GuiColumn, GuiGrid, GuiOverlay) asks about and arranges its children. | |
| virtual void | setLayoutPosition (int x, int y) |
| Places the element so its top-left corner is at (x, y) relative to its parent's top-left (default: LEFT/TOP alignment plus an offset) | |
| virtual void | setLayoutSize (int w, int h) |
| Gives the element a size chosen by a container (default: sets width and height) | |
| virtual void | layout () |
| Brings the element's own layout up to date. | |
| virtual void | collectNavigable (std::vector< GuiElement * > &out) |
| Appends the elements that selection can move between (default: this element; layout containers add their children instead, so the D-pad moves through them) | |
Public Attributes | |
| GuiText * | optionVal [OPTION_PAGESIZE] |
| One value label per visible row of the current page. | |
Additional Inherited Members | |
Protected Attributes inherited from GuiElement | |
| GuiTrigger * | trigger [MAX_TRIGGERS] |
| GuiTriggers (input actions) that this element responds to. | |
| UpdateCallback | updateCB |
| Callback function to call when this element is updated. | |
| GuiElement * | parentElement |
| Parent element. | |
| bool | removeOnDestroy |
| Whether to instruct parent to remove this element when it is destroyed. | |
| int | focus |
| Element focus (-1 = focus disabled, 0 = not focused, 1 = focused) | |
| int | width |
| Element width. | |
| int | height |
| Element height. | |
| int | xoffset |
| Element X offset. | |
| int | yoffset |
| Element Y offset. | |
| int | ymin |
| Element's min Y offset allowed. | |
| int | ymax |
| Element's max Y offset allowed. | |
| int | xmin |
| Element's min X offset allowed. | |
| int | xmax |
| Element's max X offset allowed. | |
| int | xoffsetDyn |
| Element X offset, dynamic (added to xoffset value for animation effects) | |
| int | yoffsetDyn |
| Element Y offset, dynamic (added to yoffset value for animation effects) | |
| int | alpha |
| Element alpha value (0-255) | |
| int | alphaDyn |
| Element alpha, dynamic (multiplied by alpha value for blending/fading effects) | |
| float | xscale |
| Element X scale (1 = 100%) | |
| float | yscale |
| Element Y scale (1 = 100%) | |
| float | scaleDyn |
| Element scale, dynamic (multiplied by alpha value for blending/fading effects) | |
| int | effects |
| Currently enabled effect(s). | |
| int | effectAmount |
| Effect amount. | |
| int | effectTarget |
| Effect target amount. | |
| int | effectsOver |
| Effects to enable when wiimote cursor is over this element. | |
| int | effectAmountOver |
| EffectAmount to set when wiimote cursor is over this element. | |
| int | effectTargetOver |
| EffectTarget to set when wiimote cursor is over this element. | |
| ALIGN_H | alignmentHor |
| Horizontal element alignment, respective to parent element (LEFT, RIGHT, CENTRE) | |
| ALIGN_V | alignmentVert |
| Horizontal element alignment, respective to parent element (TOP, BOTTOM, MIDDLE) | |
| STATE | state |
| Element state (DEFAULT, SELECTED, CLICKED, DISABLED) | |
| int | stateChan |
| Which controller channel is responsible for the last change in state. | |
| bool | selectable |
| Whether or not this element selectable (can change to SELECTED state) | |
| bool | clickable |
| Whether or not this element is clickable (can change to CLICKED state) | |
| bool | holdable |
| Whether or not this element is holdable (can change to HELD state) | |
| bool | visible |
| Visibility of the element. | |
| bool | rumble |
| Wiimote rumble (on/off) - set to on when this element requests a rumble event. | |
Display a list of menu options.
Definition at line 22 of file GuiOptionBrowser.h.
| GuiOptionBrowser::GuiOptionBrowser | ( | int | w, |
| int | h, | ||
| OptionList * | l ) |
| w | Width |
| h | Height |
| l | Option list to display - must outlive this GuiOptionBrowser |
Definition at line 10 of file GuiOptionBrowser.cpp.
| GuiOptionBrowser::~GuiOptionBrowser | ( | ) |
Definition at line 94 of file GuiOptionBrowser.cpp.
|
overridevirtual |
Draw the button on screen.
Implements GuiElement.
Definition at line 201 of file GuiOptionBrowser.cpp.
| int GuiOptionBrowser::findMenuItem | ( | int | currentItem, |
| int | direction ) |
Finds the next non-blank option index from currentItem, skipping blank-named entries used as separators.
| currentItem | Index to search from |
| direction | +1 to search forward, -1 to search backward |
Definition at line 185 of file GuiOptionBrowser.cpp.
| int GuiOptionBrowser::getClickedOption | ( | ) |
Definition at line 164 of file GuiOptionBrowser.cpp.
|
virtual |
Resets the element's state to STATE::DEFAULT.
Reimplemented from GuiElement.
Definition at line 150 of file GuiOptionBrowser.cpp.
|
virtual |
Called when the language has changed, to obtain new text values for all text elements.
Reimplemented from GuiElement.
Definition at line 233 of file GuiOptionBrowser.cpp.
| void GuiOptionBrowser::setCol1Position | ( | int | x | ) |
Sets the x offset of the name column.
Definition at line 127 of file GuiOptionBrowser.cpp.
| void GuiOptionBrowser::setCol2Position | ( | int | x | ) |
Sets the x offset of the value column.
Definition at line 133 of file GuiOptionBrowser.cpp.
|
virtual |
Sets the element's focus.
| f | Focus (true = in focus) |
Reimplemented from GuiElement.
Definition at line 139 of file GuiOptionBrowser.cpp.
| void GuiOptionBrowser::triggerUpdate | ( | ) |
Forces the visible page to refresh from the underlying options list.
Definition at line 228 of file GuiOptionBrowser.cpp.
|
virtual |
Called constantly to allow the element to respond to the current input data.
| c | Pointer to a InputController, containing the current input data |
Reimplemented from GuiElement.
Definition at line 249 of file GuiOptionBrowser.cpp.
| GuiText* GuiOptionBrowser::optionVal[OPTION_PAGESIZE] |
One value label per visible row of the current page.
Public so the app can restyle individual values (eg. colour a setting).
Definition at line 51 of file GuiOptionBrowser.h.