1 #ifndef _WIN32K_CURSORICON_H
2 #define _WIN32K_CURSORICON_H
4 #define MAXCURICONHANDLES 4096
6 typedef struct tagCURICON_PROCESS
10 } CURICON_PROCESS
, *PCURICON_PROCESS
;
12 typedef struct _CURICON_OBJECT
16 LIST_ENTRY ProcessList
;
23 } CURICON_OBJECT
, *PCURICON_OBJECT
;
25 typedef struct _CURSORCLIP_INFO
32 } CURSORCLIP_INFO
, *PCURSORCLIP_INFO
;
34 typedef struct _SYSTEM_CURSORINFO
39 CURSORCLIP_INFO CursorClipInfo
;
40 PCURICON_OBJECT CurrentCursorObject
;
49 } SYSTEM_CURSORINFO
, *PSYSTEM_CURSORINFO
;
51 HCURSOR FASTCALL
IntSetCursor(PWINSTATION_OBJECT WinStaObject
, PCURICON_OBJECT NewCursor
, BOOL ForceChange
);
52 BOOL FASTCALL
IntSetupCurIconHandles(PWINSTATION_OBJECT WinStaObject
);
53 PCURICON_OBJECT FASTCALL
IntCreateCurIconHandle(PWINSTATION_OBJECT WinStaObject
);
54 VOID FASTCALL
IntCleanupCurIcons(struct _EPROCESS
*Process
, PW32PROCESS Win32Process
);
56 BOOL FASTCALL
IntGetCursorLocation(PWINSTATION_OBJECT WinStaObject
, POINT
*loc
);
58 #define IntGetSysCursorInfo(WinStaObj) \
59 (PSYSTEM_CURSORINFO)((WinStaObj)->SystemCursor)
61 #define IntReleaseCurIconObject(CurIconObj) \
62 ObmDereferenceObject(CurIconObj)
64 #endif /* _WIN32K_CURSORICON_H */