ReactOS  0.4.14-dev-606-g14ebc0b
cursoricon.h
Go to the documentation of this file.
1 #pragma once
2 
3 #define MAXCURICONHANDLES 4096
4 
5 /* Flags that are allowed to be set through NtUserSetCursorIconData() */
6 #define CURSORF_USER_MASK \
7  (CURSORF_FROMRESOURCE | CURSORF_LRSHARED | CURSORF_ACON)
8 
9 typedef struct _CURICON_OBJECT
10 {
28 
29 typedef struct tagACON
30 {
43 } ACON, *PACON;
44 
46 
47 BOOLEAN
49  _In_ PVOID Object);
50 
53 
54 VOID
56  _In_ PVOID Object);
57 
59 {
64 
65 typedef struct _SYSTEM_CURSORINFO
66 {
70 // BOOL SwapButtons;
76 /*
77  UINT WheelScroLines;
78  UINT WheelScroChars;
79  UINT DblClickSpeed;
80  UINT DblClickWidth;
81  UINT DblClickHeight;
82 
83  UINT MouseHoverTime;
84  UINT MouseHoverWidth;
85  UINT MouseHoverHeight;
86 
87  UINT MouseSpeed;
88  CURSORACCELERATION_INFO CursorAccelerationInfo;
89 */
96 
97 typedef struct {
100 } SYSTEMCURICO;
101 
102 extern SYSTEMCURICO gasysico[];
103 extern SYSTEMCURICO gasyscur[];
104 
105 #define ROIC_SAMPLE 0
106 #define ROIC_HAND 1
107 #define ROIC_QUES 2
108 #define ROIC_BANG 3
109 #define ROIC_NOTE 4
110 #define ROIC_WINLOGO 5
111 
112 #define ROCR_ARROW 0
113 #define ROCR_IBEAM 1
114 #define ROCR_WAIT 2
115 #define ROCR_CROSS 3
116 #define ROCR_UP 4
117 #define ROCR_SIZE 5
118 #define ROCR_ICON 6
119 #define ROCR_SIZENWSE 7
120 #define ROCR_SIZENESW 8
121 #define ROCR_SIZEWE 9
122 #define ROCR_SIZENS 10
123 #define ROCR_SIZEALL 11
124 #define ROCR_NO 12
125 #define ROCR_HAND 13
126 #define ROCR_APPSTARTING 14
127 #define ROCR_HELP 15
128 
129 #define SYSTEMCUR(func) (gasyscur[ROCR_ ## func].handle)
130 #define SYSTEMICO(func) (gasysico[ROIC_ ## func].handle)
131 
133 
136 
137 BOOL UserDrawIconEx(HDC hDc, INT xLeft, INT yTop, PCURICON_OBJECT pIcon, INT cxWidth,
138  INT cyHeight, UINT istepIfAniCur, HBRUSH hbrFlickerFreeDraw, UINT diFlags);
140 BOOL UserSetCursorPos( INT x, INT y, DWORD flags, ULONG_PTR dwExtraInfo, BOOL Hook);
144 
145 /* EOF */
struct _SYSTEM_CURSORINFO * PSYSTEM_CURSORINFO
BOOL APIENTRY UserClipCursor(RECTL *prcl)
Definition: cursoricon.c:700
static HICON
Definition: imagelist.c:84
VOID FASTCALL IntCleanupCurIconCache(PPROCESSINFO Win32Process)
Definition: cursoricon.c:391
HBITMAP hbmColor
Definition: cursoricon.h:20
UINT cpcur
Definition: cursoricon.h:37
struct tagACON ACON
PROCMARKHEAD head
Definition: cursoricon.h:31
static HDC
Definition: imagelist.c:92
VOID IntLoadSystenIcons(HICON, DWORD)
Definition: cursoricon.c:137
GLint GLint GLint GLint GLint x
Definition: gl.h:1548
INT * ajifRate
Definition: cursoricon.h:41
HICON HCURSOR
Definition: windef.h:299
BOOL InitCursorImpl(VOID)
Definition: cursoricon.c:64
#define FASTCALL
Definition: nt_native.h:50
int32_t INT
Definition: typedefs.h:56
SYSTEMCURICO gasyscur[]
Definition: cursoricon.c:32
uint32_t ULONG_PTR
Definition: typedefs.h:63
struct _CURICON_OBJECT * pcurNext
Definition: cursoricon.h:12
struct _SYSTEM_CURSORINFO SYSTEM_CURSORINFO
PCURICON_OBJECT FASTCALL UserGetCurIconObject(HCURSOR hCurIcon)
Definition: cursoricon.c:200
HBITMAP hbmUserAlpha
Definition: cursoricon.h:23
PSYSTEM_CURSORINFO IntGetSysCursorInfo(VOID)
Definition: cursoricon.c:187
unsigned int BOOL
Definition: ntddk_ex.h:94
struct _CURICON_OBJECT * pcurNext
Definition: cursoricon.h:32
long LONG
Definition: pedump.c:60
HANDLE IntCreateCurIconHandle(BOOLEAN Anim)
Definition: cursoricon.c:281
short SHORT
Definition: pedump.c:59
PCURICON_OBJECT CurrentCursorObject
Definition: cursoricon.h:74
struct _CURSORACCELERATION_INFO CURSORACCELERATION_INFO
unsigned char BOOLEAN
USHORT atomModName
Definition: cursoricon.h:14
SYSTEMCURICO gasysico[]
Definition: cursoricon.c:54
UNICODE_STRING strName
Definition: cursoricon.h:13
USHORT rt
Definition: cursoricon.h:35
USHORT atomModName
Definition: cursoricon.h:34
PROCMARKHEAD head
Definition: cursoricon.h:11
BOOL UserDrawIconEx(HDC hDc, INT xLeft, INT yTop, PCURICON_OBJECT pIcon, INT cxWidth, INT cyHeight, UINT istepIfAniCur, HBRUSH hbrFlickerFreeDraw, UINT diFlags)
Definition: cursoricon.c:1688
unsigned long DWORD
Definition: ntddk_ex.h:95
static IUnknown Object
Definition: main.c:512
GLbitfield flags
Definition: glext.h:7161
UINT cicur
Definition: cursoricon.h:38
BOOL UserSetCursorPos(INT x, INT y, DWORD flags, ULONG_PTR dwExtraInfo, BOOL Hook)
Definition: cursoricon.c:238
ULONG CURSORF_flags
Definition: cursoricon.h:16
struct _CURICON_OBJECT CURICON_OBJECT
#define _In_
Definition: no_sal2.h:204
struct _CURSORACCELERATION_INFO * PCURSORACCELERATION_INFO
unsigned short USHORT
Definition: pedump.c:61
UINT iicur
Definition: cursoricon.h:42
DWORD * aicur
Definition: cursoricon.h:40
#define FIELD_OFFSET(t, f)
Definition: typedefs.h:254
unsigned int UINT
Definition: ndis.h:50
GLint GLint GLint GLint GLint GLint y
Definition: gl.h:1548
DWORD type
Definition: cursoricon.h:98
HBITMAP hbmMask
Definition: cursoricon.h:19
struct _CURICON_OBJECT * PCURICON_OBJECT
HBITMAP hbmAlpha
Definition: cursoricon.h:21
BOOLEAN IntDestroyCurIconObject(_In_ PVOID Object)
Definition: cursoricon.c:313
_In_ ULONG _In_ CLIPOBJ _In_ RECTL * prcl
Definition: winddi.h:3529
struct tagACON * PACON
unsigned int ULONG
Definition: retypes.h:1
C_ASSERT(FIELD_OFFSET(ACON, cpcur)==FIELD_OFFSET(CURICON_OBJECT, xHotspot))
static HBITMAP
Definition: button.c:44
PCURICON_OBJECT * aspcur
Definition: cursoricon.h:39
PCURICON_OBJECT IntSystemSetCursor(PCURICON_OBJECT)
Definition: cursoricon.c:230
ULONG CURSORF_flags
Definition: cursoricon.h:36
PCURICON_OBJECT handle
Definition: cursoricon.h:99
UNICODE_STRING strName
Definition: cursoricon.h:33
#define APIENTRY
Definition: api.h:79
VOID FreeCurIconObject(_In_ PVOID Object)
Definition: cursoricon.c:332