DrvSetPointerShape (Windows CE 5.0)
This function requests the driver to take the pointer off the display if the driver has drawn it there, and to attempt to set a new pointer shape, and put the new pointer on the display at a specified position.
ULONG DrvSetPointerShape( SURFOBJ* pso, SURFOBJ* psoMask, SURFOBJ* psoColor, XLATEOBJ* pxlo, LONG xHot, LONG yHot, LONG x, LONG y, RECTL* prcl, FLONG fl );
- [in] Pointer to a SURFOBJ structure that describes the surface on which to draw.
- [in] Pointer to a SURFOBJ structure that defines the AND-XOR mask. The dimensions of this bitmap determine the size of the pointer. There are no implicit constraints on pointer sizes, but optimal pointer pixel sizes are 32 x 32, 48 x 48, and 64 x 64. If this parameter is NULL, the pointer is transparent.
- [in] Pointer to a SURFOBJ structure that defines the colors for a color pointer. If this parameter is NULL, the pointer is monochrome. The pointer bitmap has the same width as psoMask and half the height.
- [in] Pointer to a XLATEOBJ structure that defines the colors in psoColor.
- [in] X position of the pointer's hot spot relative to its upper-left pixel. The pixel indicated by the hot spot should be positioned at the new pointer position.
- [in] Y position of the pointer's hot spot relative to its upper-left pixel. The pixel indicated by the hot spot should be positioned at the new pointer position.
- [in] X coordinate of the new pointer position.
- [in] Y coordinate of the new pointer position.
- [in] Location where the driver should write a rectangle that specifies a tight bound for the visible portion of the pointer.
- [in] Ignored, set to NULL.
The following table shows the possible return values. The return value can be one of these values.
|SPS_ACCEPT_NOEXCLUDE||Driver accepts the shape. There is in-hardware support for the shape, and GDI is not concerned about other drawings overwriting the pointer.|
|SPS_ERROR||Driver normally supports this shape, but failed for unspecified reasons.|
The iUniq members of the SURFOBJ structures to which psoMask and psoColor point are unique for unique pointers. The driver can use this information in conjunction with these structures' unique dhsurf handles as cache keys for cursor caching.
OS Versions: Windows CE 1.0 and later.
Link Library: Ddi_ati_lib.lib, Ddi_flat_lib.lib, Ddi_gx_lib.lib, Ddi_mq200_lib.lib, Ddi_nop_lib.lib, Ddi_rflat_lib.lib, Ddi_rgx_lib.lib, or Ddi_tvia5_lib.lib.
Send Feedback on this topic to the authors