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 _CURSORACCELERATION_INFO
39 } CURSORACCELERATION_INFO
, *PCURSORACCELERATION_INFO
;
41 typedef struct _SYSTEM_CURSORINFO
48 CURSORCLIP_INFO CursorClipInfo
;
49 PCURICON_OBJECT CurrentCursorObject
;
60 UINT MouseHoverHeight;
63 CURSORACCELERATION_INFO CursorAccelerationInfo;
69 BOOL ScreenSaverRunning
;
70 } SYSTEM_CURSORINFO
, *PSYSTEM_CURSORINFO
;
72 BOOL FASTCALL
InitCursorImpl();
73 PCURICON_OBJECT FASTCALL
IntCreateCurIconHandle();
74 VOID FASTCALL
IntCleanupCurIcons(struct _EPROCESS
*Process
, PPROCESSINFO Win32Process
);
76 BOOL
UserDrawIconEx(HDC hDc
, INT xLeft
, INT yTop
, PCURICON_OBJECT pIcon
, INT cxWidth
,
77 INT cyHeight
, UINT istepIfAniCur
, HBRUSH hbrFlickerFreeDraw
, UINT diFlags
);
78 PCURICON_OBJECT FASTCALL
UserGetCurIconObject(HCURSOR hCurIcon
);
80 BOOL FASTCALL
UserSetCursorPos( INT x
, INT y
);
82 int APIENTRY
UserShowCursor(BOOL bShow
);
84 PSYSTEM_CURSORINFO FASTCALL
85 IntGetSysCursorInfo();
87 #define IntReleaseCurIconObject(CurIconObj) \
88 UserDereferenceObject(CurIconObj)
108 #endif /* _WIN32K_CURSORICON_H */