#include <gui.h>
Public Member Functions | |
GuiElement () | |
Constructor. | |
~GuiElement () | |
Destructor. | |
void | SetParent (GuiElement *e) |
GuiElement * | GetParent () |
int | GetLeft () |
int | GetTop () |
void | SetMinY (int y) |
int | GetMinY () |
void | SetMaxY (int y) |
int | GetMaxY () |
void | SetMinX (int x) |
int | GetMinX () |
void | SetMaxX (int x) |
int | GetMaxX () |
int | GetWidth () |
int | GetHeight () |
void | SetSize (int w, int h) |
bool | IsVisible () |
bool | IsSelectable () |
bool | IsClickable () |
bool | IsHoldable () |
void | SetSelectable (bool s) |
void | SetClickable (bool c) |
void | SetHoldable (bool h) |
int | GetState () |
int | GetStateChan () |
void | SetAlpha (int a) |
int | GetAlpha () |
void | SetScale (float s) |
float | GetScale () |
void | SetTrigger (GuiTrigger *t) |
void | SetTrigger (u8 i, GuiTrigger *t) |
bool | Rumble () |
void | SetRumble (bool r) |
void | SetEffect (int e, int a, int t=0) |
void | SetEffectOnOver (int e, int a, int t=0) |
void | SetEffectGrow () |
Shortcut to SetEffectOnOver(EFFECT_SCALE, 4, 110). | |
int | GetEffect () |
bool | IsInside (int x, int y) |
void | SetPosition (int x, int y) |
void | UpdateEffects () |
void | SetUpdateCallback (UpdateCallback u) |
int | IsFocused () |
virtual void | SetVisible (bool v) |
virtual void | SetFocus (int f) |
virtual void | SetState (int s, int c=-1) |
virtual void | ResetState () |
Resets the element's state to STATE_DEFAULT. | |
virtual int | GetSelected () |
virtual void | SetAlignment (int hor, int vert) |
virtual void | Update (GuiTrigger *t) |
virtual void | Draw () |
Called constantly to redraw the element. | |
Protected Attributes | |
bool | visible |
Visibility of the element. If false, Draw() is skipped. | |
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). | |
f32 | scale |
Element scale (1 = 100%). | |
int | alphaDyn |
Element alpha, dynamic (multiplied by alpha value for blending/fading effects). | |
f32 | scaleDyn |
Element scale, dynamic (multiplied by alpha value for blending/fading effects). | |
bool | rumble |
Wiimote rumble (on/off) - set to on when this element requests a rumble event. | |
int | effects |
Currently enabled effect(s). 0 when no effects are enabled. | |
int | effectAmount |
Effect amount. Used by different effects for different purposes. | |
int | effectTarget |
Effect target amount. Used by different effects for different purposes. | |
int | effectsOver |
Effects to enable when wiimote cursor is over this element. Copied to effects variable on over event. | |
int | effectAmountOver |
EffectAmount to set when wiimote cursor is over this element. | |
int | effectTargetOver |
EffectTarget to set when wiimote cursor is over this element. | |
int | alignmentHor |
Horizontal element alignment, respective to parent element (LEFT, RIGHT, CENTRE). | |
int | alignmentVert |
Horizontal element alignment, respective to parent element (TOP, BOTTOM, MIDDLE). | |
int | 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). | |
GuiTrigger * | trigger [2] |
GuiTriggers (input actions) that this element responds to. | |
GuiElement * | parentElement |
Parent element. | |
UpdateCallback | updateCB |
Callback function to call when this element is updated. |
GuiElement::GuiElement | ( | ) |
Constructor.
Constructor for the Object class.
GuiElement::~GuiElement | ( | ) |
Destructor.
Destructor for the GuiElement class.
void GuiElement::Draw | ( | ) | [virtual] |
Called constantly to redraw the element.
Draw an element on screen.
Reimplemented in GuiWindow, GuiImage, GuiText, GuiButton, GuiOptionBrowser, and GuiFileBrowser.
int GuiElement::GetAlpha | ( | ) |
Gets the element's alpha value Considers alpha, alphaDyn, and the parent element's GetAlpha() value
int GuiElement::GetEffect | ( | ) |
Gets the current element effects
int GuiElement::GetHeight | ( | ) |
Gets the height of the element. Does not currently consider the scale
int GuiElement::GetLeft | ( | ) |
Gets the current leftmost coordinate of the element Considers horizontal alignment, x offset, width, and parent element's GetLeft() / GetWidth() values
int GuiElement::GetMaxX | ( | ) |
Gets the maximum x offset of the element
int GuiElement::GetMaxY | ( | ) |
Gets the maximum y offset of the element
int GuiElement::GetMinX | ( | ) |
Gets the minimum x offset of the element
int GuiElement::GetMinY | ( | ) |
Gets the minimum y offset of the element
GuiElement * GuiElement::GetParent | ( | ) |
Gets the element's parent
float GuiElement::GetScale | ( | ) |
Gets the element's current scale Considers scale, scaleDyn, and the parent element's GetScale() value
int GuiElement::GetSelected | ( | ) | [virtual] |
Gets whether or not the element is in STATE_SELECTED
Reimplemented in GuiWindow.
int GuiElement::GetState | ( | ) |
Gets the element's current state
int GuiElement::GetStateChan | ( | ) |
Gets the controller channel that last changed the element's state
int GuiElement::GetTop | ( | ) |
Gets the current topmost coordinate of the element Considers vertical alignment, y offset, height, and parent element's GetTop() / GetHeight() values
int GuiElement::GetWidth | ( | ) |
Gets the current width of the element. Does not currently consider the scale
bool GuiElement::IsClickable | ( | ) |
Checks whether or not the element is clickable
int GuiElement::IsFocused | ( | ) |
Checks whether the element is in focus
bool GuiElement::IsHoldable | ( | ) |
Checks whether or not the element is holdable
bool GuiElement::IsInside | ( | int | x, | |
int | y | |||
) |
Checks whether the specified coordinates are within the element's boundaries
x | X coordinate | |
y | Y coordinate |
bool GuiElement::IsSelectable | ( | ) |
Checks whether or not the element is selectable
bool GuiElement::IsVisible | ( | ) |
Checks whether or not the element is visible
bool GuiElement::Rumble | ( | ) |
Checks whether rumble was requested by the element
void GuiElement::SetAlignment | ( | int | hor, | |
int | vert | |||
) | [virtual] |
Sets the element's alignment respective to its parent element
hor | Horizontal alignment (ALIGN_LEFT, ALIGN_RIGHT, ALIGN_CENTRE) | |
vert | Vertical alignment (ALIGN_TOP, ALIGN_BOTTOM, ALIGN_MIDDLE) |
Reimplemented in GuiText.
void GuiElement::SetAlpha | ( | int | a | ) |
Sets the element's alpha value
a | alpha value |
void GuiElement::SetClickable | ( | bool | c | ) |
Sets whether or not the element is clickable
c | Clickable |
void GuiElement::SetEffect | ( | int | e, | |
int | a, | |||
int | t = 0 | |||
) |
Set an effect for the element
e | Effect to enable | |
a | Amount of the effect (usage varies on effect) | |
t | Target amount of the effect (usage varies on effect) |
void GuiElement::SetEffectOnOver | ( | int | e, | |
int | a, | |||
int | t = 0 | |||
) |
Sets an effect to be enabled on wiimote cursor over
e | Effect to enable | |
a | Amount of the effect (usage varies on effect) | |
t | Target amount of the effect (usage varies on effect) |
void GuiElement::SetFocus | ( | int | f | ) | [virtual] |
Sets the element's focus
f | Focus (true = in focus) |
Reimplemented in GuiWindow, GuiOptionBrowser, and GuiFileBrowser.
void GuiElement::SetHoldable | ( | bool | h | ) |
Sets whether or not the element is holdable
h | Holdable |
void GuiElement::SetMaxX | ( | int | x | ) |
Sets the maximum x offset of the element
x | X offset |
void GuiElement::SetMaxY | ( | int | y | ) |
Sets the maximum y offset of the element
y | Y offset |
void GuiElement::SetMinX | ( | int | x | ) |
Sets the minimum x offset of the element
x | X offset |
void GuiElement::SetMinY | ( | int | y | ) |
Sets the minimum y offset of the element
y | Y offset |
void GuiElement::SetParent | ( | GuiElement * | e | ) |
Set the element's parent
e | Pointer to parent element |
void GuiElement::SetPosition | ( | int | x, | |
int | y | |||
) |
Sets the element's position
x | X coordinate | |
y | Y coordinate |
void GuiElement::SetRumble | ( | bool | r | ) |
Sets whether or not the element is requesting a rumble event
r | true if requesting rumble, false if not |
void GuiElement::SetScale | ( | float | s | ) |
Sets the element's scale
s | scale (1 is 100%) |
void GuiElement::SetSelectable | ( | bool | s | ) |
Sets whether or not the element is selectable
s | Selectable |
void GuiElement::SetSize | ( | int | w, | |
int | h | |||
) |
Sets the size (width/height) of the element
w | Width of element | |
h | Height of element |
void GuiElement::SetState | ( | int | s, | |
int | c = -1 | |||
) | [virtual] |
Sets the element's state
s | State (STATE_DEFAULT, STATE_SELECTED, STATE_CLICKED, STATE_DISABLED) | |
c | Controller channel (0-3, -1 = none) |
void GuiElement::SetTrigger | ( | u8 | 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.
i | Index of trigger array to set | |
t | Pointer to GuiTrigger |
void GuiElement::SetTrigger | ( | GuiTrigger * | t | ) |
Set a new GuiTrigger for the element
t | Pointer to GuiTrigger |
void GuiElement::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
void GuiElement::SetVisible | ( | bool | v | ) | [virtual] |
void GuiElement::Update | ( | GuiTrigger * | t | ) | [virtual] |
Called constantly to allow the element to respond to the current input data
t | Pointer to a GuiTrigger, containing the current input data from PAD/WPAD |
Reimplemented in GuiWindow, GuiButton, GuiKeyboard, GuiOptionBrowser, and GuiFileBrowser.
void GuiElement::UpdateEffects | ( | ) |
Updates the element's effects (dynamic values) Called by Draw(), used for animation purposes