Animation moving an object into or out of the visible area. More...
#include <GUIAnimationMoveInOut.h>
Public Types | |
enum | MoveDirection_t { MOVE_TOP , MOVE_BOTTOM , MOVE_LEFT , MOVE_RIGHT } |
![]() | |
enum | AnimationStatus_t { ANIMATION_RUNNING , ANIMATION_PAUSED , ANIMATION_STOPPED , ANIMATION_FINISHED , ANIMATION_DELETED } |
Public Member Functions | |
CGUIAnimationMoveInOut () | |
CGUIAnimationMoveInOut (CGUIObject *pAnimatedObject, CGUIEasing::EasingType_t eEasingX, CGUIEasing::EasingType_t eEasingY, MoveDirection_t eDirection, eC_Bool bMoveOutOnStart=false, eC_UInt uiDuration=1000, eC_UInt uiStepTime=25) | |
void | ApplyAnimation (eC_UInt uiElapsedTime) |
eC_Value | GetOriginalXPos () |
eC_Value | GetOriginalYPos () |
eC_Bool | IsMovingOut () |
void | ReadFromStream () |
void | WriteToStream (const eC_Bool bWriteClassID=false) |
![]() | |
virtual | ~CGUIAnimation () |
void | AddAnimationObserver (CGUIAnimationObserver *pkObserver) |
virtual void | ApplyAnimation (eC_UInt uiElapsedTime)=0 |
void | ContinueAnimation () |
virtual void | DoAnimate (const eC_Value &vTimes=eC_FromInt(1)) |
eC_TListDoubleLinked< CGUIAnimatedAttribute > * | GetAnimatedAttributes () |
CGUIObject * | GetAnimatedObject () const |
ObjectHandle_t | GetAnimatedObjectID () const |
eC_UInt | GetDuration () const |
eC_UInt | GetID () const |
eC_UInt | GetStepTime () const |
virtual void | InitAttributes () |
eC_Bool | IsDeletedAfterFinish () const |
eC_Bool | IsPaused () const |
void | PauseAnimation () |
void | ReadFromStream () |
void | RemoveAnimationObserver (CGUIAnimationObserver *pkObserver) |
void | SetAnimatedObject (CGUIObject *pkObject) |
void | SetAnimatedObjectID (const ObjectHandle_t &eObject) |
void | SetAnimationObserver (CGUIAnimationObserver *pkObserver) |
void | SetDeletedAfterFinish (const eC_Bool bDeletedAfterFinish) |
void | SetDuration (eC_UInt uiDuration) |
void | StartAnimation () |
void | StopAnimation () |
void | UpdateAnimatedObjectPointer () |
void | WriteToStream (const eC_Bool bWriteClassID=false) |
![]() | |
virtual | ~CGUIAnimatable () |
Destructor. Removes all existing animation callbacks. | |
virtual void | DoAnimate (const eC_Value &vTimes=eC_FromInt(1)) |
virtual eC_Bool | IsAnimating () const |
virtual void | StartAnimation () |
virtual void | StopAnimation () |
![]() | |
const eC_String & | GetXMLTag () const |
virtual void | ReadFromStream () |
void | SetXMLTag (const eC_String &kXMLTag) |
virtual void | WriteToStream (const eC_Bool bWriteClassID=false) |
Static Public Attributes | |
static const eC_UInt | MOVEINOUT_ANIMATION_CLASS_MIN_VERSION |
The minimal class version allowed. | |
static const eC_UInt | MOVEINOUT_ANIMATION_CLASS_VERSION |
The class version of the implementation. | |
![]() | |
static const eC_Char | XMLTAG_ANIMATIONCLASSID [] |
XML tag to be used when writing a animation class ID into a stream. | |
static const eC_Char | XMLTAG_ANIMATIONENDTAG [] |
XML tag to be used when finish writing CGUIAnimation information into the stream. | |
static const eC_Char | XMLTAG_ANIMATIONID [] |
XML tag to be used when writing a animation ID into a stream. | |
static const eC_Char | XMLTAG_ANIMATIONSTARTTAG [] |
XML tag to be used when start writing CGUIAnimation information into the stream. | |
![]() | |
static const eC_Char | XMLTAG_CLASSVERSION [] |
Protected Member Functions | |
void | InitAttributes () |
void | OnStatusChanged (AnimationStatus_t eStatus) |
![]() | |
CGUIAnimation () | |
CGUIAnimation (CGUIObject *pkAnimatedObject, eC_UInt uiDuration, eC_UInt uiStepTime=25, eC_Bool bDeletedAfterFinish=false) | |
void | AddAnimatedAttribute (CGUIAnimatedAttribute kAnimatedAttribute) |
CGUIAnimatedAttribute & | GetAnimatedAttribute (const eC_UInt &uiAttributeIndex) const |
virtual void | OnStatusChanged (AnimationStatus_t eStatus) |
void | RemoveAnimatedAttributes () |
![]() | |
eC_UInt | ReadStreamingHeader (const eC_UInt &uiClassVersion, const eC_UInt &uiClassMinVersion=0) const |
void | WriteStreamingFooter (const eC_Bool &bWriteClassID) const |
void | WriteStreamingHeader (const eC_Bool &bWriteClassID, const eC_Char *const pkClassIDTag, const eC_Int &iClassID, const eC_UInt &uiClassVersion) const |
Additional Inherited Members | |
![]() | |
eC_TListDoubleLinked< CGUIAnimatedAttribute > * | m_pkAnimatedAttributes |
available animated attributes | |
Animation moving an object into or out of the visible area.
This animation moves an object into or out of the visible area of its parent using its current position as start or end position. The Direction determines where the object is moved to or from.
For the move direction TOP and BOTTOM the object is translated vertically, for LEFT and RIGHT it is translated horizontally.
The flag bMoveOutOnStart determines if the object is moved from the current position out of the visible area of its parent (true), or from outside of the parents visible area to the current position (false).
The object is set visible when the animation is constructed and therefore initialized.
This example moves an object into the middle of the screen assuming that the animated object is a direct child of the GUI.
Determies the move direction
CGUIAnimationMoveInOut::CGUIAnimationMoveInOut | ( | ) |
Default constructor for streaming.
CGUIAnimationMoveInOut::CGUIAnimationMoveInOut | ( | CGUIObject * | pAnimatedObject, |
CGUIEasing::EasingType_t | eEasingX, | ||
CGUIEasing::EasingType_t | eEasingY, | ||
MoveDirection_t | eDirection, | ||
eC_Bool | bMoveOutOnStart = false , |
||
eC_UInt | uiDuration = 1000 , |
||
eC_UInt | uiStepTime = 25 |
||
) |
Constructor
pAnimatedObject | The GUIObject that will be moved. |
eEasingX | The easing type that is used for the XPos of the object. |
eEasingY | The easing type that is used for the YPos of the object. |
eDirection | The move direction. |
bMoveOutOnStart | True to move the object into the screen, false to move it out of the screen. |
uiDuration | The total duraiton of the animation in milliseconds. Based on the distance the duration determines the animation speed. |
uiStepTime | The time between two animation steps in millisectionds. |
|
virtual |
This function contains the animation logic. It typically accesses the animation's CGUIEasing functions to get the current values and sets these values in the animated object. This function is called by DoAnimate() Adapts the objects position after each animation step based on the current value of the CGUIEasing functions.
uiElapsedTime | Time elapsed (in ms) since start of animation. |
Implements CGUIAnimation.
|
inline |
|
inline |
|
protectedvirtual |
Initializes the object position and sets the object visible.
Reimplemented from CGUIAnimation.
|
inline |
|
protectedvirtual |
Makes the object invisible when it is moving out of the screen after the animation was finished. Also calls the base implementation to inform the animation observers.
eStatus | The new status of the animation. |
Reimplemented from CGUIAnimation.
|
virtual |
Reads attributes from the streaming file. Only for use with GUIFactoryManager.
Reimplemented from CGUIAnimation.
|
virtual |
Writes attributes to the streaming file. A CGUIStreamWriter has to be initialized.
bWriteClassID | This flag is used to switch writing of the class ID, leading and trailing tags. When implementing a new streamable object, check this flag. If it is true, first write the class ID, then continue with this object's attributes, and finally call the base class implementation with this flag set to false (this is the default). |
Reimplemented from CGUIAnimation.