CAknsEffectAnim Class Reference
class CAknsEffectAnim : public CBase |
Animation controller for using effect animations.
Constructor & Destructor Documentation
CAknsEffectAnim()
CAknsEffectAnim | ( | ) | [private] |
~CAknsEffectAnim()
IMPORT_C | ~CAknsEffectAnim | ( | ) | [virtual] |
Member Functions Documentation
BeginConfigInputLayersL(const TSize &, TBool)
IMPORT_C void | BeginConfigInputLayersL | ( | const TSize & | aNewSize, |
| TBool | aAboutToStart |
| ) | |
Starts configuring input layers, should be called prior to Begin() and Continue() to restore input layers to animation. Configure sequence is as follows: 1. Call BeginConfigLayers to start configuration 2. Use InputRgbGc and InputAlphaGc to prepare input layers 3. Call EndConfigLayers to end configuration
Parameters
const TSize & aNewSize | The layer size, must be larger than or equal to minimum size. Providing size smaller than minimum size will lead to leave with KErrArgument. |
TBool aAboutToStart | If animation is about to be started or continued after layer configuration this should be set to ETrue (to keep input layers). Otherwise EFalse should be used. |
ConstructFromSkinL(const TAknsItemID &)
Constructs animation from skin item. Leaves if animation construction fails.
ConstructL(MAknsEffectAnimObserver *)
Continue()
Continues the animation from the state where it was paused.
EndConfigInputLayersL()
IMPORT_C void | EndConfigInputLayersL | ( | ) | |
Ends layer configuration.
InputAlphaGc()
Graphics context for drawing the input layer alpha. Can be NULL, in this case animation is not expecting input layer alpha.
InputRgbGc()
Graphics context for drawing the input layer RGB. Can be NULL, in this case animation is not expecting input layer.
IsIdling()
IMPORT_C TBool | IsIdling | ( | ) | const |
MinimumSize()
IMPORT_C TSize | MinimumSize | ( | ) | const |
NeedsInputLayer()
IMPORT_C TBool | NeedsInputLayer | ( | ) | const |
NewL(MAknsEffectAnimObserver *)
Pause()
Pauses the animation. Input layers are not released.
Render(CFbsBitGc &, const TRect &)
Renders the current animation frame with the provided graphics context. The animation may have an output mask. The output mask will be used in the rendering if it exists. Otherwise nonmasked renderig will be used. Rendering will use BitBlt. For more specialized rendering use the exposed output bitmaps.
Parameters
CFbsBitGc & aGc | The graphics context used for rendering. |
const TRect & aGcRect | The frame is blit to this rectangle on the graphics context target. |
Render(CWindowGc &, const TRect &)
Similar to the other Render, this version is just for the window graphics context.
Render(CBitmapContext &, const TRect &)
Similar to the other renders, this version is just for the bitmap graphics context.
SetIdling(TInt)
IMPORT_C void | SetIdling | ( | TInt | aIntervalMs | ) | |
When animation is idling it won't update the actual animation. Observer AnimFrameReady will be called when idle timer timeouts. Animation observer should check there whether or not animation is idling and ignore redraw calls caused by idling.
Only animations in state EAknsAnimStateRunning can be set idling. Setting idling causes the animation to go in paused state. Trying to idle animation in any other state will be silently ignored. Also, idling is interrupted when animation is started, stoppped, paused or continued. Idling is not interrupted if the animation is resized when being idled. Idling can be reset, e.g. calling SetIdling multiple times is ok.
Size()
IMPORT_C TSize | Size | ( | ) | const |
Start()
Starts the animation from the very beginning.
Stop()
Stops the animation. Input layers are released, output layer is kept.
UpdateOutput()
IMPORT_C TInt | UpdateOutput | ( | ) | |
Renders the output layer once without notifying the animation observer. Doesn't set animator error state if fails.
Member Data Documentation
TInt
iAboutToStart
TInt
| iAboutToStart | [private] |
CAknsAlAnimatorBmp * iAnim
CAknsAlAnimatorBmp * | iAnim | [private] |
Copyright ©2010 Nokia Corporation and/or its subsidiary(-ies).
All rights
reserved. Unless otherwise stated, these materials are provided under the terms of the Eclipse Public License
v1.0.