- fix a typo
[reactos.git] / reactos / include / psdk / winuser.h
index 34a16e8..7976f5b 100644 (file)
@@ -1,13 +1,17 @@
 #ifndef _WINUSER_H
 #define _WINUSER_H
-#if __GNUC__ >= 3
-#pragma GCC system_header
-#endif
 
 #ifdef __cplusplus
 extern "C" {
 #endif
 
+#if !defined(_USER32_)
+#define WINUSERAPI DECLSPEC_IMPORT
+#else
+#define WINUSERAPI
+#endif
+
+
 #define WC_DIALOG MAKEINTATOM(0x8002)
 #define FALT   16
 #define FCONTROL       8
@@ -639,7 +643,7 @@ extern "C" {
 #define CS_BYTEALIGNCLIENT 4096
 #define CS_BYTEALIGNWINDOW 8192
 #define CS_KEYCVTWINDOW 4
-#define CS_NOKEYCVT 256
+#define CS_NOKEYCVT 256 // Class Name to Version
 #define CS_CLASSDC 64
 #define CS_DBLCLKS 8
 #define CS_GLOBALCLASS 16384
@@ -999,7 +1003,6 @@ extern "C" {
 #define SM_CXMAXIMIZED 61
 #define SM_CYMAXIMIZED 62
 #define SM_NETWORK 63
-#define LR_DEFAULTSIZE 64
 #define SM_CLEANBOOT 67
 #define SM_CXDRAG 68
 #define SM_CYDRAG 69
@@ -1015,18 +1018,38 @@ extern "C" {
 #define SM_CYVIRTUALSCREEN 79
 #define SM_CMONITORS 80
 #define SM_SAMEDISPLAYFORMAT 81
-#if (_WIN32_WINNT < 0x0400)
-#define SM_CMETRICS 76
-#else
-#define SM_CMETRICS 83
-#endif
-#if(_WIN32_WINNT >= 0x0501)
+#if(_WIN32_WINNT >= 0x0500)
+#define SM_IMMENABLED 82
+#endif /* _WIN32_WINNT >= 0x0500 */
+#if (_WIN32_WINNT >= 0x0501)
 #define SM_CXFOCUSBORDER 83
 #define SM_CYFOCUSBORDER 84
+#define SM_TABLETPC      86
+#define SM_MEDIACENTER   87
+#define SM_STARTER       88
+#define SM_SERVERR2      89
+#endif /* _WIN32_WINNT >= 0x0501 */
+#if (_WIN32_WINNT >= 0x0600)
+#define SM_MOUSEHORIZONTALWHEELPRESENT 91
+#define SM_CXPADDEDBORDER 92
+#endif /* _WIN32_WINNT >= 0x0600 */
+
+#define SM_REMOTESESSION 0x1000
+#if (_WIN32_WINNT >= 0x0501)
 #define SM_SHUTTINGDOWN 0x2000
 #define SM_REMOTECONTROL 0x2001
 #endif /* _WIN32_WINNT >= 0x0501 */
-#define SM_REMOTESESSION 0X1000
+
+#if (WINVER < 0x0500) && ((_WIN32_WINNT < 0x0400) || !defined(_WIN32_WINNT))
+#define SM_CMETRICS 76
+#elif (WINVER == 0x500)
+#define SM_CMETRICS 83
+#elif (WINVER == 0x501)
+#define SM_CMETRICS 90
+#else
+#define SM_CMETRICS 93
+#endif
+
 #define ARW_BOTTOMLEFT 0
 #define ARW_BOTTOMRIGHT 1
 #define ARW_HIDE 8
@@ -1047,6 +1070,7 @@ extern "C" {
 #define LR_COPYDELETEORG 8
 #define LR_LOADFROMFILE 16
 #define LR_LOADTRANSPARENT 32
+#define LR_DEFAULTSIZE 64
 #define LR_LOADREALSIZE 128
 #define LR_LOADMAP3DCOLORS 4096
 #define LR_CREATEDIBSECTION 8192
@@ -1166,6 +1190,12 @@ extern "C" {
 #define SMTO_ABORTIFHUNG 2
 #define SMTO_BLOCK 1
 #define SMTO_NORMAL 0
+#if (WINVER >= 0x0500)
+#define SMTO_NOTIMEOUTIFNOTHUNG 8
+#endif
+#if (WINVER >= 0x0600)
+#define SMTO_ERRORONEXIT 32
+#endif
 #define SIF_ALL 23
 #define SIF_PAGE 2
 #define SIF_POS 4
@@ -1612,6 +1642,7 @@ extern "C" {
 #define WM_MEASUREITEM 44
 #if (WINVER >= 0x0500)
 #define WM_MENURBUTTONUP 290
+#define WM_UNINITMENUPOPUP 293
 #endif
 #define WM_MENUCHAR 288
 #define WM_MENUCOMMAND 294
@@ -1692,7 +1723,6 @@ extern "C" {
 #define WM_TCARD 82
 #define WM_TIMECHANGE 30
 #define WM_TIMER 275
-#define WM_SYSTIMER 280
 #define WM_UNDO 772
 #define WM_USER 1024
 #define WM_USERCHANGED 84
@@ -1747,14 +1777,6 @@ extern "C" {
 #define WM_CHANGEUISTATE 295
 #define WM_UPDATEUISTATE 296
 #define WM_QUERYUISTATE 297
-#define UIS_SET 1
-#define UIS_CLEAR 2
-#define UIS_INITIALIZE 3
-#define UISF_HIDEFOCUS 1
-#define UISF_HIDEACCEL 2
-#if(_WIN32_WINNT >= 0x0501)
-#define UISF_ACTIVE 4
-#endif /* _WIN32_WINNT >= 0x0501 */
 #endif /* _WIN32_WINNT >= 0x0500 */
 #endif /* _WIN32_WCE */
 #define BM_CLICK 245
@@ -2175,6 +2197,14 @@ extern "C" {
 #define VK_NONAME      0xFC
 #define VK_PA1 0xFD
 #define VK_OEM_CLEAR   0xFE
+
+/* MapVirtualKey translation types */
+#define MAPVK_VK_TO_VSC     0
+#define MAPVK_VSC_TO_VK     1
+#define MAPVK_VK_TO_CHAR    2
+#define MAPVK_VSC_TO_VK_EX  3
+#define MAPVK_VK_TO_VSC_EX  4
+
 #define TME_HOVER      1
 #define TME_LEAVE      2
 #define TME_NONCLIENT   0x00000010
@@ -2430,14 +2460,10 @@ extern "C" {
 #define HBMMENU_POPUP_RESTORE ((HBITMAP)9)
 #define HBMMENU_POPUP_MAXIMIZE ((HBITMAP)10)
 #define HBMMENU_POPUP_MINIMIZE ((HBITMAP)11)
-#define MOD_ALT 1
-#define MOD_CONTROL 2
-#define MOD_SHIFT 4
-#define MOD_WIN 8
-#define MOD_IGNORE_ALL_MODIFIER 1024
-#define MOD_ON_KEYUP  2048
-#define MOD_RIGHT 16384
-#define MOD_LEFT 32768
+#define MOD_ALT         0x0001
+#define MOD_CONTROL     0x0002
+#define MOD_SHIFT       0x0004
+#define MOD_WIN         0x0008
 #define LLKHF_EXTENDED 0x00000001
 #define LLKHF_INJECTED 0x00000010
 #define LLKHF_ALTDOWN  0x00000020
@@ -2569,6 +2595,10 @@ extern "C" {
 #define LWA_COLORKEY 1
 #define LWA_ALPHA 2
 #endif
+#define ULW_COLORKEY        0x00000001
+#define ULW_ALPHA           0x00000002
+#define ULW_OPAQUE          0x00000004
+#define ULW_EX_NORESIZE     0x00000008
 #define GA_PARENT 1
 #define GA_ROOT 2
 #define GA_ROOTOWNER 3
@@ -2599,10 +2629,10 @@ extern "C" {
 #define RIM_TYPEMOUSE    0x00000000
 #define RIM_TYPEKEYBOARD 0x00000001
 #define RIM_TYPEHID      0x00000002
-#define MOUSE_MOVE_RELATIVE      0x00000000
-#define MOUSE_MOVE_ABSOLUTE      0x00000001
-#define MOUSE_VIRTUAL_DESKTOP    0x00000002
-#define MOUSE_ATTRIBUTES_CHANGED 0x00000004
+#define MOUSE_MOVE_RELATIVE               0
+#define MOUSE_MOVE_ABSOLUTE               1
+#define MOUSE_VIRTUAL_DESKTOP             0x02
+#define MOUSE_ATTRIBUTES_CHANGED          0x04
 #define RI_MOUSE_LEFT_BUTTON_DOWN   0x0001
 #define RI_MOUSE_LEFT_BUTTON_UP     0x0002
 #define RI_MOUSE_RIGHT_BUTTON_DOWN  0x0004
@@ -2785,7 +2815,7 @@ typedef struct tagCWPRETSTRUCT {
        WPARAM wParam;
        DWORD message;
        HWND hwnd;
-} CWPRETSTRUCT;
+} CWPRETSTRUCT,*PCWPRETSTRUCT, *LPCWPRETSTRUCT;
 typedef struct tagCWPSTRUCT {
        LPARAM lParam;
        WPARAM wParam;
@@ -2825,7 +2855,6 @@ typedef struct {
        short cx;
        short cy;
 } DLGTEMPLATE,*LPDLGTEMPLATE,*LPDLGTEMPLATEA,*LPDLGTEMPLATEW;
-typedef const DLGTEMPLATE *LPCDLGTEMPLATE;
 typedef const DLGTEMPLATE *LPCDLGTEMPLATEA;
 typedef const DLGTEMPLATE *LPCDLGTEMPLATEW;
 #ifdef UNICODE
@@ -3178,6 +3207,20 @@ typedef struct tagMOUSEHOOKSTRUCT {
        UINT wHitTestCode;
        DWORD dwExtraInfo;
 } MOUSEHOOKSTRUCT,*LPMOUSEHOOKSTRUCT,*PMOUSEHOOKSTRUCT;
+#if ( _WIN32_WINNT >= 0x0500 )
+#ifdef __cplusplus
+typedef struct tagMOUSEHOOKSTRUCTEX : public tagMOUSEHOOKSTRUCT
+{
+        DWORD   mouseData;
+} MOUSEHOOKSTRUCTEX, *LPMOUSEHOOKSTRUCTEX, *PMOUSEHOOKSTRUCTEX;
+#else
+typedef struct tagMOUSEHOOKSTRUCTEX
+{
+        MOUSEHOOKSTRUCT MOUSEHOOKSTRUCT;
+        DWORD   mouseData;
+} MOUSEHOOKSTRUCTEX, *LPMOUSEHOOKSTRUCTEX, *PMOUSEHOOKSTRUCTEX;
+#endif
+#endif
 typedef struct tagTRACKMOUSEEVENT {
        DWORD cbSize;
        DWORD dwFlags;
@@ -4143,7 +4186,7 @@ int WINAPI SetScrollInfo(HWND,int,LPCSCROLLINFO,BOOL);
 int WINAPI SetScrollPos(HWND,int,int,BOOL);
 BOOL WINAPI SetScrollRange(HWND,int,int,int,BOOL);
 BOOL WINAPI SetSysColors(int,const INT *,const COLORREF *);
-HANDLE WINAPI SetSysColorsTemp(const COLORREF *, const HBRUSH *, int);
+DWORD WINAPI SetSysColorsTemp(const COLORREF *, const HBRUSH *, DWORD);
 #define SetSysModalWindow(h) (NULL)
 BOOL WINAPI SetSystemCursor(HCURSOR,DWORD);
 BOOL WINAPI SetThreadDesktop(HDESK);
@@ -4240,6 +4283,20 @@ BOOL WINAPI LockSetForegroundWindow(UINT);
 BOOL WINAPI SetLayeredWindowAttributes(HWND,COLORREF,BYTE,DWORD);
 #if defined(_WINGDI_) && !defined(NOGDI)
 BOOL WINAPI UpdateLayeredWindow(HWND,HDC,POINT*,SIZE*,HDC,POINT*,COLORREF,BLENDFUNCTION*,DWORD);
+typedef struct tagUPDATELAYEREDWINDOWINFO
+{
+    DWORD                cbSize;
+    HDC                  hdcDst;
+    POINT CONST*         pptDst;
+    SIZE CONST*          psize;
+    HDC                  hdcSrc;
+    POINT CONST*         pptSrc;
+    COLORREF             crKey;
+    BLENDFUNCTION CONST* pblend;
+    DWORD                dwFlags;
+    RECT CONST*          prcDirty;
+} UPDATELAYEREDWINDOWINFO, *PUPDATELAYEREDWINDOWINFO;
+BOOL WINAPI UpdateLayeredWindowIndirect(HWND,UPDATELAYEREDWINDOWINFO CONST*);
 #endif
 #endif
 #if (_WIN32_WINNT >= 0x0501)