1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
1.2 +++ b/epoc32/include/mw/animation.h Wed Mar 31 12:27:01 2010 +0100
1.3 @@ -0,0 +1,75 @@
1.4 +// Copyright (c) 2004-2009 Nokia Corporation and/or its subsidiary(-ies).
1.5 +// All rights reserved.
1.6 +// This component and the accompanying materials are made available
1.7 +// under the terms of the License "Symbian Foundation License v1.0" to Symbian Foundation members and "Symbian Foundation End User License Agreement v1.0" to non-members
1.8 +// which accompanies this distribution, and is available
1.9 +// at the URL "http://www.symbianfoundation.org/legal/licencesv10.html".
1.10 +//
1.11 +// Initial Contributors:
1.12 +// Nokia Corporation - initial contribution.
1.13 +//
1.14 +// Contributors:
1.15 +//
1.16 +// Description:
1.17 +//
1.18 +
1.19 +#ifndef __ANIMATION_H__
1.20 +#define __ANIMATION_H__
1.21 +
1.22 +#include <animationmixins.h>
1.23 +
1.24 +class TAnimationConfig;
1.25 +
1.26 +/** Pure virtual base class for animations.
1.27 +
1.28 +This defines an abstracted interface between a client application and an
1.29 +animation. Most of the implementation details are handled by an animator
1.30 +plugin. The source of the animation data and its interpretation are usually
1.31 +handled by a data provider.
1.32 +
1.33 +@see CAnimationDataProvider
1.34 +@see CAnimator
1.35 +@see MAnimationObserver
1.36 +@publishedAll
1.37 +@released*/
1.38 +class CAnimation : public CBase
1.39 + {
1.40 +public:
1.41 + /** Causes the animation to start, at the first time step or logical
1.42 + equivalent. If the animation is already running, it rewinds.
1.43 + @see TAnimationConfig
1.44 + @param aConfig Specifies run time attributes of the animation.*/
1.45 + virtual void Start(const TAnimationConfig& aConfig) = 0;
1.46 + /** Causes the animation to stop, and rewinds to the first frame.*/
1.47 + virtual void Stop() = 0;
1.48 + /** Causes the animation to stop, but without rewinding.*/
1.49 + virtual void Pause() = 0;
1.50 + /** Causes a paused animation to continue from where it left off.*/
1.51 + virtual void Resume() = 0;
1.52 + /** Puts an animation on hold, which is similar to pause, but keeps
1.53 + track of the time steps passing and catches up when resumed. This
1.54 + can be used to temporarily cease processing an animation without it
1.55 + getting out of step with others.*/
1.56 + virtual void Hold() = 0;
1.57 + /** Resumes a held animation.*/
1.58 + virtual void Unhold() = 0;
1.59 + /** Sets the coordinates of the animation. This generally refers
1.60 + to the top left corner of the total area the animation covers.
1.61 + @param aPoint The new coordinates of the animation (usually the top left
1.62 + corner)*/
1.63 + virtual void SetPosition(const TPoint& aPoint) = 0;
1.64 + /** Causes whatever ticker this animation provides to its animator to
1.65 + be frozen untill a corresponding call to unfreeze.
1.66 +
1.67 + You should not normally need to call this function.
1.68 + @see Unfreeze()*/
1.69 + virtual void Freeze() = 0;
1.70 + /** Causes whatever ticker this animation provides to its animator to
1.71 + be unfrozen.
1.72 +
1.73 + You should not normally need to call this function.
1.74 + @see Freeze()*/
1.75 + virtual void Unfreeze() = 0;
1.76 + };
1.77 +
1.78 +#endif //__ANIMATION_H__