Location:
W32STD.H
Link against: ws32.lib
class RWsSpriteBase : public MWsClientClass;
Sprite base class.
Unless stated otherwise, references to sprites in the documentation for this class also apply to pointer cursors.
MWsClientClass
- Base class for all classes whose objects are clients of the window server
RWsSpriteBase
- Sprite base class
Defined in RWsSpriteBase
:
Activate()
, AppendMember()
, Close()
, RWsSpriteBase()
, RWsSpriteBase()
, UpdateMember()
, UpdateMember()
Inherited from MWsClientClass
:
WsHandle()
protected: IMPORT_C RWsSpriteBase();
Protected constructor.
This prevents objects of this type being directly created.
protected: IMPORT_C RWsSpriteBase(RWsSession &aWs);
Protected constructor with a window server session.
This prevents objects of this type being directly created.
|
IMPORT_C TInt Activate();
Activates the sprite or pointer cursor.
Sprites are displayed on the screen when they are activated; pointer cursors are not displayed until they are set into a window
using either RWindowTreeNode::SetCustomPointerCursor()
or RWindowTreeNode::SetPointerCursor()
.
This function should not be called until the sprite or pointer cursor has been fully initialised, and its sprite members have been added.
Before it can call this function, a sprite must be fully constructed using the RWsSprite::RWsSprite(RWsSession& aWs)
and RWsSprite::Construct()
functions, and must have at least one sprite member. Otherwise, a panic will occur. Similarly, a pointer cursor must have
at least one sprite member and must call RWsPointerCursor::RWsPointerCursor
(RWsSession
& aWs) and RWsPointerCursor::Construct()
.
This function always causes a flush of the window server buffer.
|
IMPORT_C TInt AppendMember(const TSpriteMember &aMemberData);
Adds a sprite member to a sprite or pointer cursor.
Sprite members are displayed by the sprite in the order in which they were added to the sprite. This function can be called before and after the sprite has been activated.
The position of the bitmap can be changed in relation to the sprite's origin using the iOffset member of aSpriteList.
This function always causes a flush of the window server buffer.
|
|
IMPORT_C void UpdateMember(TInt aIndex);
Updates the displayed sprite, taking into account any change to the content of the bitmaps for the specified member.
The appearance of a sprite can be changed after it has been activated by drawing to the appropriate TSpriteMember::iBitmap
member, and then calling this function. Alternatively, a new sprite member can be created, containing a new bitmap, and the
sprite can be updated to contain this new member by calling the other UpdateMember()
overload.
You should only use this function if you have changed the content of the bitmap or mask. If you have changed the size of the bitmap then you must use the other overload.
You only need to call this function if you want the content of the screen to update immediately. If you don't call this function then the appearance of a member will update automatically next time that member is drawn to the screen.
|
IMPORT_C TInt UpdateMember(TInt aIndex, const TSpriteMember &aMemberData);
Replaces one of a sprite's members.
This allows the appearance of the sprite to be modified after it has been activated.
You must call this function if you have changed the size of a member. After calling it, the sprite starts showing member zero again.
This function always causes a flush of the window server buffer.
|
|
IMPORT_C void Close();
Destroys the sprite or pointer cursor in the window server, and frees client-side resources used by the sprite.
Any application which constructs an RWsSprite
or RWsPointerCursor
should call this function when the sprite or cursor is no longer needed.
Note that this function does not free resources used by sprite members.