#include <w32std.h>
class RWsPointerCursor : public RWsSpriteBase |
Public Member Functions | |
---|---|
RWsPointerCursor() | |
RWsPointerCursor(RWsSession &) | |
IMPORT_C TInt | Construct(TInt) |
Inherited Attributes | |
---|---|
MWsClientClass::iBuffer | |
MWsClientClass::iWsHandle |
Pointer cursor.
The pointer cursor is created in a similar way to a sprite. After creating it, one or more sprite members containing the bitmaps to be displayed are added.
After a pointer cursor has been created and activated, it does not become visible until the application calls RWindowTreeNode::SetPointerCursor() or RWindowTreeNode::SetCustomPointerCursor(). The pointer cursor's origin automatically tracks the position of the pointing device, or position of emulated single pointer if there are more pointers in the system (see documentation of RWindowBase::EnableAdvancedPointers() for more details), and the origin forms the pointer cursor's "hot spot", i.e., the point whose co-ordinates are sent to the client if a pointer event occurs. If the pointer cursor's bitmap needs to extend to the left or upwards from the pointer position, its sprite member should be given a negative offset in TSpriteMember::iOffset.
Note:
Pointer cursors are rarely used in pure pen architectures, but they are supported for mouse or tablet use.
See also: RWindowBase::EnableAdvancedPointers()
IMPORT_C | RWsPointerCursor | ( | ) |
Default C++ constructor.
Use this constructor to allow classes that contain an RWsPointerCursor to be constructed before an RWsSession exists.
Note: do not use this version of the constructor on its own. Before an RWsPointerCursor object can be used, it must be constructed using the RWsPointerCursor(RWsSession) constructor. An example of this might be as follows:
RWsPointerCursor pointerCursor; pointerCursor=RWsPointerCursor(iWsSession);
IMPORT_C | RWsPointerCursor | ( | RWsSession & | aWs | ) |
Constructs a pointer cursor initialised with a window server session.
Initialisation must be completed using the Construct() function before the sprite can be activated using RWsSpriteBase::Activate().
Once initialisation is complete, the pointer cursor can be passed as an argument to RWsSession::SetSystemPointerCursor() or RWindowTreeNode::SetCustomPointerCursor().
Parameter | Description |
---|---|
aWs | The window server session owning the pointer cursor. |
Completes pointer cursor construction.
This function must be called before the pointer cursor is activated.
It always causes a flush of the window server buffer.
Parameter | Description |
---|---|
aFlags | ESpriteFlash to flash the sprite on and off or 0 for a non-flashing cursor. Note that pointer cursors always behave as if ESpriteNoChildClip and ESpriteNoShadows are set. |
Returns: KErrNone if successful, otherwise one of the system-wide error codes.