Location:
W32ADLL.H
class MAnimSpriteFunctions;
Sprite animation utility functions interface.
The interface includes functions for querying and manipulating a sprite.
You do NOT have to create an object of this type. The class is implemented by the window server, and provides utility functions
to all CSpriteAnim
derived classes via the CSpriteAnim::iSpriteFunctions
pointer.
It is not intended for user derivation.
Defined in MAnimSpriteFunctions
:
Activate()
, GetSpriteMember()
, Reserved()
, Reserved2()
, Reserved3()
, Reserved4()
, SetPosition()
, SizeChangedL()
, SpriteCanBeSeen()
, UpdateMember()
virtual TSpriteMember *GetSpriteMember(TInt aMember) const=0;
Gets sprite member data.
Each member of the sprite is effectively a bitmap, which is displayed for a different amount of time.
|
|
virtual void UpdateMember(TInt aMember, const TRect &aRect, TBool aFullUpdate)=0;
Redraws part of a sprite.
The updates a sprite on the screen, possibly after the bitmap for a particular sprite member has been changed.
Two types of redraw are possible. A full update takes the bitmap off the screen and then re-draws it. This is 'safe' in that the screen always reflects the contents of the sprite bitmap. However it can result in flicker. Use the aRect parameter to specify the (small) part of the sprite which has been changed, then any flicker will only occur in this rectangle.
A full update is required if you have removed pixels from the mask, i.e. made pixels in the sprite transparent when they were not before. If drawing is additive, e.g. you are using a mask or the draw mode is EDrawModePEN, a partial update is possible. Otherwise the aFullUpdate argument is ignored and a full update is always done.
Note: if the sprite member aMember is not visible then there is no need for a change to the display, so the aRect and aFullUpdate parameters are ignored.
|
virtual void Activate(TBool aActive)=0;
Turns a sprite on or off.
In effect this makes the sprite bitmap visible.
|
virtual void SizeChangedL()=0;
Finishes constructing the sprite.
It also sets the currently displayed sprite member to zero.
This function must be called after members change size.
virtual void SetPosition(const TPoint &aPos)=0;
Set the sprite's position.
|
virtual TBool SpriteCanBeSeen() const=0;
Returns the visibility of the sprite.
A sprite can be seen if it is neither obscured by another window nor hidden.
|
private: virtual void Reserved4() const;