xref: /OK3568_Linux_fs/external/xserver/hw/xnest/XNCursor.h (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1 /*
2 
3 Copyright 1993 by Davor Matic
4 
5 Permission to use, copy, modify, distribute, and sell this software
6 and its documentation for any purpose is hereby granted without fee,
7 provided that the above copyright notice appear in all copies and that
8 both that copyright notice and this permission notice appear in
9 supporting documentation.  Davor Matic makes no representations about
10 the suitability of this software for any purpose.  It is provided "as
11 is" without express or implied warranty.
12 
13 */
14 
15 #ifndef XNESTCURSOR_H
16 #define XNESTCURSOR_H
17 
18 #include "mipointrst.h"
19 
20 typedef struct {
21     miPointerSpriteFuncPtr spriteFuncs;
22 } xnestCursorFuncRec, *xnestCursorFuncPtr;
23 
24 extern DevPrivateKeyRec xnestCursorScreenKeyRec;
25 
26 #define xnestCursorScreenKey (&xnestCursorScreenKeyRec)
27 extern xnestCursorFuncRec xnestCursorFuncs;
28 
29 typedef struct {
30     Cursor cursor;
31 } xnestPrivCursor;
32 
33 #define xnestGetCursorPriv(pCursor, pScreen) ((xnestPrivCursor *) \
34     dixLookupScreenPrivate(&(pCursor)->devPrivates, CursorScreenKey, pScreen))
35 
36 #define xnestSetCursorPriv(pCursor, pScreen, v) \
37     dixSetScreenPrivate(&(pCursor)->devPrivates, CursorScreenKey, pScreen, v)
38 
39 #define xnestCursor(pCursor, pScreen) \
40   (xnestGetCursorPriv(pCursor, pScreen)->cursor)
41 
42 Bool xnestRealizeCursor(DeviceIntPtr pDev,
43                         ScreenPtr pScreen, CursorPtr pCursor);
44 Bool xnestUnrealizeCursor(DeviceIntPtr pDev,
45                           ScreenPtr pScreen, CursorPtr pCursor);
46 void xnestRecolorCursor(ScreenPtr pScreen, CursorPtr pCursor, Bool displayed);
47 void xnestSetCursor(DeviceIntPtr pDev,
48                     ScreenPtr pScreen, CursorPtr pCursor, int x, int y);
49 void xnestMoveCursor(DeviceIntPtr pDev, ScreenPtr pScreen, int x, int y);
50 Bool xnestDeviceCursorInitialize(DeviceIntPtr pDev, ScreenPtr pScreen);
51 void xnestDeviceCursorCleanup(DeviceIntPtr pDev, ScreenPtr pScreen);
52 #endif                          /* XNESTCURSOR_H */
53