A code-drawn shape: a rectangle (optionally rounded) or ellipse with a fill, outline and shadow, and no image assets. More...
#include <GuiShape.h>
Public Member Functions | |
| GuiShape (int w=0, int h=0) | |
| Constructor. | |
| ~GuiShape () | |
| Destructor. | |
| GuiShape (const GuiShape &)=delete | |
| GuiShape & | operator= (const GuiShape &)=delete |
| void | setShape (SHAPE s) |
| Sets the shape kind (rectangle or ellipse) | |
| void | setCorners (const GuiCorners &c) |
| Sets the corner radii of a rectangle. | |
| void | setCapsule () |
| Rounds a rectangle's ends fully (radius half the shorter side) | |
| void | setStyle (const GuiShapeStyle &s) |
| Sets the look for every state; applies immediately. | |
| void | setPaint (const GuiPaint &p) |
| Sets one look for every state. | |
| void | setTransition (float seconds) |
| Sets how long a change of state takes to blend, in seconds (0 = instant) | |
| void | draw () override |
| Constantly called to draw the shape. | |
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 | setFocus (int f) |
| Sets the element's focus. | |
| virtual void | setState (STATE s, int c=-1) |
| Sets the element's state. | |
| virtual void | resetState () |
| Resets the element's state to STATE::DEFAULT. | |
| 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) | |
| virtual void | resetText () |
| Called when the language has changed, to obtain new text values for all text elements. | |
| virtual void | update (InputController *c) |
| Called constantly to allow the element to respond to the current input data. | |
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. | |
A code-drawn shape: a rectangle (optionally rounded) or ellipse with a fill, outline and shadow, and no image assets.
Use it anywhere a GuiImage fits, for example as a GuiButton's image: the button mirrors its state into the shape, so a GuiShapeStyle gives the button its resting, highlighted, pressed and disabled looks, and changes between them fade. The element's size is the shape's size; the shadow and glow extend past it.
Definition at line 15 of file GuiShape.h.
| GuiShape::GuiShape | ( | int | w = 0, |
| int | h = 0 ) |
| GuiShape::~GuiShape | ( | ) |
Destructor.
Definition at line 22 of file GuiShape.cpp.
|
overridevirtual |
Constantly called to draw the shape.
Implements GuiElement.
Definition at line 73 of file GuiShape.cpp.
| void GuiShape::setCapsule | ( | ) |
Rounds a rectangle's ends fully (radius half the shorter side)
Definition at line 40 of file GuiShape.cpp.
| void GuiShape::setCorners | ( | const GuiCorners & | c | ) |
Sets the corner radii of a rectangle.
Definition at line 34 of file GuiShape.cpp.
| void GuiShape::setPaint | ( | const GuiPaint & | p | ) |
Sets one look for every state.
Definition at line 51 of file GuiShape.cpp.
| void GuiShape::setShape | ( | SHAPE | s | ) |
Sets the shape kind (rectangle or ellipse)
Definition at line 28 of file GuiShape.cpp.
| void GuiShape::setStyle | ( | const GuiShapeStyle & | s | ) |
Sets the look for every state; applies immediately.
Definition at line 45 of file GuiShape.cpp.
| void GuiShape::setTransition | ( | float | seconds | ) |
Sets how long a change of state takes to blend, in seconds (0 = instant)
Definition at line 56 of file GuiShape.cpp.