#include <w32adll.h>
class MAnimSpriteFunctions |
Public Member Functions | |
---|---|
pure virtual void | Activate(TBool) |
pure virtual TSpriteMember * | GetSpriteMember(TInt) |
pure virtual void | SetPosition(const TPoint &) |
pure virtual void | SizeChangedL() |
pure virtual TBool | SpriteCanBeSeen() |
pure virtual void | UpdateMember(TInt, const TRect &, TBool) |
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.
void | Activate | ( | TBool | aActive | ) | [pure virtual] |
Turns a sprite on or off.
In effect this makes the sprite bitmap visible.
Parameters | |
---|---|
aActive | ETrue to turn sprite on. EFalse to turn it off. |
TSpriteMember * | GetSpriteMember | ( | TInt | aMember | ) | const [pure virtual] |
Gets sprite member data.
Each member of the sprite is effectively a bitmap, which is displayed for a different amount of time.
Parameters | |
---|---|
aMember | The index of the sprite member for which information is required. |
void | SetPosition | ( | const TPoint & | aPos | ) | [pure virtual] |
Set the sprite's position.
Parameters | |
---|---|
aPos | The new position of the sprite. |
void | SizeChangedL | ( | ) | [pure virtual] |
Finishes constructing the sprite.
It also sets the currently displayed sprite member to zero.
This function must be called after members change size.
TBool | SpriteCanBeSeen | ( | ) | const [pure virtual] |
Returns the visibility of the sprite.
A sprite can be seen if it is neither obscured by another window nor hidden.
Redraws part of a sprite. Updates a sprite on the screen, possibly after the bitmap for a particular sprite member has been changed.
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 used to be required if you had 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 used to be possible. But current versions of the window-server always do full back to front rendering.
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.
Parameters | |
---|---|
aMember | The index of the sprite member that is to be updated. |
aRect | The part of the sprite member which has changed. |
aFullUpdate | Not used. Wserv now always do full back to front rendering. |