Commit | Line | Data |
---|---|---|
a09e091a JB |
1 | |
2 | #ifndef _XF86CURSOR_H | |
3 | #define _XF86CURSOR_H | |
4 | ||
5 | #include "xf86str.h" | |
6 | #include "mipointer.h" | |
7 | ||
8 | typedef struct _xf86CursorInfoRec { | |
9 | ScrnInfoPtr pScrn; | |
10 | int Flags; | |
11 | int MaxWidth; | |
12 | int MaxHeight; | |
13 | void (*SetCursorColors) (ScrnInfoPtr pScrn, int bg, int fg); | |
14 | void (*SetCursorPosition) (ScrnInfoPtr pScrn, int x, int y); | |
15 | void (*LoadCursorImage) (ScrnInfoPtr pScrn, unsigned char *bits); | |
16 | void (*HideCursor) (ScrnInfoPtr pScrn); | |
17 | void (*ShowCursor) (ScrnInfoPtr pScrn); | |
18 | unsigned char *(*RealizeCursor) (struct _xf86CursorInfoRec *, CursorPtr); | |
19 | Bool (*UseHWCursor) (ScreenPtr, CursorPtr); | |
20 | ||
21 | #ifdef ARGB_CURSOR | |
22 | Bool (*UseHWCursorARGB) (ScreenPtr, CursorPtr); | |
23 | void (*LoadCursorARGB) (ScrnInfoPtr, CursorPtr); | |
24 | #endif | |
25 | ||
26 | } xf86CursorInfoRec, *xf86CursorInfoPtr; | |
27 | ||
28 | extern _X_EXPORT Bool xf86InitCursor(ScreenPtr pScreen, | |
29 | xf86CursorInfoPtr infoPtr); | |
30 | extern _X_EXPORT xf86CursorInfoPtr xf86CreateCursorInfoRec(void); | |
31 | extern _X_EXPORT void xf86DestroyCursorInfoRec(xf86CursorInfoPtr); | |
32 | extern _X_EXPORT void xf86ForceHWCursor(ScreenPtr pScreen, Bool on); | |
33 | ||
34 | #define HARDWARE_CURSOR_INVERT_MASK 0x00000001 | |
35 | #define HARDWARE_CURSOR_AND_SOURCE_WITH_MASK 0x00000002 | |
36 | #define HARDWARE_CURSOR_SWAP_SOURCE_AND_MASK 0x00000004 | |
37 | #define HARDWARE_CURSOR_SOURCE_MASK_NOT_INTERLEAVED 0x00000008 | |
38 | #define HARDWARE_CURSOR_SOURCE_MASK_INTERLEAVE_1 0x00000010 | |
39 | #define HARDWARE_CURSOR_SOURCE_MASK_INTERLEAVE_8 0x00000020 | |
40 | #define HARDWARE_CURSOR_SOURCE_MASK_INTERLEAVE_16 0x00000040 | |
41 | #define HARDWARE_CURSOR_SOURCE_MASK_INTERLEAVE_32 0x00000080 | |
42 | #define HARDWARE_CURSOR_SOURCE_MASK_INTERLEAVE_64 0x00000100 | |
43 | #define HARDWARE_CURSOR_TRUECOLOR_AT_8BPP 0x00000200 | |
44 | #define HARDWARE_CURSOR_BIT_ORDER_MSBFIRST 0x00000400 | |
45 | #define HARDWARE_CURSOR_NIBBLE_SWAPPED 0x00000800 | |
46 | #define HARDWARE_CURSOR_SHOW_TRANSPARENT 0x00001000 | |
47 | #define HARDWARE_CURSOR_UPDATE_UNHIDDEN 0x00002000 | |
48 | #ifdef ARGB_CURSOR | |
49 | #define HARDWARE_CURSOR_ARGB 0x00004000 | |
50 | #endif | |
51 | ||
52 | #endif /* _XF86CURSOR_H */ |