GreDeviceSetCursor
From EDM2
GreDeviceSetCursor sets the cursor bit map that defines the cursor shape.
- Simulation support
- This function is mandatory for display drivers. For other drivers, it is simulated by a handling routine in the graphics engine.
Syntax
GreDeviceSetCursor(hdc, pptlHotSpot, hbm, pInstance, lFunction)
Parameters
- hdc (HDC) - input
- The device context handle.
- pptlHotSpot (PPOINTL) - input
- A pointer to hot spot coordinates.
- x : X-position of the hotspot within the cursor bit map
- y : Y-position of the hotspot within the cursor bit map.
- hbm (ULONG) - input
- Bit-map handle used for the cursor image.
- pInstance (PVOID) - input
- A pointer to instance data.
- lFunction (ULONG) - input
- High-order WORD=flags; low-order WORD=NGreDeviceSetCursor.
Return Code
- fSuccess (BOOL) - returns
- Return codes.
- On completion, the handling routine must return BOOLEAN (fSuccess).
- TRUE Successful
- FALSE Error
- Possible Errors Detected: When an error is detected, the handling routine must call WinSetErrorInfo to post the condition. Error codes for conditions that the handling routine is expected to check include:
- PMERR_DEV_FUNC_NOT_INSTALLED
- PMERR_INV_COORDINATE
- PMERR_INV_CURSOR_BITMAP
- PMERR_INV_HDC
Remarks
GreDeviceSetCursor is subject to all clipping.
The handling routine takes the previous cursor bit map and replaces it with the one indicated by hbm. If hbm is NULL, the cursor has no shape and its image is removed from the display screen.
Sample Code
#define INCL_GRE_BITMAPS #include <os2.h> HDC hdc; /* The device context handle. */ PPOINTL pptlHotSpot; /* A pointer to hot spot coordinates. */ ULONG hbm; /* Bit-map handle used for the cursor image. */ PVOID pInstance; /* A pointer to instance data. */ ULONG lFunction; /* High-order WORD=flags; low-order WORD=NGreDeviceSetCursor. */ BOOL fSuccess; /* Return codes. */ fSuccess = GreDeviceSetCursor(hdc, pptlHotSpot, hbm, pInstance, lFunction);