Aether
SDL2 based UI Framework for NX
|
An item used by and updated by the ControlBar element. It shows a button icon and label. More...
#include <ControlItem.hpp>
Public Member Functions | |
ControlItem (const Button btn, const std::string &label) | |
Label text. More... | |
Button | button () |
Returns the control's associated button. More... | |
void | setColour (const Colour &colour) |
Set the colour to tint the element with. More... | |
void | setLabel (const std::string &label) |
Set the control's label. More... | |
![]() | |
Element (int x=0, int y=0, int w=100, int h=100) | |
Construct a new Element object. More... | |
int | x () |
Returns x-coordinate of element. More... | |
int | y () |
Returns y-coordinate of element. More... | |
int | w () |
Returns width of element. More... | |
int | h () |
Returns height of element. More... | |
virtual void | setX (int x) |
Set x-coordinate of element. More... | |
virtual void | setY (int y) |
Set y-coordinate of element. More... | |
virtual void | setW (int w) |
Set width of element. More... | |
virtual void | setH (int h) |
Set height of element. More... | |
virtual void | setXY (int x, int y) |
Set co-ordinates of element. More... | |
virtual void | setWH (int w, int h) |
Set size of element. More... | |
virtual void | setXYWH (int x, int y, int w, int h) |
Setter size and co-ordinates of element. More... | |
Element * | parent () |
Returns the parent element of this element. More... | |
void | setParent (Element *p) |
Set the parent element of this element. More... | |
virtual void | addElement (Element *e) |
Adds new element a child. More... | |
virtual bool | removeElement (Element *e) |
Attempt to delete given child element. More... | |
virtual void | removeAllElements () |
Deletes all children elements. | |
virtual bool | returnElement (Element *e) |
Attempt to remove the given child element. More... | |
virtual void | returnAllElements () |
Removes (but does not delete) all children elements. | |
bool | isVisible () |
Check if current element is visible on-screen. More... | |
bool | hidden () |
Check if current element is hidden. More... | |
void | setHidden (bool b) |
Set whether element is hidden or not. More... | |
bool | selected () |
Check if current element is selected. More... | |
virtual void | setSelected (bool b) |
Set whether element is selected or not. More... | |
bool | selectable () |
Check if current element is selectable. More... | |
void | setSelectable (bool b) |
Set whether element is selectable or not. More... | |
bool | touchable () |
Check if current element is touch responsive. More... | |
void | setTouchable (bool b) |
Set whether element is touch responsive or not. More... | |
bool | highlighted () |
Check if current element is highlighted. More... | |
void | setHighlighted (bool b) |
Set whether element is highlighted or not. More... | |
bool | hasHighlighted () |
Check if current element has highlighted children element. More... | |
void | setHasHighlighted (bool b) |
Set whether element has highlighted children element or not. More... | |
bool | hasSelectable () |
Check if current element has selectable children element. More... | |
void | setHasSelectable (bool b) |
Set whether element has selectable children element or not. More... | |
bool | hasSelected () |
Check if current element has selected children element. More... | |
void | setHasSelected (bool b) |
Set whether element has selected children element or not. More... | |
virtual void | setActive () |
Set element as activated. | |
virtual void | setInactive () |
Set element as in-activated. | |
void | setFocused (Element *e) |
Sets current element as unfocused and instead focuses a sub-element. More... | |
void | setFocussed (Element *e) |
Sets current element as unfocused and instead focuses a sub-element. More... | |
Element * | focused () |
Returns the currently focused element. More... | |
Element * | focussed () |
Returns the currently focused element. More... | |
std::function< void()> | onPressFunc () |
Returns function invoked when the element is pressed. More... | |
void | onPress (std::function< void()> f) |
Sets the function to invoked when the element is pressed. More... | |
virtual bool | handleEvent (InputEvent *e) |
Attempt to handle a given event. More... | |
virtual void | update (unsigned int dt) |
Update is passed time since last frame (for animations) More... | |
virtual void | render () |
Render child elements + highlights. | |
virtual Drawable * | renderHighlightBG () |
Renders the highlight background. More... | |
virtual Drawable * | renderHighlight () |
Renders the highlight border. More... | |
virtual Drawable * | renderSelection () |
Renders the selection overlay. More... | |
virtual | ~Element () |
Destroy the Element object. | |
Additional Inherited Members | |
![]() | |
void | renderHighlightTextures () |
Renders cached highlight textures. | |
void | renderSelectionTexture () |
Renders cached selection texture. | |
void | addElementAt (Element *e, size_t i) |
Add element at given index in vector. More... | |
![]() | |
Element * | parent_ |
Pointer to parent element, if there is one. | |
std::vector< Element * > | children |
Vector of child elements (used to call their methods) | |
Element * | focused_ |
Children element which is highlighted/focused (to regain focus on activation) | |
![]() | |
static Colour | hiBGColour |
Background colour if element is highlighted. | |
static Colour | hiBorderColour |
Border colour if element is highlighted. | |
static Colour | selColour |
Selected colour if element is highlighted. | |
static unsigned int | hiSize |
Size of highlight border. | |
static Drawable * | hiBGTex |
Highlight background texture. | |
static Drawable * | hiBorderTex |
Highlight border texture. | |
static Drawable * | selTex |
Selection texture. | |
static Renderer * | renderer |
static bool | isTouch |
Indicator on whether the touch is "active" (i.e. hide highlighting) or not. | |
An item used by and updated by the ControlBar element. It shows a button icon and label.
Aether::ControlItem::ControlItem | ( | const Button | btn, |
const std::string & | label | ||
) |
Label text.
Construct a new ControlItem.
btn | Button to show/send event for. |
label | Label to display. |
Button Aether::ControlItem::button | ( | ) |
Returns the control's associated button.
void Aether::ControlItem::setColour | ( | const Colour & | colour | ) |
Set the colour to tint the element with.
colour | Colour used for tinting. |
void Aether::ControlItem::setLabel | ( | const std::string & | label | ) |
Set the control's label.
label | New label to display. |