Woopsi 1.0
GUI Framework for Nintendo DS Homebrew
|
#include <animbutton.h>
Public Member Functions | |
AnimButton (s16 x, s16 y, u16 width, u16 height, u16 animX, u16 animY) | |
virtual Animation *const | getNormalAnimation () |
virtual Animation *const | getClickedAnimation () |
virtual void | getPreferredDimensions (Rect &rect) const |
Protected Member Functions | |
virtual void | drawContents (GraphicsPort *port) |
virtual void | drawBorder (GraphicsPort *port) |
virtual void | drawOutline (GraphicsPort *port) |
virtual void | onClick (s16 x, s16 y) |
virtual void | onRelease (s16 x, s16 y) |
virtual void | onReleaseOutside (s16 x, s16 y) |
virtual void | onDisable () |
virtual void | onEnable () |
virtual | ~AnimButton () |
AnimButton (const AnimButton &animButton) | |
void | handleActionEvent (const GadgetEventArgs &e) |
Protected Attributes | |
Animation * | _animNormal |
Animation * | _animClicked |
u16 | _animX |
u16 | _animY |
bool | _initialised |
WoopsiTimer * | _timer |
Static Protected Attributes | |
static const int | ANIM_BUTTON_DEFAULT_WIDTH |
static const int | ANIM_BUTTON_DEFAULT_HEIGHT |
Button class that has an animation running in its clickable area. Note that the bitmaps used in the animation should all be the same size.
WoopsiUI::AnimButton::AnimButton | ( | s16 | x, |
s16 | y, | ||
u16 | width, | ||
u16 | height, | ||
u16 | animX, | ||
u16 | animY | ||
) |
Constructor.
x | The x co-ordinate of the button. |
y | The y co-ordinate of the button. |
width | The width of the button. |
height | The height of the button. |
animX | The x co-ordinate at which the animation's bitmaps will be drawn. |
animY | The y co-ordinate at which the animation's bitmaps will be drawn. |
virtual WoopsiUI::AnimButton::~AnimButton | ( | ) | [protected, virtual] |
Destructor.
WoopsiUI::AnimButton::AnimButton | ( | const AnimButton & | animButton | ) | [inline, protected] |
Copy constructor is protected to prevent usage.
virtual void WoopsiUI::AnimButton::drawBorder | ( | GraphicsPort * | port | ) | [protected, virtual] |
Draw the area of this gadget that falls within the clipping region. Called by the redraw() function to draw all visible regions.
port | The GraphicsPort to draw to. |
Reimplemented from WoopsiUI::Gadget.
virtual void WoopsiUI::AnimButton::drawContents | ( | GraphicsPort * | port | ) | [protected, virtual] |
Draw the area of this gadget that falls within the clipping region. Called by the redraw() function to draw all visible regions.
port | The GraphicsPort to draw to. |
Reimplemented from WoopsiUI::Gadget.
virtual void WoopsiUI::AnimButton::drawOutline | ( | GraphicsPort * | port | ) | [protected, virtual] |
Draws the outline of the button.
port | Graphics port to draw to. |
virtual Animation* const WoopsiUI::AnimButton::getClickedAnimation | ( | ) | [virtual] |
Get a pointer to the animation that plays when the button is clicked.
virtual Animation* const WoopsiUI::AnimButton::getNormalAnimation | ( | ) | [virtual] |
Get a pointer to the animation that plays when the button is not clicked.
virtual void WoopsiUI::AnimButton::getPreferredDimensions | ( | Rect & | rect | ) | const [virtual] |
Insert the dimensions that this gadget wants to have into the rect passed in as a parameter. All co-ordinates are relative to the gadget's parent.
rect | Reference to a rect to populate with data. |
Reimplemented from WoopsiUI::Gadget.
void WoopsiUI::AnimButton::handleActionEvent | ( | const GadgetEventArgs & | e | ) | [protected, virtual] |
Handle any child events.
e | Event arguments. |
Reimplemented from WoopsiUI::GadgetEventHandler.
virtual void WoopsiUI::AnimButton::onClick | ( | s16 | x, |
s16 | y | ||
) | [protected, virtual] |
Swaps from playing the standard animation to the clicked animtion.
x | The x co-ordinate of the click. |
y | The y co-ordinate of the click. |
Reimplemented from WoopsiUI::Gadget.
virtual void WoopsiUI::AnimButton::onDisable | ( | ) | [protected, virtual] |
Pauses the current animation.
Reimplemented from WoopsiUI::Gadget.
virtual void WoopsiUI::AnimButton::onEnable | ( | ) | [protected, virtual] |
Starts the current animation.
Reimplemented from WoopsiUI::Gadget.
virtual void WoopsiUI::AnimButton::onRelease | ( | s16 | x, |
s16 | y | ||
) | [protected, virtual] |
Swaps from playing the clicked animation to the standard animation.
x | The x co-ordinate of the click. |
y | The y co-ordinate of the click. |
Reimplemented from WoopsiUI::Gadget.
virtual void WoopsiUI::AnimButton::onReleaseOutside | ( | s16 | x, |
s16 | y | ||
) | [protected, virtual] |
Swaps from playing the clicked animation to the standard animation.
x | The x co-ordinate of the click. |
y | The y co-ordinate of the click. |
Reimplemented from WoopsiUI::Gadget.
Animation* WoopsiUI::AnimButton::_animClicked [protected] |
Animation played when button is clicked
Animation* WoopsiUI::AnimButton::_animNormal [protected] |
Animation played when button is not clicked
u16 WoopsiUI::AnimButton::_animX [protected] |
X co-ordinate of the animations
u16 WoopsiUI::AnimButton::_animY [protected] |
Y co-ordinate of the animations
bool WoopsiUI::AnimButton::_initialised [protected] |
Tracks if the animation has started or not
WoopsiTimer* WoopsiUI::AnimButton::_timer [protected] |
Controls animation timing and playback
const int WoopsiUI::AnimButton::ANIM_BUTTON_DEFAULT_HEIGHT [static, protected] |
Default preferred height
const int WoopsiUI::AnimButton::ANIM_BUTTON_DEFAULT_WIDTH [static, protected] |
Default preferred width