include: Move macros to winuser.rh and include it from winuser.h to avoid duplication. (try 2)

Francois Gouget fgouget at free.fr
Mon Nov 21 02:42:30 CST 2011


Also use __MSABI_LONG() for all the relevant macros.
---

I rediffed it and verified that it applies on a pristine Wine tree.

 include/winuser.h  | 1219 +--------------------------------------
 include/winuser.rh | 1630 ++++++++++++++++++++++++++++++++++++++++------------
 2 files changed, 1267 insertions(+), 1582 deletions(-)

diff --git a/include/winuser.h b/include/winuser.h
index 0e1c321..c8ffe6d 100644
--- a/include/winuser.h
+++ b/include/winuser.h
@@ -28,6 +28,8 @@
 #ifndef RC_INVOKED
 #include <stdarg.h>
 #endif
+#include <winuser.rh>
+
 
 #ifdef __cplusplus
 extern "C" {
@@ -689,8 +691,6 @@ typedef struct tagDRAWTEXTPARAMS
 	UINT	uiLengthDrawn;
 } DRAWTEXTPARAMS,*LPDRAWTEXTPARAMS;
 
-#define WM_USER             0x0400
-
 typedef struct
 {
   LPARAM        lParam;
@@ -729,10 +729,12 @@ typedef struct tagWINDOWPLACEMENT
 #define MAKEINTRESOURCEA(i) (LPSTR)((ULONG_PTR)((WORD)(i)))
 #define MAKEINTRESOURCEW(i) (LPWSTR)((ULONG_PTR)((WORD)(i)))
 
-#ifdef WINE_NO_UNICODE_MACROS /* force using a cast */
-#define MAKEINTRESOURCE(i) ((ULONG_PTR)((WORD)(i)))
-#else
-#define MAKEINTRESOURCE WINELIB_NAME_AW(MAKEINTRESOURCE)
+#ifndef RC_INVOKED
+# ifdef WINE_NO_UNICODE_MACROS /* force using a cast */
+#  define MAKEINTRESOURCE(i) ((ULONG_PTR)((WORD)(i)))
+# else
+#  define MAKEINTRESOURCE WINELIB_NAME_AW(MAKEINTRESOURCE)
+# endif
 #endif
 
 /* Predefined resource types */
@@ -757,74 +759,10 @@ typedef struct tagWINDOWPLACEMENT
 #define RT_ANIICON        MAKEINTRESOURCE(22)
 #define RT_HTML           MAKEINTRESOURCE(23)
 
-#ifndef RC_INVOKED
-#define RT_MANIFEST                                        MAKEINTRESOURCE(24)
-#define CREATEPROCESS_MANIFEST_RESOURCE_ID                 MAKEINTRESOURCE(1)
-#define ISOLATIONAWARE_MANIFEST_RESOURCE_ID                MAKEINTRESOURCE(2)
-#define ISOLATIONAWARE_NOSTATICIMPORT_MANIFEST_RESOURCE_ID MAKEINTRESOURCE(3)
-#define MINIMUM_RESERVED_MANIFEST_RESOURCE_ID              MAKEINTRESOURCE(1)
-#define MAXIMUM_RESERVED_MANIFEST_RESOURCE_ID              MAKEINTRESOURCE(16)
-#else
-#define RT_MANIFEST                                        24
-#define CREATEPROCESS_MANIFEST_RESOURCE_ID                 1
-#define ISOLATIONAWARE_MANIFEST_RESOURCE_ID                2
-#define ISOLATIONAWARE_NOSTATICIMPORT_MANIFEST_RESOURCE_ID 3
-#define MINIMUM_RESERVED_MANIFEST_RESOURCE_ID              1
-#define MAXIMUM_RESERVED_MANIFEST_RESOURCE_ID              16
-#endif
 
   /* cbWndExtra bytes for dialog class */
 #define DLGWINDOWEXTRA      30
 
-/* Button control styles */
-#define BS_PUSHBUTTON          __MSABI_LONG(0x00000000)
-#define BS_DEFPUSHBUTTON       __MSABI_LONG(0x00000001)
-#define BS_CHECKBOX            __MSABI_LONG(0x00000002)
-#define BS_AUTOCHECKBOX        __MSABI_LONG(0x00000003)
-#define BS_RADIOBUTTON         __MSABI_LONG(0x00000004)
-#define BS_3STATE              __MSABI_LONG(0x00000005)
-#define BS_AUTO3STATE          __MSABI_LONG(0x00000006)
-#define BS_GROUPBOX            __MSABI_LONG(0x00000007)
-#define BS_USERBUTTON          __MSABI_LONG(0x00000008)
-#define BS_AUTORADIOBUTTON     __MSABI_LONG(0x00000009)
-#define BS_PUSHBOX             __MSABI_LONG(0x0000000A)
-#define BS_OWNERDRAW           __MSABI_LONG(0x0000000B)
-#define BS_TYPEMASK            __MSABI_LONG(0x0000000F)
-#define BS_LEFTTEXT            __MSABI_LONG(0x00000020)
-#define BS_RIGHTBUTTON         BS_LEFTTEXT
-
-#define BS_TEXT                __MSABI_LONG(0x00000000)
-#define BS_ICON                __MSABI_LONG(0x00000040)
-#define BS_BITMAP              __MSABI_LONG(0x00000080)
-#define BS_LEFT                __MSABI_LONG(0x00000100)
-#define BS_RIGHT               __MSABI_LONG(0x00000200)
-#define BS_CENTER              __MSABI_LONG(0x00000300)
-#define BS_TOP                 __MSABI_LONG(0x00000400)
-#define BS_BOTTOM              __MSABI_LONG(0x00000800)
-#define BS_VCENTER             __MSABI_LONG(0x00000C00)
-#define BS_PUSHLIKE            __MSABI_LONG(0x00001000)
-#define BS_MULTILINE           __MSABI_LONG(0x00002000)
-#define BS_NOTIFY              __MSABI_LONG(0x00004000)
-#define BS_FLAT                __MSABI_LONG(0x00008000)
-
-  /* Dialog styles */
-#define DS_ABSALIGN		0x0001
-#define DS_SYSMODAL		0x0002
-#define DS_3DLOOK		0x0004	/* win95 */
-#define DS_FIXEDSYS		0x0008	/* win95 */
-#define DS_NOFAILCREATE		0x0010	/* win95 */
-#define DS_LOCALEDIT		0x0020
-#define DS_SETFONT		0x0040
-#define DS_MODALFRAME		0x0080
-#define DS_NOIDLEMSG		0x0100
-#define DS_SETFOREGROUND	0x0200	/* win95 */
-#define DS_CONTROL		0x0400	/* win95 */
-#define DS_CENTER		0x0800	/* win95 */
-#define DS_CENTERMOUSE		0x1000	/* win95 */
-#define DS_CONTEXTHELP		0x2000	/* win95 */
-#define DS_USEPIXELS		0x8000
-#define DS_SHELLFONT		(DS_SETFONT | DS_FIXEDSYS)
-
 
   /* Dialog messages */
 #define DM_GETDEFID         (WM_USER+0)
@@ -858,95 +796,6 @@ typedef struct tagWINDOWPLACEMENT
 #define ODS_NOFOCUSRECT  0x0200 /* No focus rectangle */
 #define ODS_COMBOBOXEDIT 0x1000 /* Edit of a combo box */
 
-/* Edit control styles */
-#ifndef NOWINSTYLES
-#define ES_LEFT         0x00000000
-#define ES_CENTER       0x00000001
-#define ES_RIGHT        0x00000002
-#define ES_MULTILINE    0x00000004
-#define ES_UPPERCASE    0x00000008
-#define ES_LOWERCASE    0x00000010
-#define ES_PASSWORD     0x00000020
-#define ES_AUTOVSCROLL  0x00000040
-#define ES_AUTOHSCROLL  0x00000080
-#define ES_NOHIDESEL    0x00000100
-#define ES_COMBO        0x00000200   /* Undocumented. Parent is a combobox */
-#define ES_OEMCONVERT   0x00000400
-#define ES_READONLY     0x00000800
-#define ES_WANTRETURN   0x00001000
-#define ES_NUMBER       0x00002000
-#endif /* NOWINSTYLES */
-
-/* OEM Resource Ordinal Numbers */
-#ifdef OEMRESOURCE
-#define OBM_TRTYPE          32732
-#define OBM_LFARROWI        32734
-#define OBM_RGARROWI        32735
-#define OBM_DNARROWI        32736
-#define OBM_UPARROWI        32737
-#define OBM_COMBO           32738
-#define OBM_MNARROW         32739
-#define OBM_LFARROWD        32740
-#define OBM_RGARROWD        32741
-#define OBM_DNARROWD        32742
-#define OBM_UPARROWD        32743
-#define OBM_RESTORED        32744
-#define OBM_ZOOMD           32745
-#define OBM_REDUCED         32746
-#define OBM_RESTORE         32747
-#define OBM_ZOOM            32748
-#define OBM_REDUCE          32749
-#define OBM_LFARROW         32750
-#define OBM_RGARROW         32751
-#define OBM_DNARROW         32752
-#define OBM_UPARROW         32753
-#define OBM_CLOSE           32754
-#define OBM_OLD_RESTORE     32755
-#define OBM_OLD_ZOOM        32756
-#define OBM_OLD_REDUCE      32757
-#define OBM_BTNCORNERS      32758
-#define OBM_CHECKBOXES      32759
-#define OBM_CHECK           32760
-#define OBM_BTSIZE          32761
-#define OBM_OLD_LFARROW     32762
-#define OBM_OLD_RGARROW     32763
-#define OBM_OLD_DNARROW     32764
-#define OBM_OLD_UPARROW     32765
-#define OBM_SIZE            32766
-#define OBM_OLD_CLOSE       32767
-
-#define OCR_NORMAL          32512
-#define OCR_IBEAM           32513
-#define OCR_WAIT            32514
-#define OCR_CROSS           32515
-#define OCR_UP              32516
-#define OCR_SIZE            32640
-#define OCR_ICON            32641
-#define OCR_SIZENWSE        32642
-#define OCR_SIZENESW        32643
-#define OCR_SIZEWE          32644
-#define OCR_SIZENS          32645
-#define OCR_SIZEALL         32646
-#define OCR_ICOCUR          32647
-#define OCR_NO              32648
-#define OCR_HAND            32649
-#define OCR_APPSTARTING     32650
-#define OCR_HELP            32651
-
-/* only defined in wine (FIXME) */
-#define OCR_DRAGOBJECT      32653
-
-#define OIC_SAMPLE          32512
-#define OIC_HAND            32513
-#define OIC_QUES            32514
-#define OIC_BANG            32515
-#define OIC_NOTE            32516
-#define OIC_WINLOGO         32517
-#define OIC_WARNING         OIC_BANG
-#define OIC_ERROR           OIC_HAND
-#define OIC_INFORMATION     OIC_NOTE
-#endif /* OEMRESOURCE */
-
 #ifndef NOCOLOR
 
 #define COLOR_SCROLLBAR		    0
@@ -1004,51 +853,6 @@ WINUSERAPI BOOL     WINAPI SetSysColors(INT,const INT*,const COLORREF*);
 
 #endif /* NOCOLOR */
 
-/* Edit control messages */
-#define EM_GETSEL                0x00b0
-#define EM_SETSEL                0x00b1
-#define EM_GETRECT               0x00b2
-#define EM_SETRECT               0x00b3
-#define EM_SETRECTNP             0x00b4
-#define EM_SCROLL                0x00b5
-#define EM_LINESCROLL            0x00b6
-#define EM_SCROLLCARET           0x00b7
-#define EM_GETMODIFY             0x00b8
-#define EM_SETMODIFY             0x00b9
-#define EM_GETLINECOUNT          0x00ba
-#define EM_LINEINDEX             0x00bb
-#define EM_SETHANDLE             0x00bc
-#define EM_GETHANDLE             0x00bd
-#define EM_GETTHUMB              0x00be
-/* FIXME : missing from specs 0x00bf and 0x00c0 */
-#define EM_LINELENGTH            0x00c1
-#define EM_REPLACESEL            0x00c2
-/* FIXME : missing from specs 0x00c3 */
-#define EM_GETLINE               0x00c4
-#define EM_LIMITTEXT             0x00c5
-#define EM_CANUNDO               0x00c6
-#define EM_UNDO                  0x00c7
-#define EM_FMTLINES              0x00c8
-#define EM_LINEFROMCHAR          0x00c9
-/* FIXME : missing from specs 0x00ca */
-#define EM_SETTABSTOPS           0x00cb
-#define EM_SETPASSWORDCHAR       0x00cc
-#define EM_EMPTYUNDOBUFFER       0x00cd
-#define EM_GETFIRSTVISIBLELINE   0x00ce
-#define EM_SETREADONLY           0x00cf
-#define EM_SETWORDBREAKPROC      0x00d0
-#define EM_GETWORDBREAKPROC      0x00d1
-#define EM_GETPASSWORDCHAR       0x00d2
-#define EM_SETMARGINS            0x00d3
-#define EM_GETMARGINS            0x00d4
-#define EM_GETLIMITTEXT          0x00d5
-#define EM_POSFROMCHAR           0x00d6
-#define EM_CHARFROMPOS           0x00d7
-#define EM_SETIMESTATUS          0x00d8
-#define EM_GETIMESTATUS          0x00d9
-/* a name change since win95 */
-#define EM_SETLIMITTEXT          EM_LIMITTEXT
-
 /* IMESTATUS type */
 #define EMSIS_COMPOSITIONSTRING 1
 
@@ -1179,247 +983,6 @@ WINUSERAPI BOOL     WINAPI SetSysColors(INT,const INT*,const COLORREF*);
 
 #define PMB_ACTIVE      0x00000001
 
-/* Messages */
-#define WM_NULL                 0x0000
-#define WM_CREATE               0x0001
-#define WM_DESTROY              0x0002
-#define WM_MOVE                 0x0003
-#define WM_SIZEWAIT             0x0004
-#define WM_SIZE                 0x0005
-#define WM_ACTIVATE             0x0006
-#define WM_SETFOCUS             0x0007
-#define WM_KILLFOCUS            0x0008
-#define WM_SETVISIBLE           0x0009
-#define WM_ENABLE               0x000a
-#define WM_SETREDRAW            0x000b
-#define WM_SETTEXT              0x000c
-#define WM_GETTEXT              0x000d
-#define WM_GETTEXTLENGTH        0x000e
-#define WM_PAINT                0x000f
-#define WM_CLOSE                0x0010
-#define WM_QUERYENDSESSION      0x0011
-#define WM_QUIT                 0x0012
-#define WM_QUERYOPEN            0x0013
-#define WM_ERASEBKGND           0x0014
-#define WM_SYSCOLORCHANGE       0x0015
-#define WM_ENDSESSION           0x0016
-#define WM_SYSTEMERROR          0x0017
-#define WM_SHOWWINDOW           0x0018
-#define WM_CTLCOLOR             0x0019
-#define WM_WININICHANGE         0x001a
-#define WM_SETTINGCHANGE        WM_WININICHANGE
-#define WM_DEVMODECHANGE        0x001b
-#define WM_ACTIVATEAPP          0x001c
-#define WM_FONTCHANGE           0x001d
-#define WM_TIMECHANGE           0x001e
-#define WM_CANCELMODE           0x001f
-#define WM_SETCURSOR            0x0020
-#define WM_MOUSEACTIVATE        0x0021
-#define WM_CHILDACTIVATE        0x0022
-#define WM_QUEUESYNC            0x0023
-#define WM_GETMINMAXINFO        0x0024
-
-#define WM_PAINTICON            0x0026
-#define WM_ICONERASEBKGND       0x0027
-#define WM_NEXTDLGCTL           0x0028
-#define WM_ALTTABACTIVE         0x0029
-#define WM_SPOOLERSTATUS        0x002a
-#define WM_DRAWITEM             0x002b
-#define WM_MEASUREITEM          0x002c
-#define WM_DELETEITEM           0x002d
-#define WM_VKEYTOITEM           0x002e
-#define WM_CHARTOITEM           0x002f
-#define WM_SETFONT              0x0030
-#define WM_GETFONT              0x0031
-#define WM_SETHOTKEY            0x0032
-#define WM_GETHOTKEY            0x0033
-#define WM_FILESYSCHANGE        0x0034
-#define WM_ISACTIVEICON         0x0035
-#define WM_QUERYPARKICON        0x0036
-#define WM_QUERYDRAGICON        0x0037
-#define WM_QUERYSAVESTATE       0x0038
-#define WM_COMPAREITEM          0x0039
-#define WM_TESTING              0x003a
-
-#define WM_GETOBJECT            0x003d
-
-#define WM_ACTIVATESHELLWINDOW	0x003e
-
-#define WM_COMPACTING		0x0041
-
-#define WM_COMMNOTIFY		0x0044
-#define WM_WINDOWPOSCHANGING 	0x0046
-#define WM_WINDOWPOSCHANGED 	0x0047
-#define WM_POWER		0x0048
-
-  /* Win32 4.0 messages */
-#define WM_COPYDATA		0x004a
-#define WM_CANCELJOURNAL	0x004b
-#define WM_KEYF1		0x004d
-#define WM_NOTIFY		0x004e
-#define WM_INPUTLANGCHANGEREQUEST       0x0050
-#define WM_INPUTLANGCHANGE              0x0051
-#define WM_TCARD                0x0052
-#define WM_HELP			0x0053
-#define WM_USERCHANGED		0x0054
-#define WM_NOTIFYFORMAT		0x0055
-
-#define WM_CONTEXTMENU		0x007b
-#define WM_STYLECHANGING 	0x007c
-#define WM_STYLECHANGED		0x007d
-#define WM_DISPLAYCHANGE        0x007e
-#define WM_GETICON		0x007f
-#define WM_SETICON		0x0080
-
-  /* Non-client system messages */
-#define WM_NCCREATE         0x0081
-#define WM_NCDESTROY        0x0082
-#define WM_NCCALCSIZE       0x0083
-#define WM_NCHITTEST        0x0084
-#define WM_NCPAINT          0x0085
-#define WM_NCACTIVATE       0x0086
-
-#define WM_GETDLGCODE	    0x0087
-#define WM_SYNCPAINT	    0x0088
-#define WM_SYNCTASK	    0x0089
-
-  /* Non-client mouse messages */
-#define WM_NCMOUSEMOVE      0x00a0
-#define WM_NCLBUTTONDOWN    0x00a1
-#define WM_NCLBUTTONUP      0x00a2
-#define WM_NCLBUTTONDBLCLK  0x00a3
-#define WM_NCRBUTTONDOWN    0x00a4
-#define WM_NCRBUTTONUP      0x00a5
-#define WM_NCRBUTTONDBLCLK  0x00a6
-#define WM_NCMBUTTONDOWN    0x00a7
-#define WM_NCMBUTTONUP      0x00a8
-#define WM_NCMBUTTONDBLCLK  0x00a9
-
-#define WM_NCXBUTTONDOWN    0x00ab
-#define WM_NCXBUTTONUP      0x00ac
-#define WM_NCXBUTTONDBLCLK  0x00ad
-
-  /* Raw input */
-#define WM_INPUT_DEVICE_CHANGE 0x00fe
-#define WM_INPUT            0x00ff
-
-  /* Keyboard messages */
-#define WM_KEYDOWN          0x0100
-#define WM_KEYUP            0x0101
-#define WM_CHAR             0x0102
-#define WM_DEADCHAR         0x0103
-#define WM_SYSKEYDOWN       0x0104
-#define WM_SYSKEYUP         0x0105
-#define WM_SYSCHAR          0x0106
-#define WM_SYSDEADCHAR      0x0107
-#define WM_UNICHAR          0x0109
-#define WM_KEYFIRST         WM_KEYDOWN
-#define WM_KEYLAST          0x0109
-
-/* Win32 4.0 messages for IME */
-#define WM_IME_STARTCOMPOSITION     0x010d
-#define WM_IME_ENDCOMPOSITION       0x010e
-#define WM_IME_COMPOSITION          0x010f
-#define WM_IME_KEYLAST              0x010f
-
-#define WM_INITDIALOG       0x0110
-#define WM_COMMAND          0x0111
-#define WM_SYSCOMMAND       0x0112
-#define WM_TIMER	    0x0113
-
-  /* scroll messages */
-#define WM_HSCROLL          0x0114
-#define WM_VSCROLL          0x0115
-
-/* Menu messages */
-#define WM_INITMENU         0x0116
-#define WM_INITMENUPOPUP    0x0117
-
-#define WM_MENUSELECT       0x011F
-#define WM_MENUCHAR         0x0120
-#define WM_ENTERIDLE        0x0121
-
-#define WM_MENURBUTTONUP    0x0122
-#define WM_MENUDRAG         0x0123
-#define WM_MENUGETOBJECT    0x0124
-#define WM_UNINITMENUPOPUP  0x0125
-#define WM_MENUCOMMAND      0x0126
-
-#define WM_CHANGEUISTATE    0x0127
-#define WM_UPDATEUISTATE    0x0128
-#define WM_QUERYUISTATE     0x0129
-
-/* UI flags for WM_*UISTATE */
-/* for low-order word of wparam */
-#define UIS_SET                         1
-#define UIS_CLEAR                       2
-#define UIS_INITIALIZE                  3
-/* for hi-order word of wparam */
-#define UISF_HIDEFOCUS                  0x1
-#define UISF_HIDEACCEL                  0x2
-#define UISF_ACTIVE                     0x4
-
-#define WM_LBTRACKPOINT     0x0131
-
-  /* Win32 CTLCOLOR messages */
-#define WM_CTLCOLORMSGBOX    0x0132
-#define WM_CTLCOLOREDIT      0x0133
-#define WM_CTLCOLORLISTBOX   0x0134
-#define WM_CTLCOLORBTN       0x0135
-#define WM_CTLCOLORDLG       0x0136
-#define WM_CTLCOLORSCROLLBAR 0x0137
-#define WM_CTLCOLORSTATIC    0x0138
-
-#define MN_GETHMENU          0x01E1
-
-  /* Mouse messages */
-#define WM_MOUSEMOVE	    0x0200
-#define WM_LBUTTONDOWN	    0x0201
-#define WM_LBUTTONUP	    0x0202
-#define WM_LBUTTONDBLCLK    0x0203
-#define WM_RBUTTONDOWN	    0x0204
-#define WM_RBUTTONUP	    0x0205
-#define WM_RBUTTONDBLCLK    0x0206
-#define WM_MBUTTONDOWN	    0x0207
-#define WM_MBUTTONUP	    0x0208
-#define WM_MBUTTONDBLCLK    0x0209
-#define WM_MOUSEWHEEL       0x020A
-#define WM_XBUTTONDOWN      0x020B
-#define WM_XBUTTONUP        0x020C
-#define WM_XBUTTONDBLCLK    0x020D
-#define WM_MOUSEHWHEEL      0x020E
-
-#define XBUTTON1            0x0001
-#define XBUTTON2            0x0002
-
-#define WM_MOUSEFIRST       0x0200
-#define WM_MOUSELAST        0x020E
-
-#define WHEEL_DELTA      120
-#define WHEEL_PAGESCROLL  (UINT_MAX)
-#define GET_WHEEL_DELTA_WPARAM(wParam)  ((short)HIWORD(wParam))
-
-#define WM_PARENTNOTIFY     0x0210
-#define WM_ENTERMENULOOP    0x0211
-#define WM_EXITMENULOOP     0x0212
-#define WM_NEXTMENU	    0x0213
-
-  /* Win32 4.0 messages */
-#define WM_SIZING	    0x0214
-#define WM_CAPTURECHANGED   0x0215
-#define WM_MOVING	    0x0216
-#define WM_POWERBROADCAST   0x0218
-#define WM_DEVICECHANGE     0x0219
-
-/* wParam for WM_SIZING message */
-#define WMSZ_LEFT           1
-#define WMSZ_RIGHT          2
-#define WMSZ_TOP            3
-#define WMSZ_TOPLEFT        4
-#define WMSZ_TOPRIGHT       5
-#define WMSZ_BOTTOM         6
-#define WMSZ_BOTTOMLEFT     7
-#define WMSZ_BOTTOMRIGHT    8
 
 /* wParam for WM_POWERBROADCAST */
 #define PBT_APMQUERYSUSPEND       0x0000
@@ -1438,108 +1001,6 @@ WINUSERAPI BOOL     WINAPI SetSysColors(INT,const INT*,const COLORREF*);
 
 #define PBTF_APMRESUMEFROMFAILURE       0x00000001
 
-  /* MDI messages */
-#define WM_MDICREATE	    0x0220
-#define WM_MDIDESTROY	    0x0221
-#define WM_MDIACTIVATE	    0x0222
-#define WM_MDIRESTORE	    0x0223
-#define WM_MDINEXT	    0x0224
-#define WM_MDIMAXIMIZE	    0x0225
-#define WM_MDITILE	    0x0226
-#define WM_MDICASCADE	    0x0227
-#define WM_MDIICONARRANGE   0x0228
-#define WM_MDIGETACTIVE     0x0229
-#define WM_MDIREFRESHMENU   0x0234
-
-  /* D&D messages */
-#define WM_DROPOBJECT	    0x022A
-#define WM_QUERYDROPOBJECT  0x022B
-#define WM_BEGINDRAG	    0x022C
-#define WM_DRAGLOOP	    0x022D
-#define WM_DRAGSELECT	    0x022E
-#define WM_DRAGMOVE	    0x022F
-#define WM_MDISETMENU	    0x0230
-
-#define WM_ENTERSIZEMOVE    0x0231
-#define WM_EXITSIZEMOVE     0x0232
-#define WM_DROPFILES	    0x0233
-
-
-/* Win32 4.0 messages for IME */
-#define WM_IME_SETCONTEXT           0x0281
-#define WM_IME_NOTIFY               0x0282
-#define WM_IME_CONTROL              0x0283
-#define WM_IME_COMPOSITIONFULL      0x0284
-#define WM_IME_SELECT               0x0285
-#define WM_IME_CHAR                 0x0286
-/* Win32 5.0 messages for IME */
-#define WM_IME_REQUEST              0x0288
-
-/* Win32 4.0 messages for IME */
-#define WM_IME_KEYDOWN              0x0290
-#define WM_IME_KEYUP                0x0291
-
-#define WM_NCMOUSEHOVER     0x02A0
-#define WM_MOUSEHOVER       0x02A1
-#define WM_MOUSELEAVE       0x02A3
-#define WM_NCMOUSELEAVE     0x02A2
-
-#define WM_WTSSESSION_CHANGE        0x02B1
-
-#define WM_TABLET_FIRST             0x02c0
-#define WM_TABLET_LAST              0x02df
-
-/* Clipboard command messages */
-#define WM_CUT               0x0300
-#define WM_COPY              0x0301
-#define WM_PASTE             0x0302
-#define WM_CLEAR             0x0303
-#define WM_UNDO              0x0304
-
-/* Clipboard owner messages */
-#define WM_RENDERFORMAT      0x0305
-#define WM_RENDERALLFORMATS  0x0306
-#define WM_DESTROYCLIPBOARD  0x0307
-
-/* Clipboard viewer messages */
-#define WM_DRAWCLIPBOARD     0x0308
-#define WM_PAINTCLIPBOARD    0x0309
-#define WM_VSCROLLCLIPBOARD  0x030A
-#define WM_SIZECLIPBOARD     0x030B
-#define WM_ASKCBFORMATNAME   0x030C
-#define WM_CHANGECBCHAIN     0x030D
-#define WM_HSCROLLCLIPBOARD  0x030E
-
-#define WM_QUERYNEWPALETTE   0x030F
-#define WM_PALETTEISCHANGING 0x0310
-#define WM_PALETTECHANGED    0x0311
-#define WM_HOTKEY	     0x0312
-
-#define WM_PRINT             0x0317
-#define WM_PRINTCLIENT       0x0318
-#define WM_APPCOMMAND        0x0319
-#define WM_THEMECHANGED      0x031A
-#define WM_CLIPBOARDUPDATE   0x031D
-
-#define WM_DWMCOMPOSITIONCHANGED 0x031E
-#define WM_DWMNCRENDERINGCHANGED 0x031F
-#define WM_DWMCOLORIZATIONCOLORCHANGED 0x0320
-#define WM_DWMWINDOWMAXIMIZEDCHANGE 0x0321
-
-#define WM_GETTITLEBARINFOEX 0x033F
-
-#define WM_HANDHELDFIRST     0x0358
-#define WM_HANDHELDLAST      0x035F
-
-#define WM_AFXFIRST          0x0360
-#define WM_AFXLAST           0x037F
-
-#define WM_PENWINFIRST      0x0380
-#define WM_PENWINLAST       0x038F
-
-#define WM_APP               0x8000
-
-#define UNICODE_NOCHAR       0xFFFF
 
 /* MsgWaitForMultipleObjectsEx flags */
 #define MWMO_WAITALL         0x0001
@@ -1559,23 +1020,6 @@ WINUSERAPI BOOL     WINAPI SetSysColors(INT,const INT*,const COLORREF*);
 #define DLGC_STATIC          0x0100
 #define DLGC_BUTTON          0x2000
 
-/* Standard dialog button IDs */
-#define IDOK                1
-#define IDCANCEL            2
-#define IDABORT             3
-#define IDRETRY             4
-#define IDIGNORE            5
-#define IDYES               6
-#define IDNO                7
-#define IDCLOSE             8
-#define IDHELP              9
-#define IDTRYAGAIN         10
-#define IDCONTINUE         11
-
-#ifndef IDTIMEOUT
-#define IDTIMEOUT       32000
-#endif
-
 /* Used for EnumDisplaySettingsEx */
 #define ENUM_CURRENT_SETTINGS  ((DWORD) -1)
 #define ENUM_REGISTRY_SETTINGS ((DWORD) -2)
@@ -1764,22 +1208,6 @@ typedef struct tagWINDOWPOS
 } WINDOWPOS, *PWINDOWPOS, *LPWINDOWPOS;
 
 
-  /* WM_MOUSEACTIVATE return values */
-#define MA_ACTIVATE             1
-#define MA_ACTIVATEANDEAT       2
-#define MA_NOACTIVATE           3
-#define MA_NOACTIVATEANDEAT     4
-
-  /* WM_ACTIVATE wParam values */
-#define WA_INACTIVE             0
-#define WA_ACTIVE               1
-#define WA_CLICKACTIVE          2
-
-/* WM_GETICON/WM_SETICON params values */
-#define ICON_SMALL              0
-#define ICON_BIG                1
-#define ICON_SMALL2             2
-
   /* WM_NCCALCSIZE parameter structure */
 typedef struct
 {
@@ -1788,101 +1216,6 @@ typedef struct
 } NCCALCSIZE_PARAMS, *LPNCCALCSIZE_PARAMS;
 
 
-  /* WM_NCCALCSIZE return flags */
-#define WVR_ALIGNTOP        0x0010
-#define WVR_ALIGNLEFT       0x0020
-#define WVR_ALIGNBOTTOM     0x0040
-#define WVR_ALIGNRIGHT      0x0080
-#define WVR_HREDRAW         0x0100
-#define WVR_VREDRAW         0x0200
-#define WVR_REDRAW          (WVR_HREDRAW | WVR_VREDRAW)
-#define WVR_VALIDRECTS      0x0400
-
-  /* WM_NCHITTEST return codes */
-#define HTERROR             (-2)
-#define HTTRANSPARENT       (-1)
-#define HTNOWHERE           0
-#define HTCLIENT            1
-#define HTCAPTION           2
-#define HTSYSMENU           3
-#define HTSIZE              4
-#define HTMENU              5
-#define HTHSCROLL           6
-#define HTVSCROLL           7
-#define HTMINBUTTON         8
-#define HTMAXBUTTON         9
-#define HTLEFT              10
-#define HTRIGHT             11
-#define HTTOP               12
-#define HTTOPLEFT           13
-#define HTTOPRIGHT          14
-#define HTBOTTOM            15
-#define HTBOTTOMLEFT        16
-#define HTBOTTOMRIGHT       17
-#define HTBORDER            18
-#define HTGROWBOX           HTSIZE
-#define HTREDUCE            HTMINBUTTON
-#define HTZOOM              HTMAXBUTTON
-#define HTOBJECT            19
-#define HTCLOSE             20
-#define HTHELP              21
-#define HTSIZEFIRST         HTLEFT
-#define HTSIZELAST          HTBOTTOMRIGHT
-
-/* SendMessageTimeout flags */
-#define SMTO_NORMAL              0x0000
-#define SMTO_BLOCK               0x0001
-#define SMTO_ABORTIFHUNG         0x0002
-#define SMTO_NOTIMEOUTIFNOTHUNG  0x0008
-
-  /* WM_SYSCOMMAND parameters */
-#ifdef SC_SIZE /* at least HP-UX: already defined in /usr/include/sys/signal.h */
-#undef SC_SIZE
-#endif
-#define SC_SIZE         0xf000
-#define SC_MOVE         0xf010
-#define SC_MINIMIZE     0xf020
-#define SC_MAXIMIZE     0xf030
-#define SC_NEXTWINDOW   0xf040
-#define SC_PREVWINDOW   0xf050
-#define SC_CLOSE        0xf060
-#define SC_VSCROLL      0xf070
-#define SC_HSCROLL      0xf080
-#define SC_MOUSEMENU    0xf090
-#define SC_KEYMENU      0xf100
-#define SC_ARRANGE      0xf110
-#define SC_RESTORE      0xf120
-#define SC_TASKLIST     0xf130
-#define SC_SCREENSAVE   0xf140
-#define SC_HOTKEY       0xf150
-  /* Win32 4.0 */
-#define SC_DEFAULT      0xf160
-#define SC_MONITORPOWER 0xf170
-#define SC_CONTEXTHELP  0xf180
-#define SC_SEPARATOR    0xf00f
-
-/* obsolete names(SC_ICON and SC_ZOOM) */
-#define SC_ICON   SC_MINIMIZE
-#define SC_ZOOM   SC_MAXIMIZE
-
-#ifndef NOWINSTYLES
-#define CS_VREDRAW          0x00000001
-#define CS_HREDRAW          0x00000002
-#define CS_KEYCVTWINDOW     0x00000004
-#define CS_DBLCLKS          0x00000008
-#define CS_OWNDC            0x00000020
-#define CS_CLASSDC          0x00000040
-#define CS_PARENTDC         0x00000080
-#define CS_NOKEYCVT         0x00000100
-#define CS_NOCLOSE          0x00000200
-#define CS_SAVEBITS         0x00000800
-#define CS_BYTEALIGNCLIENT  0x00001000
-#define CS_BYTEALIGNWINDOW  0x00002000
-#define CS_GLOBALCLASS      0x00004000
-#define CS_IME              0x00010000
-#define CS_DROPSHADOW       0x00020000
-#endif /* NOWINSTYLES */
-
 #define PRF_CHECKVISIBLE    __MSABI_LONG(0x00000001)
 #define PRF_NONCLIENT       __MSABI_LONG(0x00000002)
 #define PRF_CLIENT          __MSABI_LONG(0x00000004)
@@ -2068,37 +1401,6 @@ DECL_WINELIB_TYPE_AW(HELPWININFO)
 DECL_WINELIB_TYPE_AW(PHELPWININFO)
 DECL_WINELIB_TYPE_AW(LPHELPWININFO)
 
-#define HELP_CONTEXT        0x0001
-#define HELP_QUIT           0x0002
-#define HELP_INDEX          0x0003
-#define HELP_CONTENTS       0x0003
-#define HELP_HELPONHELP     0x0004
-#define HELP_SETINDEX       0x0005
-#define HELP_SETCONTENTS    0x0005
-#define HELP_CONTEXTPOPUP   0x0008
-#define HELP_FORCEFILE      0x0009
-#define HELP_KEY            0x0101
-#define HELP_COMMAND        0x0102
-#define HELP_PARTIALKEY     0x0105
-#define HELP_MULTIKEY       0x0201
-#define HELP_SETWINPOS      0x0203
-#define HELP_CONTEXTMENU    0x000a
-#define HELP_FINDER	    0x000b
-#define HELP_WM_HELP	    0x000c
-#define HELP_SETPOPUP_POS   0x000d
-
-#define HELP_TCARD	    0x8000
-#define HELP_TCARD_DATA	    0x0010
-#define HELP_TCARD_OTHER_CALLER 0x0011
-
-
-#define IDH_NO_HELP             28440
-#define IDH_MISSING_CONTEXT     28441
-#define IDH_GENERIC_HELP_BUTTON 28442
-#define IDH_OK                  28443
-#define IDH_CANCEL              28444
-#define IDH_HELP                28445
-
 
      /* ChangeDisplaySettings return codes */
 
@@ -2414,20 +1716,6 @@ typedef PVOID *LPMENUTEMPLATE;
 #define SB_CTL              2
 #define SB_BOTH             3
 
-/* Scrollbar styles */
-#ifndef NOWINSTYLES
-#define SBS_HORZ                    __MSABI_LONG(0x0000)
-#define SBS_VERT                    __MSABI_LONG(0x0001)
-#define SBS_TOPALIGN                __MSABI_LONG(0x0002)
-#define SBS_LEFTALIGN               __MSABI_LONG(0x0002)
-#define SBS_BOTTOMALIGN             __MSABI_LONG(0x0004)
-#define SBS_RIGHTALIGN              __MSABI_LONG(0x0004)
-#define SBS_SIZEBOXTOPLEFTALIGN     __MSABI_LONG(0x0002)
-#define SBS_SIZEBOXBOTTOMRIGHTALIGN __MSABI_LONG(0x0004)
-#define SBS_SIZEBOX                 __MSABI_LONG(0x0008)
-#define SBS_SIZEGRIP                __MSABI_LONG(0x0010)
-#endif /* NOWINSTYLES */
-
 /* EnableScrollBar() flags */
 #define ESB_ENABLE_BOTH     0x0000
 #define ESB_DISABLE_BOTH    0x0003
@@ -2441,72 +1729,6 @@ typedef PVOID *LPMENUTEMPLATE;
 #define ESB_DISABLE_LTUP    ESB_DISABLE_LEFT
 #define ESB_DISABLE_RTDN    ESB_DISABLE_RIGHT
 
-/* Win32 button control messages */
-#define BM_GETCHECK          0x00f0
-#define BM_SETCHECK          0x00f1
-#define BM_GETSTATE          0x00f2
-#define BM_SETSTATE          0x00f3
-#define BM_SETSTYLE          0x00f4
-#define BM_CLICK             0x00f5
-#define BM_GETIMAGE          0x00f6
-#define BM_SETIMAGE          0x00f7
-/* Winelib button control messages */
-
-/* Button notification codes */
-#define BN_CLICKED             0
-#define BN_PAINT               1
-#define BN_HILITE              2
-#define BN_PUSHED              BN_HILITE
-#define BN_UNHILITE            3
-#define BN_UNPUSHED            BN_UNHILITE
-#define BN_DISABLE             4
-#define BN_DOUBLECLICKED       5
-#define BN_DBLCLK              BN_DOUBLECLICKED
-#define BN_SETFOCUS            6
-#define BN_KILLFOCUS           7
-
-/* Button states */
-#define BST_UNCHECKED        0x0000
-#define BST_CHECKED          0x0001
-#define BST_INDETERMINATE    0x0002
-#define BST_PUSHED           0x0004
-#define BST_FOCUS            0x0008
-
-/* Static Control Styles */
-#define SS_LEFT             __MSABI_LONG(0x00000000)
-#define SS_CENTER           __MSABI_LONG(0x00000001)
-#define SS_RIGHT            __MSABI_LONG(0x00000002)
-#define SS_ICON             __MSABI_LONG(0x00000003)
-#define SS_BLACKRECT        __MSABI_LONG(0x00000004)
-#define SS_GRAYRECT         __MSABI_LONG(0x00000005)
-#define SS_WHITERECT        __MSABI_LONG(0x00000006)
-#define SS_BLACKFRAME       __MSABI_LONG(0x00000007)
-#define SS_GRAYFRAME        __MSABI_LONG(0x00000008)
-#define SS_WHITEFRAME       __MSABI_LONG(0x00000009)
-#define SS_USERITEM         __MSABI_LONG(0x0000000A)
-#define SS_SIMPLE           __MSABI_LONG(0x0000000B)
-#define SS_LEFTNOWORDWRAP   __MSABI_LONG(0x0000000C)
-#define SS_OWNERDRAW        __MSABI_LONG(0x0000000D)
-#define SS_BITMAP           __MSABI_LONG(0x0000000E)
-#define SS_ENHMETAFILE      __MSABI_LONG(0x0000000F)
-#define SS_ETCHEDHORZ       __MSABI_LONG(0x00000010)
-#define SS_ETCHEDVERT       __MSABI_LONG(0x00000011)
-#define SS_ETCHEDFRAME      __MSABI_LONG(0x00000012)
-#define SS_TYPEMASK         __MSABI_LONG(0x0000001F)
-
-#define SS_REALSIZECONTROL  __MSABI_LONG(0x00000040)
-#define SS_NOPREFIX         __MSABI_LONG(0x00000080)
-#define SS_NOTIFY           __MSABI_LONG(0x00000100)
-#define SS_CENTERIMAGE      __MSABI_LONG(0x00000200)
-#define SS_RIGHTJUST        __MSABI_LONG(0x00000400)
-#define SS_REALSIZEIMAGE    __MSABI_LONG(0x00000800)
-#define SS_SUNKEN           __MSABI_LONG(0x00001000)
-#define SS_EDITCONTROL      __MSABI_LONG(0x00002000)
-#define SS_ENDELLIPSIS      __MSABI_LONG(0x00004000)
-#define SS_PATHELLIPSIS     __MSABI_LONG(0x00008000)
-#define SS_WORDELLIPSIS     __MSABI_LONG(0x0000C000)
-#define SS_ELLIPSISMASK     __MSABI_LONG(0x0000C000)
-
 /* Static Control Messages */
 #define STM_SETICON       0x0170
 #define STM_GETICON       0x0171
@@ -2565,27 +1787,6 @@ typedef struct tagSCROLLBARINFO
 #define SIF_TRACKPOS        0x0010
 #define SIF_ALL             (SIF_RANGE | SIF_PAGE | SIF_POS | SIF_TRACKPOS)
 
-/* Listbox styles */
-#ifndef NOWINSTYLES
-#define LBS_NOTIFY               0x0001
-#define LBS_SORT                 0x0002
-#define LBS_NOREDRAW             0x0004
-#define LBS_MULTIPLESEL          0x0008
-#define LBS_OWNERDRAWFIXED       0x0010
-#define LBS_OWNERDRAWVARIABLE    0x0020
-#define LBS_HASSTRINGS           0x0040
-#define LBS_USETABSTOPS          0x0080
-#define LBS_NOINTEGRALHEIGHT     0x0100
-#define LBS_MULTICOLUMN          0x0200
-#define LBS_WANTKEYBOARDINPUT    0x0400
-#define LBS_EXTENDEDSEL          0x0800
-#define LBS_DISABLENOSCROLL      0x1000
-#define LBS_NODATA               0x2000
-#define LBS_NOSEL                0x4000
-#define LBS_COMBOBOX             0x8000
-#define LBS_STANDARD  (LBS_NOTIFY | LBS_SORT | WS_VSCROLL | WS_BORDER)
-#endif /* NOWINSTYLES */
-
 /* Listbox messages */
 #define LB_ADDSTRING           0x0180
 #define LB_INSERTSTRING        0x0181
@@ -2647,24 +1848,6 @@ typedef struct tagSCROLLBARINFO
 
 #define LB_CTLCODE          __MSABI_LONG(0)
 
-/* Combo box styles */
-#ifndef NOWINSTYLES
-#define CBS_SIMPLE            __MSABI_LONG(0x0001)
-#define CBS_DROPDOWN          __MSABI_LONG(0x0002)
-#define CBS_DROPDOWNLIST      __MSABI_LONG(0x0003)
-#define CBS_OWNERDRAWFIXED    __MSABI_LONG(0x0010)
-#define CBS_OWNERDRAWVARIABLE __MSABI_LONG(0x0020)
-#define CBS_AUTOHSCROLL       __MSABI_LONG(0x0040)
-#define CBS_OEMCONVERT        __MSABI_LONG(0x0080)
-#define CBS_SORT              __MSABI_LONG(0x0100)
-#define CBS_HASSTRINGS        __MSABI_LONG(0x0200)
-#define CBS_NOINTEGRALHEIGHT  __MSABI_LONG(0x0400)
-#define CBS_DISABLENOSCROLL   __MSABI_LONG(0x0800)
-
-#define CBS_UPPERCASE         __MSABI_LONG(0x2000)
-#define CBS_LOWERCASE         __MSABI_LONG(0x4000)
-#endif /* NOWINSTYLES */
-
 /* Combo box messages */
 #define CB_GETEDITSEL            0x0140
 #define CB_LIMITTEXT             0x0141
@@ -3314,68 +2497,6 @@ typedef struct tagMINIMIZEDMETRICS {
     int iArrange;
 } MINIMIZEDMETRICS, *PMINIMIZEDMETRICS, *LPMINIMIZEDMETRICS;
 
-#ifndef NOWINSTYLES
-
-/* Window Styles */
-#define WS_OVERLAPPED    __MSABI_LONG(0x00000000)
-#define WS_POPUP         __MSABI_LONG(0x80000000)
-#define WS_CHILD         __MSABI_LONG(0x40000000)
-#define WS_MINIMIZE      __MSABI_LONG(0x20000000)
-#define WS_VISIBLE       __MSABI_LONG(0x10000000)
-#define WS_DISABLED      __MSABI_LONG(0x08000000)
-#define WS_CLIPSIBLINGS  __MSABI_LONG(0x04000000)
-#define WS_CLIPCHILDREN  __MSABI_LONG(0x02000000)
-#define WS_MAXIMIZE      __MSABI_LONG(0x01000000)
-#define WS_CAPTION       __MSABI_LONG(0x00C00000)
-#define WS_BORDER        __MSABI_LONG(0x00800000)
-#define WS_DLGFRAME      __MSABI_LONG(0x00400000)
-#define WS_VSCROLL       __MSABI_LONG(0x00200000)
-#define WS_HSCROLL       __MSABI_LONG(0x00100000)
-#define WS_SYSMENU       __MSABI_LONG(0x00080000)
-#define WS_THICKFRAME    __MSABI_LONG(0x00040000)
-#define WS_GROUP         __MSABI_LONG(0x00020000)
-#define WS_TABSTOP       __MSABI_LONG(0x00010000)
-#define WS_MINIMIZEBOX   __MSABI_LONG(0x00020000)
-#define WS_MAXIMIZEBOX   __MSABI_LONG(0x00010000)
-#define WS_TILED         WS_OVERLAPPED
-#define WS_ICONIC        WS_MINIMIZE
-#define WS_SIZEBOX       WS_THICKFRAME
-#define WS_OVERLAPPEDWINDOW (WS_OVERLAPPED | WS_CAPTION | WS_SYSMENU | WS_THICKFRAME| WS_MINIMIZEBOX | WS_MAXIMIZEBOX)
-#define WS_POPUPWINDOW (WS_POPUP | WS_BORDER | WS_SYSMENU)
-#define WS_CHILDWINDOW (WS_CHILD)
-#define WS_TILEDWINDOW (WS_OVERLAPPEDWINDOW)
-
-/* Window extended styles */
-#define WS_EX_DLGMODALFRAME    __MSABI_LONG(0x00000001)
-#define WS_EX_DRAGDETECT       __MSABI_LONG(0x00000002)
-#define WS_EX_NOPARENTNOTIFY   __MSABI_LONG(0x00000004)
-#define WS_EX_TOPMOST          __MSABI_LONG(0x00000008)
-#define WS_EX_ACCEPTFILES      __MSABI_LONG(0x00000010)
-#define WS_EX_TRANSPARENT      __MSABI_LONG(0x00000020)
-#define WS_EX_MDICHILD         __MSABI_LONG(0x00000040)
-#define WS_EX_TOOLWINDOW       __MSABI_LONG(0x00000080)
-#define WS_EX_WINDOWEDGE       __MSABI_LONG(0x00000100)
-#define WS_EX_CLIENTEDGE       __MSABI_LONG(0x00000200)
-#define WS_EX_CONTEXTHELP      __MSABI_LONG(0x00000400)
-#define WS_EX_RIGHT            __MSABI_LONG(0x00001000)
-#define WS_EX_LEFT             __MSABI_LONG(0x00000000)
-#define WS_EX_RTLREADING       __MSABI_LONG(0x00002000)
-#define WS_EX_LTRREADING       __MSABI_LONG(0x00000000)
-#define WS_EX_LEFTSCROLLBAR    __MSABI_LONG(0x00004000)
-#define WS_EX_RIGHTSCROLLBAR   __MSABI_LONG(0x00000000)
-#define WS_EX_CONTROLPARENT    __MSABI_LONG(0x00010000)
-#define WS_EX_STATICEDGE       __MSABI_LONG(0x00020000)
-#define WS_EX_APPWINDOW        __MSABI_LONG(0x00040000)
-#define WS_EX_LAYERED          __MSABI_LONG(0x00080000)
-#define WS_EX_NOINHERITLAYOUT  __MSABI_LONG(0x00100000)
-#define WS_EX_LAYOUTRTL        __MSABI_LONG(0x00400000)
-#define WS_EX_COMPOSITED       __MSABI_LONG(0x02000000)
-#define WS_EX_NOACTIVATE       __MSABI_LONG(0x08000000)
-
-#define WS_EX_OVERLAPPEDWINDOW (WS_EX_WINDOWEDGE|WS_EX_CLIENTEDGE)
-#define WS_EX_PALETTEWINDOW    (WS_EX_WINDOWEDGE|WS_EX_TOOLWINDOW|WS_EX_TOPMOST)
-
-#endif /* NOWINSTYLES */
 
 /* Window scrolling */
 #define SW_SCROLLCHILDREN      0x0001
@@ -3427,12 +2548,6 @@ typedef struct {
     DWORD dwTimeout;
 } FLASHWINFO, *PFLASHWINFO;
 
-/* WM_SHOWWINDOW lParam codes */
-#define SW_PARENTCLOSING    1
-#define SW_OTHERZOOM        2
-#define SW_PARENTOPENING    3
-#define SW_OTHERUNZOOM      4
-
 /* SetLayeredWindowAttributes() flags */
 #define LWA_COLORKEY        0x00000001
 #define LWA_ALPHA           0x00000002
@@ -3443,36 +2558,6 @@ typedef struct {
 #define ULW_OPAQUE          0x00000004
 #define ULW_EX_NORESIZE     0x00000008
 
-  /* ShowWindow() codes */
-#define SW_HIDE             0
-#define SW_SHOWNORMAL       1
-#define SW_NORMAL           1
-#define SW_SHOWMINIMIZED    2
-#define SW_SHOWMAXIMIZED    3
-#define SW_MAXIMIZE         3
-#define SW_SHOWNOACTIVATE   4
-#define SW_SHOW             5
-#define SW_MINIMIZE         6
-#define SW_SHOWMINNOACTIVE  7
-#define SW_SHOWNA           8
-#define SW_RESTORE          9
-#define SW_SHOWDEFAULT	    10
-#define SW_FORCEMINIMIZE    11
-#define SW_MAX              11
-#define SW_NORMALNA	    0xCC	/* undoc. flag in MinMaximize */
-
-  /* WM_SIZE message wParam values */
-#define SIZE_RESTORED        0
-#define SIZE_MINIMIZED       1
-#define SIZE_MAXIMIZED       2
-#define SIZE_MAXSHOW         3
-#define SIZE_MAXHIDE         4
-#define SIZENORMAL           SIZE_RESTORED
-#define SIZEICONIC           SIZE_MINIMIZED
-#define SIZEFULLSCREEN       SIZE_MAXIMIZED
-#define SIZEZOOMSHOW         SIZE_MAXSHOW
-#define SIZEZOOMHIDE         SIZE_MAXHIDE
-
 /* SetWindowPos() and WINDOWPOS flags */
 #define SWP_NOSIZE          0x0001
 #define SWP_NOMOVE          0x0002
@@ -3523,62 +2608,7 @@ typedef struct {
 #define DCX_NORECOMPUTE      0x00100000
 #define DCX_VALIDATE         0x00200000
 
-#define MF_INSERT          0x0000
-#define MF_CHANGE          0x0080
-#define MF_APPEND          0x0100
-#define MF_DELETE          0x0200
-#define MF_REMOVE          0x1000
-#define MF_END             0x0080
-
-#define MF_ENABLED         0x0000
-#define MF_GRAYED          0x0001
-#define MF_DISABLED        0x0002
-#define MF_STRING          0x0000
-#define MF_BITMAP          0x0004
-#define MF_UNCHECKED       0x0000
-#define MF_CHECKED         0x0008
-#define MF_POPUP           0x0010
-#define MF_MENUBARBREAK    0x0020
-#define MF_MENUBREAK       0x0040
-#define MF_UNHILITE        0x0000
-#define MF_HILITE          0x0080
-#define MF_OWNERDRAW       0x0100
-#define MF_USECHECKBITMAPS 0x0200
-#define MF_BYCOMMAND       0x0000
-#define MF_BYPOSITION      0x0400
-#define MF_SEPARATOR       0x0800
-#define MF_DEFAULT         0x1000
-#define MF_SYSMENU         0x2000
-#define MF_HELP            0x4000
-#define MF_RIGHTJUSTIFY    0x4000
-#define MF_MOUSESELECT     0x8000
-
-/* Flags for extended menu item types.  */
-#define MFT_STRING         MF_STRING
-#define MFT_BITMAP         MF_BITMAP
-#define MFT_MENUBARBREAK   MF_MENUBARBREAK
-#define MFT_MENUBREAK      MF_MENUBREAK
-#define MFT_OWNERDRAW      MF_OWNERDRAW
-#define MFT_RADIOCHECK     __MSABI_LONG(0x00000200)
-#define MFT_SEPARATOR      MF_SEPARATOR
-#define MFT_RIGHTORDER     __MSABI_LONG(0x00002000)
-#define MFT_RIGHTJUSTIFY   MF_RIGHTJUSTIFY
-
-/* Flags for extended menu item states.  */
-#define MFS_GRAYED          __MSABI_LONG(0x00000003)
-#define MFS_DISABLED        MFS_GRAYED
-#define MFS_CHECKED         MF_CHECKED
-#define MFS_HILITE          MF_HILITE
-#define MFS_ENABLED         MF_ENABLED
-#define MFS_UNCHECKED       MF_UNCHECKED
-#define MFS_UNHILITE        MF_UNHILITE
-#define MFS_DEFAULT         MF_DEFAULT
-#define MFS_MASK            __MSABI_LONG(0x0000108B)
-#define MFS_HOTTRACKDRAWN   __MSABI_LONG(0x10000000)
-#define MFS_CACHEDBMP       __MSABI_LONG(0x20000000)
-#define MFS_BOTTOMGAPDROP   __MSABI_LONG(0x40000000)
-#define MFS_TOPGAPDROP      __MSABI_LONG(0x80000000)
-#define MFS_GAPDROP         __MSABI_LONG(0xC0000000)
+
 
 /* for GetMenuDefaultItem */
 #define GMDI_USEDISABLED    __MSABI_LONG(0x0001)
@@ -3786,181 +2816,6 @@ typedef struct tagCOMPAREITEMSTRUCT
 #define KF_REPEAT           0x4000
 #define KF_UP               0x8000
 
-/* Virtual key codes */
-#define VK_LBUTTON          0x01
-#define VK_RBUTTON          0x02
-#define VK_CANCEL           0x03
-#define VK_MBUTTON          0x04
-#define VK_XBUTTON1         0x05
-#define VK_XBUTTON2         0x06
-/*                          0x07  Undefined */
-#define VK_BACK             0x08
-#define VK_TAB              0x09
-/*                          0x0A-0x0B  Undefined */
-#define VK_CLEAR            0x0C
-#define VK_RETURN           0x0D
-/*                          0x0E-0x0F  Undefined */
-#define VK_SHIFT            0x10
-#define VK_CONTROL          0x11
-#define VK_MENU             0x12
-#define VK_PAUSE            0x13
-#define VK_CAPITAL          0x14
-
-#define VK_KANA             0x15
-#define VK_HANGEUL          0x15
-#define VK_HANGUL           0x15
-#define VK_JUNJA            0x17
-#define VK_FINAL            0x18
-#define VK_HANJA            0x19
-#define VK_KANJI            0x19
-
-/*                          0x1A       Undefined */
-#define VK_ESCAPE           0x1B
-
-#define VK_CONVERT          0x1C
-#define VK_NONCONVERT       0x1D
-#define VK_ACCEPT           0x1E
-#define VK_MODECHANGE       0x1F
-
-#define VK_SPACE            0x20
-#define VK_PRIOR            0x21
-#define VK_NEXT             0x22
-#define VK_END              0x23
-#define VK_HOME             0x24
-#define VK_LEFT             0x25
-#define VK_UP               0x26
-#define VK_RIGHT            0x27
-#define VK_DOWN             0x28
-#define VK_SELECT           0x29
-#define VK_PRINT            0x2A /* OEM specific in Windows 3.1 SDK */
-#define VK_EXECUTE          0x2B
-#define VK_SNAPSHOT         0x2C
-#define VK_INSERT           0x2D
-#define VK_DELETE           0x2E
-#define VK_HELP             0x2F
-/* VK_0 - VK-9              0x30-0x39  Use ASCII instead */
-/*                          0x3A-0x40  Undefined */
-/* VK_A - VK_Z              0x41-0x5A  Use ASCII instead */
-#define VK_LWIN             0x5B
-#define VK_RWIN             0x5C
-#define VK_APPS             0x5D
-/*                          0x5E Unassigned */
-#define VK_SLEEP            0x5F
-#define VK_NUMPAD0          0x60
-#define VK_NUMPAD1          0x61
-#define VK_NUMPAD2          0x62
-#define VK_NUMPAD3          0x63
-#define VK_NUMPAD4          0x64
-#define VK_NUMPAD5          0x65
-#define VK_NUMPAD6          0x66
-#define VK_NUMPAD7          0x67
-#define VK_NUMPAD8          0x68
-#define VK_NUMPAD9          0x69
-#define VK_MULTIPLY         0x6A
-#define VK_ADD              0x6B
-#define VK_SEPARATOR        0x6C
-#define VK_SUBTRACT         0x6D
-#define VK_DECIMAL          0x6E
-#define VK_DIVIDE           0x6F
-#define VK_F1               0x70
-#define VK_F2               0x71
-#define VK_F3               0x72
-#define VK_F4               0x73
-#define VK_F5               0x74
-#define VK_F6               0x75
-#define VK_F7               0x76
-#define VK_F8               0x77
-#define VK_F9               0x78
-#define VK_F10              0x79
-#define VK_F11              0x7A
-#define VK_F12              0x7B
-#define VK_F13              0x7C
-#define VK_F14              0x7D
-#define VK_F15              0x7E
-#define VK_F16              0x7F
-#define VK_F17              0x80
-#define VK_F18              0x81
-#define VK_F19              0x82
-#define VK_F20              0x83
-#define VK_F21              0x84
-#define VK_F22              0x85
-#define VK_F23              0x86
-#define VK_F24              0x87
-/*                          0x88-0x8F  Unassigned */
-#define VK_NUMLOCK          0x90
-#define VK_SCROLL           0x91
-#define VK_OEM_NEC_EQUAL    0x92
-#define VK_OEM_FJ_JISHO     0x92
-#define VK_OEM_FJ_MASSHOU   0x93
-#define VK_OEM_FJ_TOUROKU   0x94
-#define VK_OEM_FJ_LOYA      0x95
-#define VK_OEM_FJ_ROYA      0x96
-/*                          0x97-0x9F  Unassigned */
-/*
- * differencing between right and left shift/control/alt key.
- * Used only by GetAsyncKeyState() and GetKeyState().
- */
-#define VK_LSHIFT           0xA0
-#define VK_RSHIFT           0xA1
-#define VK_LCONTROL         0xA2
-#define VK_RCONTROL         0xA3
-#define VK_LMENU            0xA4
-#define VK_RMENU            0xA5
-
-#define VK_BROWSER_BACK        0xA6
-#define VK_BROWSER_FORWARD     0xA7
-#define VK_BROWSER_REFRESH     0xA8
-#define VK_BROWSER_STOP        0xA9
-#define VK_BROWSER_SEARCH      0xAA
-#define VK_BROWSER_FAVORITES   0xAB
-#define VK_BROWSER_HOME        0xAC
-#define VK_VOLUME_MUTE         0xAD
-#define VK_VOLUME_DOWN         0xAE
-#define VK_VOLUME_UP           0xAF
-#define VK_MEDIA_NEXT_TRACK    0xB0
-#define VK_MEDIA_PREV_TRACK    0xB1
-#define VK_MEDIA_STOP          0xB2
-#define VK_MEDIA_PLAY_PAUSE    0xB3
-#define VK_LAUNCH_MAIL         0xB4
-#define VK_LAUNCH_MEDIA_SELECT 0xB5
-#define VK_LAUNCH_APP1         0xB6
-#define VK_LAUNCH_APP2         0xB7
-
-/*                          0xB8-0xB9  Unassigned */
-#define VK_OEM_1            0xBA
-#define VK_OEM_PLUS         0xBB
-#define VK_OEM_COMMA        0xBC
-#define VK_OEM_MINUS        0xBD
-#define VK_OEM_PERIOD       0xBE
-#define VK_OEM_2            0xBF
-#define VK_OEM_3            0xC0
-/*                          0xC1-0xDA  Unassigned */
-#define VK_OEM_4            0xDB
-#define VK_OEM_5            0xDC
-#define VK_OEM_6            0xDD
-#define VK_OEM_7            0xDE
-#define VK_OEM_8            0xDF
-/*                          0xE0       OEM specific */
-#define VK_OEM_AX           0xE1  /* "AX" key on Japanese AX keyboard */
-#define VK_OEM_102          0xE2  /* "<>" or "\|" on RT 102-key keyboard */
-#define VK_ICO_HELP         0xE3  /* Help key on ICO */
-#define VK_ICO_00           0xE4  /* 00 key on ICO */
-#define VK_PROCESSKEY       0xE5
-
-/*                          0xE6       OEM specific */
-#define VK_PACKET           0xE7
-/*                          0xE8       Unassigned */
-/*                          0xE9-0xF5  OEM specific */
-
-#define VK_ATTN             0xF6
-#define VK_CRSEL            0xF7
-#define VK_EXSEL            0xF8
-#define VK_EREOF            0xF9
-#define VK_PLAY             0xFA
-#define VK_ZOOM             0xFB
-#define VK_NONAME           0xFC
-#define VK_PA1              0xFD
-#define VK_OEM_CLEAR        0xFE
 
 /* MapVirtualKey translation types */
 #define MAPVK_VK_TO_VSC     0
@@ -3969,23 +2824,7 @@ typedef struct tagCOMPAREITEMSTRUCT
 #define MAPVK_VSC_TO_VK_EX  3
 #define MAPVK_VK_TO_VSC_EX  4
 
-  /* Key status flags for mouse events */
-#define MK_LBUTTON	    0x0001
-#define MK_RBUTTON	    0x0002
-#define MK_SHIFT	    0x0004
-#define MK_CONTROL	    0x0008
-#define MK_MBUTTON	    0x0010
-#define MK_XBUTTON1         0x0020
-#define MK_XBUTTON2         0x0040
-
 
-#define TME_HOVER       0x00000001
-#define TME_LEAVE       0x00000002
-#define TME_NONCLIENT   0x00000010
-#define TME_QUERY       0x40000000
-#define TME_CANCEL      0x80000000
-
-#define HOVER_DEFAULT   0xFFFFFFFF
 
 typedef struct tagTRACKMOUSEEVENT {
     DWORD cbSize;
@@ -4118,40 +2957,6 @@ typedef struct tagTRACKMOUSEEVENT {
 #define GET_FLAGS_LPARAM(lParam)      (LOWORD(lParam))
 #define GET_KEYSTATE_LPARAM(lParam)   GET_FLAGS_LPARAM(lParam)
 
-/* Predefined Clipboard Formats */
-#define CF_TEXT              1
-#define CF_BITMAP            2
-#define CF_METAFILEPICT      3
-#define CF_SYLK              4
-#define CF_DIF               5
-#define CF_TIFF              6
-#define CF_OEMTEXT           7
-#define CF_DIB               8
-#define CF_PALETTE           9
-#define CF_PENDATA          10
-#define CF_RIFF             11
-#define CF_WAVE             12
-#define CF_UNICODETEXT      13
-#define CF_ENHMETAFILE      14
-#define CF_HDROP            15
-#define CF_LOCALE           16
-#define CF_DIBV5            17
-#define CF_MAX              18
-
-#define CF_OWNERDISPLAY     0x0080
-#define CF_DSPTEXT          0x0081
-#define CF_DSPBITMAP        0x0082
-#define CF_DSPMETAFILEPICT  0x0083
-#define CF_DSPENHMETAFILE   0x008E
-
-/* "Private" formats don't get GlobalFree()'d */
-#define CF_PRIVATEFIRST     0x0200
-#define CF_PRIVATELAST      0x02FF
-
-/* "GDIOBJ" formats do get DeleteObject()'d */
-#define CF_GDIOBJFIRST      0x0300
-#define CF_GDIOBJLAST       0x03FF
-
 
 /* types of LoadImage */
 #define IMAGE_BITMAP	0
@@ -4182,12 +2987,6 @@ typedef struct tagTRACKMOUSEEVENT {
 #define DI_DEFAULTSIZE          0x0008
 #define DI_NOMIRROR             0x0010
 
-/* WM_NOTIFYFORMAT commands and return values */
-#define NFR_ANSI	    1
-#define NFR_UNICODE	    2
-#define NF_QUERY	    3
-#define NF_REQUERY	    4
-
 /* RegisterDeviceNotification stuff */
 typedef  PVOID           HDEVNOTIFY;
 typedef  HDEVNOTIFY     *PHDEVNOTIFY;
diff --git a/include/winuser.rh b/include/winuser.rh
index e760917..f8f99fb 100644
--- a/include/winuser.rh
+++ b/include/winuser.rh
@@ -16,385 +16,1271 @@
  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
  */
 
-/* Window Styles */
-#define WS_OVERLAPPED    0x00000000L
-#define WS_POPUP         0x80000000L
-#define WS_CHILD         0x40000000L
-#define WS_MINIMIZE      0x20000000L
-#define WS_VISIBLE       0x10000000L
-#define WS_DISABLED      0x08000000L
-#define WS_CLIPSIBLINGS  0x04000000L
-#define WS_CLIPCHILDREN  0x02000000L
-#define WS_MAXIMIZE      0x01000000L
-#define WS_CAPTION       0x00C00000L
-#define WS_BORDER        0x00800000L
-#define WS_DLGFRAME      0x00400000L
-#define WS_VSCROLL       0x00200000L
-#define WS_HSCROLL       0x00100000L
-#define WS_SYSMENU       0x00080000L
-#define WS_THICKFRAME    0x00040000L
-#define WS_GROUP         0x00020000L
-#define WS_TABSTOP       0x00010000L
-#define WS_MINIMIZEBOX   0x00020000L
-#define WS_MAXIMIZEBOX   0x00010000L
-#define WS_TILED         WS_OVERLAPPED
-#define WS_ICONIC        WS_MINIMIZE
-#define WS_SIZEBOX       WS_THICKFRAME
-#define WS_OVERLAPPEDWINDOW (WS_OVERLAPPED | WS_CAPTION | WS_SYSMENU | WS_THICKFRAME| WS_MINIMIZEBOX | WS_MAXIMIZEBOX)
-#define WS_POPUPWINDOW (WS_POPUP | WS_BORDER | WS_SYSMENU)
-#define WS_CHILDWINDOW (WS_CHILD)
-#define WS_TILEDWINDOW (WS_OVERLAPPEDWINDOW)
-
-/* Window extended styles */
-#define WS_EX_DLGMODALFRAME    0x00000001L
-#define WS_EX_DRAGDETECT       0x00000002L
-#define WS_EX_NOPARENTNOTIFY   0x00000004L
-#define WS_EX_TOPMOST          0x00000008L
-#define WS_EX_ACCEPTFILES      0x00000010L
-#define WS_EX_TRANSPARENT      0x00000020L
-#define WS_EX_MDICHILD         0x00000040L
-#define WS_EX_TOOLWINDOW       0x00000080L
-#define WS_EX_WINDOWEDGE       0x00000100L
-#define WS_EX_CLIENTEDGE       0x00000200L
-#define WS_EX_CONTEXTHELP      0x00000400L
-#define WS_EX_RIGHT            0x00001000L
-#define WS_EX_LEFT             0x00000000L
-#define WS_EX_RTLREADING       0x00002000L
-#define WS_EX_LTRREADING       0x00000000L
-#define WS_EX_LEFTSCROLLBAR    0x00004000L
-#define WS_EX_RIGHTSCROLLBAR   0x00000000L
-#define WS_EX_CONTROLPARENT    0x00010000L
-#define WS_EX_STATICEDGE       0x00020000L
-#define WS_EX_APPWINDOW        0x00040000L
-#define WS_EX_LAYERED          0x00080000L
-#define WS_EX_NOINHERITLAYOUT  0x00100000L
-#define WS_EX_LAYOUTRTL        0x00400000L
-#define WS_EX_COMPOSITED       0x02000000L
-#define WS_EX_NOACTIVATE       0x08000000L
+/* Macro to deal with LP64 <=> LLP64 differences in numeric constants with 'l' modifier */
+#ifndef __MSABI_LONG
+# if defined(_MSC_VER) || defined(__MINGW32__) || defined(__CYGWIN__)
+#  define __MSABI_LONG(x)         x ## l
+# else
+#  define __MSABI_LONG(x)         x
+# endif
+#endif
+
+#ifdef RC_INVOKED
+# define MAKEINTRESOURCE(i)       i
+#endif
+
+
+#define RT_MANIFEST                                        MAKEINTRESOURCE(24)
+#define CREATEPROCESS_MANIFEST_RESOURCE_ID                 MAKEINTRESOURCE(1)
+#define ISOLATIONAWARE_MANIFEST_RESOURCE_ID                MAKEINTRESOURCE(2)
+#define ISOLATIONAWARE_NOSTATICIMPORT_MANIFEST_RESOURCE_ID MAKEINTRESOURCE(3)
+#define MINIMUM_RESERVED_MANIFEST_RESOURCE_ID              MAKEINTRESOURCE(1)
+#define MAXIMUM_RESERVED_MANIFEST_RESOURCE_ID              MAKEINTRESOURCE(16)
+
+
+/*** ShowWindow() codes ***/
+#define SW_HIDE                0
+#define SW_SHOWNORMAL          1
+#define SW_NORMAL              SW_SHOWNORMAL
+#define SW_SHOWMINIMIZED       2
+#define SW_SHOWMAXIMIZED       3
+#define SW_MAXIMIZE            SW_SHOWMAXIMIZED
+#define SW_SHOWNOACTIVATE      4
+#define SW_SHOW                5
+#define SW_MINIMIZE            6
+#define SW_SHOWMINNOACTIVE     7
+#define SW_SHOWNA              8
+#define SW_RESTORE             9
+#define SW_SHOWDEFAULT         10
+#define SW_FORCEMINIMIZE       11
+#define SW_MAX                 11
+#define SW_NORMALNA            0xCC /* Undocumented. Flag in MinMaximize */
+
+/* WM_SHOWWINDOW lParam codes */
+#define SW_PARENTCLOSING       1
+#define SW_OTHERZOOM           2
+#define SW_PARENTOPENING       3
+#define SW_OTHERUNZOOM         4
+
+
+/*** Virtual key codes ***/
+#define VK_LBUTTON             0x01
+#define VK_RBUTTON             0x02
+#define VK_CANCEL              0x03
+#define VK_MBUTTON             0x04
+#define VK_XBUTTON1            0x05
+#define VK_XBUTTON2            0x06
+/*                             0x07  Undefined */
+#define VK_BACK                0x08
+#define VK_TAB                 0x09
+/*                             0x0A-0x0B  Undefined */
+#define VK_CLEAR               0x0C
+#define VK_RETURN              0x0D
+/*                             0x0E-0x0F  Undefined */
+#define VK_SHIFT               0x10
+#define VK_CONTROL             0x11
+#define VK_MENU                0x12
+#define VK_PAUSE               0x13
+#define VK_CAPITAL             0x14
+
+#define VK_KANA                0x15
+#define VK_HANGEUL             VK_KANA
+#define VK_HANGUL              VK_KANA
+#define VK_JUNJA               0x17
+#define VK_FINAL               0x18
+#define VK_HANJA               0x19
+#define VK_KANJI               VK_HANJA
+
+/*                             0x1A       Undefined */
+#define VK_ESCAPE              0x1B
+
+#define VK_CONVERT             0x1C
+#define VK_NONCONVERT          0x1D
+#define VK_ACCEPT              0x1E
+#define VK_MODECHANGE          0x1F
+
+#define VK_SPACE               0x20
+#define VK_PRIOR               0x21
+#define VK_NEXT                0x22
+#define VK_END                 0x23
+#define VK_HOME                0x24
+#define VK_LEFT                0x25
+#define VK_UP                  0x26
+#define VK_RIGHT               0x27
+#define VK_DOWN                0x28
+#define VK_SELECT              0x29
+#define VK_PRINT               0x2A /* OEM specific in Windows 3.1 SDK */
+#define VK_EXECUTE             0x2B
+#define VK_SNAPSHOT            0x2C
+#define VK_INSERT              0x2D
+#define VK_DELETE              0x2E
+#define VK_HELP                0x2F
+/* VK_0 - VK-9                 0x30-0x39  Use ASCII instead */
+/*                             0x3A-0x40  Undefined */
+/* VK_A - VK_Z                 0x41-0x5A  Use ASCII instead */
+#define VK_LWIN                0x5B
+#define VK_RWIN                0x5C
+#define VK_APPS                0x5D
+/*                             0x5E Unassigned */
+#define VK_SLEEP               0x5F
+#define VK_NUMPAD0             0x60
+#define VK_NUMPAD1             0x61
+#define VK_NUMPAD2             0x62
+#define VK_NUMPAD3             0x63
+#define VK_NUMPAD4             0x64
+#define VK_NUMPAD5             0x65
+#define VK_NUMPAD6             0x66
+#define VK_NUMPAD7             0x67
+#define VK_NUMPAD8             0x68
+#define VK_NUMPAD9             0x69
+#define VK_MULTIPLY            0x6A
+#define VK_ADD                 0x6B
+#define VK_SEPARATOR           0x6C
+#define VK_SUBTRACT            0x6D
+#define VK_DECIMAL             0x6E
+#define VK_DIVIDE              0x6F
+#define VK_F1                  0x70
+#define VK_F2                  0x71
+#define VK_F3                  0x72
+#define VK_F4                  0x73
+#define VK_F5                  0x74
+#define VK_F6                  0x75
+#define VK_F7                  0x76
+#define VK_F8                  0x77
+#define VK_F9                  0x78
+#define VK_F10                 0x79
+#define VK_F11                 0x7A
+#define VK_F12                 0x7B
+#define VK_F13                 0x7C
+#define VK_F14                 0x7D
+#define VK_F15                 0x7E
+#define VK_F16                 0x7F
+#define VK_F17                 0x80
+#define VK_F18                 0x81
+#define VK_F19                 0x82
+#define VK_F20                 0x83
+#define VK_F21                 0x84
+#define VK_F22                 0x85
+#define VK_F23                 0x86
+#define VK_F24                 0x87
+/*                             0x88-0x8F  Unassigned */
+#define VK_NUMLOCK             0x90
+#define VK_SCROLL              0x91
+#define VK_OEM_NEC_EQUAL       0x92
+#define VK_OEM_FJ_JISHO        0x92
+#define VK_OEM_FJ_MASSHOU      0x93
+#define VK_OEM_FJ_TOUROKU      0x94
+#define VK_OEM_FJ_LOYA         0x95
+#define VK_OEM_FJ_ROYA         0x96
+/*                             0x97-0x9F  Unassigned */
+/*
+ * differencing between right and left shift/control/alt key.
+ * Used only by GetAsyncKeyState() and GetKeyState().
+ */
+#define VK_LSHIFT              0xA0
+#define VK_RSHIFT              0xA1
+#define VK_LCONTROL            0xA2
+#define VK_RCONTROL            0xA3
+#define VK_LMENU               0xA4
+#define VK_RMENU               0xA5
+
+#define VK_BROWSER_BACK        0xA6
+#define VK_BROWSER_FORWARD     0xA7
+#define VK_BROWSER_REFRESH     0xA8
+#define VK_BROWSER_STOP        0xA9
+#define VK_BROWSER_SEARCH      0xAA
+#define VK_BROWSER_FAVORITES   0xAB
+#define VK_BROWSER_HOME        0xAC
+#define VK_VOLUME_MUTE         0xAD
+#define VK_VOLUME_DOWN         0xAE
+#define VK_VOLUME_UP           0xAF
+#define VK_MEDIA_NEXT_TRACK    0xB0
+#define VK_MEDIA_PREV_TRACK    0xB1
+#define VK_MEDIA_STOP          0xB2
+#define VK_MEDIA_PLAY_PAUSE    0xB3
+#define VK_LAUNCH_MAIL         0xB4
+#define VK_LAUNCH_MEDIA_SELECT 0xB5
+#define VK_LAUNCH_APP1         0xB6
+#define VK_LAUNCH_APP2         0xB7
+
+/*                             0xB8-0xB9  Unassigned */
+#define VK_OEM_1               0xBA
+#define VK_OEM_PLUS            0xBB
+#define VK_OEM_COMMA           0xBC
+#define VK_OEM_MINUS           0xBD
+#define VK_OEM_PERIOD          0xBE
+#define VK_OEM_2               0xBF
+#define VK_OEM_3               0xC0
+/*                             0xC1-0xDA  Unassigned */
+#define VK_OEM_4               0xDB
+#define VK_OEM_5               0xDC
+#define VK_OEM_6               0xDD
+#define VK_OEM_7               0xDE
+#define VK_OEM_8               0xDF
+/*                             0xE0       OEM specific */
+#define VK_OEM_AX              0xE1  /* "AX" key on Japanese AX keyboard */
+#define VK_OEM_102             0xE2  /* "<>" or "\|" on RT 102-key keyboard */
+#define VK_ICO_HELP            0xE3  /* Help key on ICO */
+#define VK_ICO_00              0xE4  /* 00 key on ICO */
+#define VK_PROCESSKEY          0xE5
+/*                             0xE6       OEM specific */
+
+#define VK_PACKET              0xE7
+/*                             0xE8       Unassigned */
+
+/*                             0xE9-0xF5  OEM specific */
+#define VK_ATTN                0xF6
+#define VK_CRSEL               0xF7
+#define VK_EXSEL               0xF8
+#define VK_EREOF               0xF9
+#define VK_PLAY                0xFA
+#define VK_ZOOM                0xFB
+#define VK_NONAME              0xFC
+#define VK_PA1                 0xFD
+#define VK_OEM_CLEAR           0xFE
+/*                             0xFF       Unassigned */
+
+
+/*** Messages ***/
+#ifndef NOWINMESSAGES
+#define WM_NULL                0x0000
+#define WM_CREATE              0x0001
+#define WM_DESTROY             0x0002
+#define WM_MOVE                0x0003
+#define WM_SIZEWAIT            0x0004 /* DDK / Win16 */
+#define WM_SIZE                0x0005
+#define WM_ACTIVATE            0x0006
+
+/* WM_ACTIVATE wParam values */
+#define WA_INACTIVE            0
+#define WA_ACTIVE              1
+#define WA_CLICKACTIVE         2
+
+#define WM_SETFOCUS            0x0007
+#define WM_KILLFOCUS           0x0008
+#define WM_SETVISIBLE          0x0009 /* DDK / Win16 */
+#define WM_ENABLE              0x000a
+#define WM_SETREDRAW           0x000b
+#define WM_SETTEXT             0x000c
+#define WM_GETTEXT             0x000d
+#define WM_GETTEXTLENGTH       0x000e
+#define WM_PAINT               0x000f
+#define WM_CLOSE               0x0010
+#define WM_QUERYENDSESSION     0x0011
+#define WM_QUIT                0x0012
+#define WM_QUERYOPEN           0x0013
+#define WM_ERASEBKGND          0x0014
+#define WM_SYSCOLORCHANGE      0x0015
+#define WM_ENDSESSION          0x0016
+#define WM_SYSTEMERROR         0x0017 /* DDK / Win16 */
+#define WM_SHOWWINDOW          0x0018
+#define WM_CTLCOLOR            0x0019
+#define WM_WININICHANGE        0x001a
+#define WM_SETTINGCHANGE       WM_WININICHANGE
+#define WM_DEVMODECHANGE       0x001b
+#define WM_ACTIVATEAPP         0x001c
+#define WM_FONTCHANGE          0x001d
+#define WM_TIMECHANGE          0x001e
+#define WM_CANCELMODE          0x001f
+#define WM_SETCURSOR           0x0020
+#define WM_MOUSEACTIVATE       0x0021
+#define WM_CHILDACTIVATE       0x0022
+#define WM_QUEUESYNC           0x0023
+#define WM_GETMINMAXINFO       0x0024
+
+#define WM_PAINTICON           0x0026
+#define WM_ICONERASEBKGND      0x0027
+#define WM_NEXTDLGCTL          0x0028
+#define WM_ALTTABACTIVE        0x0029 /* DDK / Win16 */
+#define WM_SPOOLERSTATUS       0x002a
+#define WM_DRAWITEM            0x002b
+#define WM_MEASUREITEM         0x002c
+#define WM_DELETEITEM          0x002d
+#define WM_VKEYTOITEM          0x002e
+#define WM_CHARTOITEM          0x002f
+#define WM_SETFONT             0x0030
+#define WM_GETFONT             0x0031
+#define WM_SETHOTKEY           0x0032
+#define WM_GETHOTKEY           0x0033
+#define WM_FILESYSCHANGE       0x0034 /* DDK / Win16 */
+#define WM_ISACTIVEICON        0x0035 /* DDK / Win16 */
+#define WM_QUERYPARKICON       0x0036 /* Undocumented */
+#define WM_QUERYDRAGICON       0x0037
+#define WM_QUERYSAVESTATE      0x0038 /* Undocumented */
+#define WM_COMPAREITEM         0x0039
+#define WM_TESTING             0x003a /* DDK / Win16 */
+
+#define WM_GETOBJECT           0x003d
+
+#define WM_ACTIVATESHELLWINDOW 0x003e /* FIXME: Wine-only */
+
+#define WM_COMPACTING          0x0041
+
+#define WM_COMMNOTIFY          0x0044
+#define WM_WINDOWPOSCHANGING   0x0046
+#define WM_WINDOWPOSCHANGED    0x0047
+
+#define WM_POWER               0x0048
+
+/* Win32 4.0 messages */
+#define WM_COPYDATA            0x004a
+#define WM_CANCELJOURNAL       0x004b
+#define WM_KEYF1               0x004d /* DDK / Win16 */
+#define WM_NOTIFY              0x004e
+#define WM_INPUTLANGCHANGEREQUEST 0x0050
+#define WM_INPUTLANGCHANGE     0x0051
+#define WM_TCARD               0x0052
+#define WM_HELP                0x0053
+#define WM_USERCHANGED         0x0054
+#define WM_NOTIFYFORMAT        0x0055
+
+/* WM_NOTIFYFORMAT commands and return values */
+#define NFR_ANSI               1
+#define NFR_UNICODE            2
+#define NF_QUERY               3
+#define NF_REQUERY             4
+
+#define WM_CONTEXTMENU         0x007b
+#define WM_STYLECHANGING       0x007c
+#define WM_STYLECHANGED        0x007d
+#define WM_DISPLAYCHANGE       0x007e
+#define WM_GETICON             0x007f
+#define WM_SETICON             0x0080
+
+/* Non-client system messages */
+#define WM_NCCREATE            0x0081
+#define WM_NCDESTROY           0x0082
+#define WM_NCCALCSIZE          0x0083
+#define WM_NCHITTEST           0x0084
+#define WM_NCPAINT             0x0085
+#define WM_NCACTIVATE          0x0086
+
+#define WM_GETDLGCODE          0x0087
+#define WM_SYNCPAINT           0x0088
+#define WM_SYNCTASK            0x0089 /* DDK / Win16 */
+
+/* Non-client mouse messages */
+#define WM_NCMOUSEMOVE         0x00a0
+#define WM_NCLBUTTONDOWN       0x00a1
+#define WM_NCLBUTTONUP         0x00a2
+#define WM_NCLBUTTONDBLCLK     0x00a3
+#define WM_NCRBUTTONDOWN       0x00a4
+#define WM_NCRBUTTONUP         0x00a5
+#define WM_NCRBUTTONDBLCLK     0x00a6
+#define WM_NCMBUTTONDOWN       0x00a7
+#define WM_NCMBUTTONUP         0x00a8
+#define WM_NCMBUTTONDBLCLK     0x00a9
+
+#define WM_NCXBUTTONDOWN       0x00ab
+#define WM_NCXBUTTONUP         0x00ac
+#define WM_NCXBUTTONDBLCLK     0x00ad
+
+/* Raw input */
+#define WM_INPUT_DEVICE_CHANGE 0x00fe
+#define WM_INPUT               0x00ff
+
+/* Keyboard messages */
+#define WM_KEYFIRST            0x0100
+#define WM_KEYDOWN             WM_KEYFIRST
+#define WM_KEYUP               0x0101
+#define WM_CHAR                0x0102
+#define WM_DEADCHAR            0x0103
+#define WM_SYSKEYDOWN          0x0104
+#define WM_SYSKEYUP            0x0105
+#define WM_SYSCHAR             0x0106
+#define WM_SYSDEADCHAR         0x0107
+#define WM_UNICHAR             0x0109
+#define WM_KEYLAST             WM_UNICHAR
+
+#define UNICODE_NOCHAR         0xffff
+
+/* Win32 4.0 messages for IME */
+#define WM_IME_STARTCOMPOSITION 0x010d
+#define WM_IME_ENDCOMPOSITION  0x010e
+#define WM_IME_COMPOSITION     0x010f
+#define WM_IME_KEYLAST         0x010f
+
+#define WM_INITDIALOG          0x0110
+#define WM_COMMAND             0x0111
+#define WM_SYSCOMMAND          0x0112
+#define WM_TIMER               0x0113
+
+/* Scroll messages */
+#define WM_HSCROLL             0x0114
+#define WM_VSCROLL             0x0115
+
+/* Menu messages */
+#define WM_INITMENU            0x0116
+#define WM_INITMENUPOPUP       0x0117
+
+#define WM_MENUSELECT          0x011F
+#define WM_MENUCHAR            0x0120
+#define WM_ENTERIDLE           0x0121
+
+#define WM_MENURBUTTONUP       0x0122
+#define WM_MENUDRAG            0x0123
+#define WM_MENUGETOBJECT       0x0124
+#define WM_UNINITMENUPOPUP     0x0125
+#define WM_MENUCOMMAND         0x0126
+
+#define WM_CHANGEUISTATE       0x0127
+#define WM_UPDATEUISTATE       0x0128
+#define WM_QUERYUISTATE        0x0129
+
+/* UI flags for WM_*UISTATE */
+/* for low-order word of wparam */
+#define UIS_SET                1
+#define UIS_CLEAR              2
+#define UIS_INITIALIZE         3
+/* for hi-order word of wparam */
+#define UISF_HIDEFOCUS         0x1
+#define UISF_HIDEACCEL         0x2
+#define UISF_ACTIVE            0x4
+
+#define WM_LBTRACKPOINT        0x0131 /* DDK / Win16 */
+
+/* Win32 CTLCOLOR messages */
+#define WM_CTLCOLORMSGBOX      0x0132
+#define WM_CTLCOLOREDIT        0x0133
+#define WM_CTLCOLORLISTBOX     0x0134
+#define WM_CTLCOLORBTN         0x0135
+#define WM_CTLCOLORDLG         0x0136
+#define WM_CTLCOLORSCROLLBAR   0x0137
+#define WM_CTLCOLORSTATIC      0x0138
+
+#define MN_GETHMENU            0x01E1
+
+/* Mouse messages */
+#define WM_MOUSEFIRST          0x0200
+#define WM_MOUSEMOVE           WM_MOUSEFIRST
+#define WM_LBUTTONDOWN         0x0201
+#define WM_LBUTTONUP           0x0202
+#define WM_LBUTTONDBLCLK       0x0203
+#define WM_RBUTTONDOWN         0x0204
+#define WM_RBUTTONUP           0x0205
+#define WM_RBUTTONDBLCLK       0x0206
+#define WM_MBUTTONDOWN         0x0207
+#define WM_MBUTTONUP           0x0208
+#define WM_MBUTTONDBLCLK       0x0209
+#define WM_MOUSEWHEEL          0x020A
+#define WM_XBUTTONDOWN         0x020B
+#define WM_XBUTTONUP           0x020C
+#define WM_XBUTTONDBLCLK       0x020D
+#define WM_MOUSEHWHEEL         0x020E
+#define WM_MOUSELAST           WM_MOUSEHWHEEL
+
+/* Macros for the mouse messages */
+#define WHEEL_DELTA            120
+#define GET_WHEEL_DELTA_WPARAM(wParam) ((short)HIWORD(wParam))
+#define WHEEL_PAGESCROLL       (UINT_MAX)
+
+#define XBUTTON1               0x0001
+#define XBUTTON2               0x0002
+
+#define WM_PARENTNOTIFY        0x0210
+#define WM_ENTERMENULOOP       0x0211
+#define WM_EXITMENULOOP        0x0212
+#define WM_NEXTMENU            0x0213
+
+/* Win32 4.0 messages */
+#define WM_SIZING              0x0214
+#define WM_CAPTURECHANGED      0x0215
+#define WM_MOVING              0x0216
+#define WM_POWERBROADCAST      0x0218
+#define WM_DEVICECHANGE        0x0219
+/* MDI messages */
+#define WM_MDICREATE           0x0220
+#define WM_MDIDESTROY          0x0221
+#define WM_MDIACTIVATE         0x0222
+#define WM_MDIRESTORE          0x0223
+#define WM_MDINEXT             0x0224
+#define WM_MDIMAXIMIZE         0x0225
+#define WM_MDITILE             0x0226
+#define WM_MDICASCADE          0x0227
+#define WM_MDIICONARRANGE      0x0228
+#define WM_MDIGETACTIVE        0x0229
+#define WM_MDISETMENU          0x0230
+#define WM_MDIREFRESHMENU      0x0234
+
+/* D&D messages */
+#define WM_DROPOBJECT          0x022A /* DDK / Win16 */
+#define WM_QUERYDROPOBJECT     0x022B /* DDK / Win16 */
+#define WM_BEGINDRAG           0x022C /* DDK / Win16 */
+#define WM_DRAGLOOP            0x022D /* DDK / Win16 */
+#define WM_DRAGSELECT          0x022E /* DDK / Win16 */
+#define WM_DRAGMOVE            0x022F /* DDK / Win16 */
+
+#define WM_ENTERSIZEMOVE       0x0231
+#define WM_EXITSIZEMOVE        0x0232
+#define WM_DROPFILES           0x0233
+
+/* Win32 4.0 messages for IME */
+#define WM_IME_SETCONTEXT      0x0281
+#define WM_IME_NOTIFY          0x0282
+#define WM_IME_CONTROL         0x0283
+#define WM_IME_COMPOSITIONFULL 0x0284
+#define WM_IME_SELECT          0x0285
+#define WM_IME_CHAR            0x0286
+/* Win32 5.0 messages for IME */
+#define WM_IME_REQUEST         0x0288
+
+/* Win32 4.0 messages for IME */
+#define WM_IME_KEYDOWN         0x0290
+#define WM_IME_KEYUP           0x0291
+
+#define WM_NCMOUSEHOVER        0x02A0
+#define WM_MOUSEHOVER          0x02A1
+#define WM_MOUSELEAVE          0x02A3
+#define WM_NCMOUSELEAVE        0x02A2
+
+#define WM_WTSSESSION_CHANGE   0x02B1
+
+#define WM_TABLET_FIRST        0x02c0
+#define WM_TABLET_LAST         0x02df
+
+/* Clipboard command messages */
+#define WM_CUT                 0x0300
+#define WM_COPY                0x0301
+#define WM_PASTE               0x0302
+#define WM_CLEAR               0x0303
+#define WM_UNDO                0x0304
+
+/* Clipboard owner messages */
+#define WM_RENDERFORMAT        0x0305
+#define WM_RENDERALLFORMATS    0x0306
+#define WM_DESTROYCLIPBOARD    0x0307
+
+/* Clipboard viewer messages */
+#define WM_DRAWCLIPBOARD       0x0308
+#define WM_PAINTCLIPBOARD      0x0309
+#define WM_VSCROLLCLIPBOARD    0x030A
+#define WM_SIZECLIPBOARD       0x030B
+#define WM_ASKCBFORMATNAME     0x030C
+#define WM_CHANGECBCHAIN       0x030D
+#define WM_HSCROLLCLIPBOARD    0x030E
+
+#define WM_QUERYNEWPALETTE     0x030F
+#define WM_PALETTEISCHANGING   0x0310
+#define WM_PALETTECHANGED      0x0311
+#define WM_HOTKEY              0x0312
+
+#define WM_PRINT               0x0317
+#define WM_PRINTCLIENT         0x0318
+#define WM_APPCOMMAND          0x0319
+#define WM_THEMECHANGED        0x031A
+#define WM_CLIPBOARDUPDATE     0x031D
+
+#define WM_DWMCOMPOSITIONCHANGED 0x031E
+#define WM_DWMNCRENDERINGCHANGED 0x031F
+#define WM_DWMCOLORIZATIONCOLORCHANGED 0x0320
+#define WM_DWMWINDOWMAXIMIZEDCHANGE 0x0321
+
+#define WM_GETTITLEBARINFOEX   0x033F
+
+#define WM_HANDHELDFIRST       0x0358
+#define WM_HANDHELDLAST        0x035F
+
+#define WM_AFXFIRST            0x0360
+#define WM_AFXLAST             0x037F
+
+#define WM_PENWINFIRST         0x0380
+#define WM_PENWINLAST          0x038F
+
+#define WM_USER                0x0400
+
+#define WM_APP                 0x8000
+
+
+/* wParam for WM_SIZING message */
+#define WMSZ_LEFT              1
+#define WMSZ_RIGHT             2
+#define WMSZ_TOP               3
+#define WMSZ_TOPLEFT           4
+#define WMSZ_TOPRIGHT          5
+#define WMSZ_BOTTOM            6
+#define WMSZ_BOTTOMLEFT        7
+#define WMSZ_BOTTOMRIGHT       8
+
+/* WM_NCHITTEST return codes */
+#define HTERROR                (-2)
+#define HTTRANSPARENT          (-1)
+#define HTNOWHERE              0
+#define HTCLIENT               1
+#define HTCAPTION              2
+#define HTSYSMENU              3
+#define HTSIZE                 4
+#define HTMENU                 5
+#define HTHSCROLL              6
+#define HTVSCROLL              7
+#define HTMINBUTTON            8
+#define HTMAXBUTTON            9
+#define HTLEFT                 10
+#define HTRIGHT                11
+#define HTTOP                  12
+#define HTTOPLEFT              13
+#define HTTOPRIGHT             14
+#define HTBOTTOM               15
+#define HTBOTTOMLEFT           16
+#define HTBOTTOMRIGHT          17
+#define HTBORDER               18
+#define HTGROWBOX              HTSIZE
+#define HTREDUCE               HTMINBUTTON
+#define HTZOOM                 HTMAXBUTTON
+#define HTOBJECT               19
+#define HTCLOSE                20
+#define HTHELP                 21
+#define HTSIZEFIRST            HTLEFT
+#define HTSIZELAST             HTBOTTOMRIGHT
+
+/* SendMessageTimeout flags */
+#define SMTO_NORMAL            0x0000
+#define SMTO_BLOCK             0x0001
+#define SMTO_ABORTIFHUNG       0x0002
+#define SMTO_NOTIMEOUTIFNOTHUNG 0x0008
+
+/* WM_MOUSEACTIVATE return values */
+#define MA_ACTIVATE            1
+#define MA_ACTIVATEANDEAT      2
+#define MA_NOACTIVATE          3
+#define MA_NOACTIVATEANDEAT    4
+
+/* WM_GETICON/WM_SETICON params values */
+#define ICON_SMALL             0
+#define ICON_BIG               1
+#define ICON_SMALL2            2
+
+/* WM_SIZE message wParam values */
+#define SIZE_RESTORED          0
+#define SIZE_MINIMIZED         1
+#define SIZE_MAXIMIZED         2
+#define SIZE_MAXSHOW           3
+#define SIZE_MAXHIDE           4
+#define SIZENORMAL             SIZE_RESTORED
+#define SIZEICONIC             SIZE_MINIMIZED
+#define SIZEFULLSCREEN         SIZE_MAXIMIZED
+#define SIZEZOOMSHOW           SIZE_MAXSHOW
+#define SIZEZOOMHIDE           SIZE_MAXHIDE
+
+/* WM_NCCALCSIZE return flags */
+#define WVR_ALIGNTOP           0x0010
+#define WVR_ALIGNLEFT          0x0020
+#define WVR_ALIGNBOTTOM        0x0040
+#define WVR_ALIGNRIGHT         0x0080
+#define WVR_HREDRAW            0x0100
+#define WVR_VREDRAW            0x0200
+#define WVR_REDRAW             (WVR_HREDRAW | WVR_VREDRAW)
+#define WVR_VALIDRECTS         0x0400
+
+/* Key status flags for mouse events */
+#ifndef NOKEYSTATES
+#define MK_LBUTTON             0x0001
+#define MK_RBUTTON             0x0002
+#define MK_SHIFT               0x0004
+#define MK_CONTROL             0x0008
+#define MK_MBUTTON             0x0010
+#define MK_XBUTTON1            0x0020
+#define MK_XBUTTON2            0x0040
+#endif /* NOKEYSTATES */
+
+#ifndef NOTRACKMOUSEEVENT
+#define TME_HOVER              0x00000001
+#define TME_LEAVE              0x00000002
+#define TME_NONCLIENT          0x00000010
+#define TME_QUERY              0x40000000
+#define TME_CANCEL             0x80000000
+#define HOVER_DEFAULT          0xFFFFFFFF
+#endif /* NOTRACKMOUSEEVENT */
+
+#endif /* NOWINMESSAGES */
+
+
+/*** Window Styles ***/
+#ifndef NOWINSTYLES
+#define WS_OVERLAPPED          __MSABI_LONG(0x00000000)
+#define WS_POPUP               __MSABI_LONG(0x80000000)
+#define WS_CHILD               __MSABI_LONG(0x40000000)
+#define WS_MINIMIZE            __MSABI_LONG(0x20000000)
+#define WS_VISIBLE             __MSABI_LONG(0x10000000)
+#define WS_DISABLED            __MSABI_LONG(0x08000000)
+#define WS_CLIPSIBLINGS        __MSABI_LONG(0x04000000)
+#define WS_CLIPCHILDREN        __MSABI_LONG(0x02000000)
+#define WS_MAXIMIZE            __MSABI_LONG(0x01000000)
+#define WS_BORDER              __MSABI_LONG(0x00800000)
+#define WS_DLGFRAME            __MSABI_LONG(0x00400000)
+#define WS_VSCROLL             __MSABI_LONG(0x00200000)
+#define WS_HSCROLL             __MSABI_LONG(0x00100000)
+#define WS_SYSMENU             __MSABI_LONG(0x00080000)
+#define WS_THICKFRAME          __MSABI_LONG(0x00040000)
+#define WS_GROUP               __MSABI_LONG(0x00020000)
+#define WS_TABSTOP             __MSABI_LONG(0x00010000)
+#define WS_MINIMIZEBOX         __MSABI_LONG(0x00020000)
+#define WS_MAXIMIZEBOX         __MSABI_LONG(0x00010000)
+#define WS_CAPTION             (WS_BORDER | WS_DLGFRAME)
+#define WS_TILED               WS_OVERLAPPED
+#define WS_ICONIC              WS_MINIMIZE
+#define WS_SIZEBOX             WS_THICKFRAME
+#define WS_OVERLAPPEDWINDOW    (WS_OVERLAPPED | WS_CAPTION | WS_SYSMENU | WS_THICKFRAME| WS_MINIMIZEBOX | WS_MAXIMIZEBOX)
+#define WS_POPUPWINDOW         (WS_POPUP | WS_BORDER | WS_SYSMENU)
+#define WS_CHILDWINDOW         WS_CHILD
+#define WS_TILEDWINDOW         WS_OVERLAPPEDWINDOW
+#endif /* NOWINSTYLES */
+
+
+/*** Window extended styles ***/
+#ifndef NOWINSTYLES
+#define WS_EX_DLGMODALFRAME    __MSABI_LONG(0x00000001)
+#define WS_EX_DRAGDETECT       __MSABI_LONG(0x00000002) /* Undocumented */
+#define WS_EX_NOPARENTNOTIFY   __MSABI_LONG(0x00000004)
+#define WS_EX_TOPMOST          __MSABI_LONG(0x00000008)
+#define WS_EX_ACCEPTFILES      __MSABI_LONG(0x00000010)
+#define WS_EX_TRANSPARENT      __MSABI_LONG(0x00000020)
+#define WS_EX_MDICHILD         __MSABI_LONG(0x00000040)
+#define WS_EX_TOOLWINDOW       __MSABI_LONG(0x00000080)
+#define WS_EX_WINDOWEDGE       __MSABI_LONG(0x00000100)
+#define WS_EX_CLIENTEDGE       __MSABI_LONG(0x00000200)
+#define WS_EX_CONTEXTHELP      __MSABI_LONG(0x00000400)
+#define WS_EX_RIGHT            __MSABI_LONG(0x00001000)
+#define WS_EX_LEFT             __MSABI_LONG(0x00000000)
+#define WS_EX_RTLREADING       __MSABI_LONG(0x00002000)
+#define WS_EX_LTRREADING       __MSABI_LONG(0x00000000)
+#define WS_EX_LEFTSCROLLBAR    __MSABI_LONG(0x00004000)
+#define WS_EX_RIGHTSCROLLBAR   __MSABI_LONG(0x00000000)
+#define WS_EX_CONTROLPARENT    __MSABI_LONG(0x00010000)
+#define WS_EX_STATICEDGE       __MSABI_LONG(0x00020000)
+#define WS_EX_APPWINDOW        __MSABI_LONG(0x00040000)
+#define WS_EX_LAYERED          __MSABI_LONG(0x00080000)
+#define WS_EX_NOINHERITLAYOUT  __MSABI_LONG(0x00100000)
+#define WS_EX_LAYOUTRTL        __MSABI_LONG(0x00400000)
+#define WS_EX_COMPOSITED       __MSABI_LONG(0x02000000)
+#define WS_EX_NOACTIVATE       __MSABI_LONG(0x08000000)
 
 #define WS_EX_OVERLAPPEDWINDOW (WS_EX_WINDOWEDGE|WS_EX_CLIENTEDGE)
 #define WS_EX_PALETTEWINDOW    (WS_EX_WINDOWEDGE|WS_EX_TOOLWINDOW|WS_EX_TOPMOST)
+#endif /* NOWINSTYLES */
 
-/* Standard dialog button IDs */
-#define IDOK                1
-#define IDCANCEL            2
-#define IDABORT             3
-#define IDRETRY             4
-#define IDIGNORE            5
-#define IDYES               6
-#define IDNO                7
-#define IDCLOSE             8
-#define IDHELP              9
-#define IDTRYAGAIN         10
-#define IDCONTINUE         11
-
-/* Win32 button control messages */
-#define BM_GETCHECK          0x00f0
-#define BM_SETCHECK          0x00f1
-#define BM_GETSTATE          0x00f2
-#define BM_SETSTATE          0x00f3
-#define BM_SETSTYLE          0x00f4
-#define BM_CLICK             0x00f5
-#define BM_GETIMAGE          0x00f6
-#define BM_SETIMAGE          0x00f7
 
-/* Button states */
-#define BST_UNCHECKED        0x0000
-#define BST_CHECKED          0x0001
-#define BST_INDETERMINATE    0x0002
-#define BST_PUSHED           0x0004
-#define BST_FOCUS            0x0008
-
-/* Button control styles */
-#define BS_PUSHBUTTON          0x00000000L
-#define BS_DEFPUSHBUTTON       0x00000001L
-#define BS_CHECKBOX            0x00000002L
-#define BS_AUTOCHECKBOX        0x00000003L
-#define BS_RADIOBUTTON         0x00000004L
-#define BS_3STATE              0x00000005L
-#define BS_AUTO3STATE          0x00000006L
-#define BS_GROUPBOX            0x00000007L
-#define BS_USERBUTTON          0x00000008L
-#define BS_AUTORADIOBUTTON     0x00000009L
-#define BS_OWNERDRAW           0x0000000BL
-#define BS_LEFTTEXT            0x00000020L
+/*** Class styles ***/
+#ifndef NOWINSTYLES
+#define CS_VREDRAW             0x00000001
+#define CS_HREDRAW             0x00000002
+#define CS_KEYCVTWINDOW        0x00000004 /* DDK / Win16 */
+#define CS_DBLCLKS             0x00000008
+#define CS_OWNDC               0x00000020
+#define CS_CLASSDC             0x00000040
+#define CS_PARENTDC            0x00000080
+#define CS_NOKEYCVT            0x00000100 /* DDK / Win16 */
+#define CS_NOCLOSE             0x00000200
+#define CS_SAVEBITS            0x00000800
+#define CS_BYTEALIGNCLIENT     0x00001000
+#define CS_BYTEALIGNWINDOW     0x00002000
+#define CS_GLOBALCLASS         0x00004000
+#define CS_IME                 0x00010000
+#define CS_DROPSHADOW          0x00020000
+#endif /* NOWINSTYLES */
+
+
+/*** Predefined Clipboard Formats ***/
+#ifndef NOCLIPBOARD
+#define CF_TEXT                1
+#define CF_BITMAP              2
+#define CF_METAFILEPICT        3
+#define CF_SYLK                4
+#define CF_DIF                 5
+#define CF_TIFF                6
+#define CF_OEMTEXT             7
+#define CF_DIB                 8
+#define CF_PALETTE             9
+#define CF_PENDATA             10
+#define CF_RIFF                11
+#define CF_WAVE                12
+#define CF_UNICODETEXT         13
+#define CF_ENHMETAFILE         14
+#define CF_HDROP               15
+#define CF_LOCALE              16
+#define CF_DIBV5               17
+#define CF_MAX                 18
+
+#define CF_OWNERDISPLAY        0x0080
+#define CF_DSPTEXT             0x0081
+#define CF_DSPBITMAP           0x0082
+#define CF_DSPMETAFILEPICT     0x0083
+#define CF_DSPENHMETAFILE      0x008E
+
+/* "Private" formats don't get GlobalFree()'d */
+#define CF_PRIVATEFIRST        0x0200
+#define CF_PRIVATELAST         0x02FF
+
+/* "GDIOBJ" formats do get DeleteObject()'d */
+#define CF_GDIOBJFIRST         0x0300
+#define CF_GDIOBJLAST          0x03FF
+#endif /* NOCLIPBOARD */
+
+
+/*** Menu flags ***/
+#ifndef NOMENUS
+#define MF_INSERT              __MSABI_LONG(0x00000000)
+#define MF_CHANGE              __MSABI_LONG(0x00000080)
+#define MF_APPEND              __MSABI_LONG(0x00000100)
+#define MF_DELETE              __MSABI_LONG(0x00000200)
+#define MF_REMOVE              __MSABI_LONG(0x00001000)
+#define MF_END                 __MSABI_LONG(0x00000080)
+
+#define MF_ENABLED             __MSABI_LONG(0x00000000)
+#define MF_GRAYED              __MSABI_LONG(0x00000001)
+#define MF_DISABLED            __MSABI_LONG(0x00000002)
+#define MF_STRING              __MSABI_LONG(0x00000000)
+#define MF_BITMAP              __MSABI_LONG(0x00000004)
+#define MF_UNCHECKED           __MSABI_LONG(0x00000000)
+#define MF_CHECKED             __MSABI_LONG(0x00000008)
+#define MF_POPUP               __MSABI_LONG(0x00000010)
+#define MF_MENUBARBREAK        __MSABI_LONG(0x00000020)
+#define MF_MENUBREAK           __MSABI_LONG(0x00000040)
+#define MF_UNHILITE            __MSABI_LONG(0x00000000)
+#define MF_HILITE              __MSABI_LONG(0x00000080)
+#define MF_OWNERDRAW           __MSABI_LONG(0x00000100)
+#define MF_USECHECKBITMAPS     __MSABI_LONG(0x00000200)
+#define MF_BYCOMMAND           __MSABI_LONG(0x00000000)
+#define MF_BYPOSITION          __MSABI_LONG(0x00000400)
+#define MF_SEPARATOR           __MSABI_LONG(0x00000800)
+#define MF_DEFAULT             __MSABI_LONG(0x00001000)
+#define MF_SYSMENU             __MSABI_LONG(0x00002000)
+#define MF_HELP                __MSABI_LONG(0x00004000)
+#define MF_RIGHTJUSTIFY        __MSABI_LONG(0x00004000)
+#define MF_MOUSESELECT         __MSABI_LONG(0x00008000)
+
+/* Flags for extended menu item types */
+#define MFT_STRING             MF_STRING
+#define MFT_BITMAP             MF_BITMAP
+#define MFT_MENUBARBREAK       MF_MENUBARBREAK
+#define MFT_MENUBREAK          MF_MENUBREAK
+#define MFT_OWNERDRAW          MF_OWNERDRAW
+#define MFT_RADIOCHECK         __MSABI_LONG(0x00000200)
+#define MFT_SEPARATOR          MF_SEPARATOR
+#define MFT_RIGHTORDER         __MSABI_LONG(0x00002000)
+#define MFT_RIGHTJUSTIFY       MF_RIGHTJUSTIFY
+
+/* Flags for extended menu item states */
+#define MFS_GRAYED             __MSABI_LONG(0x00000003)
+#define MFS_DISABLED           MFS_GRAYED
+#define MFS_CHECKED            MF_CHECKED
+#define MFS_HILITE             MF_HILITE
+#define MFS_ENABLED            MF_ENABLED
+#define MFS_UNCHECKED          MF_UNCHECKED
+#define MFS_UNHILITE           MF_UNHILITE
+#define MFS_DEFAULT            MF_DEFAULT
+
+/* DDK / Win16 defines */
+#define MFS_MASK               __MSABI_LONG(0x0000108B)
+#define MFS_HOTTRACKDRAWN      __MSABI_LONG(0x10000000)
+#define MFS_CACHEDBMP          __MSABI_LONG(0x20000000)
+#define MFS_BOTTOMGAPDROP      __MSABI_LONG(0x40000000)
+#define MFS_TOPGAPDROP         __MSABI_LONG(0x80000000)
+#define MFS_GAPDROP            (MFS_BOTTOMGAPDROP | MFS_TOPGAPDROP)
+#endif /* NOMENUS */
+
+
+/*** WM_SYSCOMMAND parameters ***/
+#ifndef NOSYSCOMMANDS
+/* At least HP-UX defines it in /usr/include/sys/signal.h */
+# ifdef SC_SIZE
+#  undef SC_SIZE
+# endif
+#define SC_SIZE                0xf000
+#define SC_MOVE                0xf010
+#define SC_MINIMIZE            0xf020
+#define SC_MAXIMIZE            0xf030
+#define SC_NEXTWINDOW          0xf040
+#define SC_PREVWINDOW          0xf050
+#define SC_CLOSE               0xf060
+#define SC_VSCROLL             0xf070
+#define SC_HSCROLL             0xf080
+#define SC_MOUSEMENU           0xf090
+#define SC_KEYMENU             0xf100
+#define SC_ARRANGE             0xf110
+#define SC_RESTORE             0xf120
+#define SC_TASKLIST            0xf130
+#define SC_SCREENSAVE          0xf140
+#define SC_HOTKEY              0xf150
+
+/* Win32 4.0 */
+#define SC_DEFAULT             0xf160
+#define SC_MONITORPOWER        0xf170
+#define SC_CONTEXTHELP         0xf180
+#define SC_SEPARATOR           0xf00f
+
+/* Obsolete names */
+#define SC_ICON               SC_MINIMIZE
+#define SC_ZOOM               SC_MAXIMIZE
+#endif /* NOSYSCOMMANDS */
+
+
+/*** OEM Resource Ordinal Numbers ***/
+#ifdef OEMRESOURCE
+#define OBM_TRTYPE             32732 /* FIXME: Wine-only */
+#define OBM_LFARROWI           32734
+#define OBM_RGARROWI           32735
+#define OBM_DNARROWI           32736
+#define OBM_UPARROWI           32737
+#define OBM_COMBO              32738
+#define OBM_MNARROW            32739
+#define OBM_LFARROWD           32740
+#define OBM_RGARROWD           32741
+#define OBM_DNARROWD           32742
+#define OBM_UPARROWD           32743
+#define OBM_RESTORED           32744
+#define OBM_ZOOMD              32745
+#define OBM_REDUCED            32746
+#define OBM_RESTORE            32747
+#define OBM_ZOOM               32748
+#define OBM_REDUCE             32749
+#define OBM_LFARROW            32750
+#define OBM_RGARROW            32751
+#define OBM_DNARROW            32752
+#define OBM_UPARROW            32753
+#define OBM_CLOSE              32754
+#define OBM_OLD_RESTORE        32755
+#define OBM_OLD_ZOOM           32756
+#define OBM_OLD_REDUCE         32757
+#define OBM_BTNCORNERS         32758
+#define OBM_CHECKBOXES         32759
+#define OBM_CHECK              32760
+#define OBM_BTSIZE             32761
+#define OBM_OLD_LFARROW        32762
+#define OBM_OLD_RGARROW        32763
+#define OBM_OLD_DNARROW        32764
+#define OBM_OLD_UPARROW        32765
+#define OBM_SIZE               32766
+#define OBM_OLD_CLOSE          32767
+
+#define OCR_NORMAL             32512
+#define OCR_IBEAM              32513
+#define OCR_WAIT               32514
+#define OCR_CROSS              32515
+#define OCR_UP                 32516
+#define OCR_SIZE               32640
+#define OCR_ICON               32641
+#define OCR_SIZENWSE           32642
+#define OCR_SIZENESW           32643
+#define OCR_SIZEWE             32644
+#define OCR_SIZENS             32645
+#define OCR_SIZEALL            32646
+#define OCR_ICOCUR             32647
+#define OCR_NO                 32648
+#define OCR_HAND               32649
+#define OCR_APPSTARTING        32650
+#define OCR_HELP               32651 /* DDK / Win16 */
+#define OCR_DRAGOBJECT         32653 /* FIXME: Wine-only */
+
+#define OIC_SAMPLE             32512
+#define OIC_HAND               32513
+#define OIC_ERROR              OIC_HAND
+#define OIC_QUES               32514
+#define OIC_BANG               32515
+#define OIC_WARNING            OIC_BANG
+#define OIC_NOTE               32516
+#define OIC_INFORMATION        OIC_NOTE
+#define OIC_WINLOGO            32517
+#endif /* OEMRESOURCE */
+
+
+/*** Predefined resources ***/
+#ifndef NOICONS
+#define IDI_APPLICATION        MAKEINTRESOURCE(32512)
+#define IDI_HAND               MAKEINTRESOURCE(32513)
+#define IDI_QUESTION           MAKEINTRESOURCE(32514)
+#define IDI_EXCLAMATION        MAKEINTRESOURCE(32515)
+#define IDI_ASTERISK           MAKEINTRESOURCE(32516)
+#define IDI_WINLOGO            MAKEINTRESOURCE(32517)
+
+#define IDI_WARNING            IDI_EXCLAMATION
+#define IDI_ERROR              IDI_HAND
+#define IDI_INFORMATION        IDI_ASTERISK
+#endif /* NOICONS */
+
+
+/*** Standard dialog button IDs ***/
+#define IDOK                   1
+#define IDCANCEL               2
+#define IDABORT                3
+#define IDRETRY                4
+#define IDIGNORE               5
+#define IDYES                  6
+#define IDNO                   7
+#define IDCLOSE                8
+#define IDHELP                 9
+#define IDTRYAGAIN             10
+#define IDCONTINUE             11
+#ifndef IDTIMEOUT
+#define IDTIMEOUT              32000
+#endif
+
+
+/*** Edit control styles ***/
+#ifndef NOWINSTYLES
+#define ES_LEFT                __MSABI_LONG(0x00000000)
+#define ES_CENTER              __MSABI_LONG(0x00000001)
+#define ES_RIGHT               __MSABI_LONG(0x00000002)
+#define ES_MULTILINE           __MSABI_LONG(0x00000004)
+#define ES_UPPERCASE           __MSABI_LONG(0x00000008)
+#define ES_LOWERCASE           __MSABI_LONG(0x00000010)
+#define ES_PASSWORD            __MSABI_LONG(0x00000020)
+#define ES_AUTOVSCROLL         __MSABI_LONG(0x00000040)
+#define ES_AUTOHSCROLL         __MSABI_LONG(0x00000080)
+#define ES_NOHIDESEL           __MSABI_LONG(0x00000100)
+#define ES_COMBO               __MSABI_LONG(0x00000200) /* Undocumented. Parent is a combobox */
+#define ES_OEMCONVERT          __MSABI_LONG(0x00000400)
+#define ES_READONLY            __MSABI_LONG(0x00000800)
+#define ES_WANTRETURN          __MSABI_LONG(0x00001000)
+#define ES_NUMBER              __MSABI_LONG(0x00002000)
+#endif /* NOWINSTYLES */
+
+
+/*** Edit control messages ***/
+#ifndef NOWINMESSAGES
+#define EM_GETSEL              0x00b0
+#define EM_SETSEL              0x00b1
+#define EM_GETRECT             0x00b2
+#define EM_SETRECT             0x00b3
+#define EM_SETRECTNP           0x00b4
+#define EM_SCROLL              0x00b5
+#define EM_LINESCROLL          0x00b6
+#define EM_SCROLLCARET         0x00b7
+#define EM_GETMODIFY           0x00b8
+#define EM_SETMODIFY           0x00b9
+#define EM_GETLINECOUNT        0x00ba
+#define EM_LINEINDEX           0x00bb
+#define EM_SETHANDLE           0x00bc
+#define EM_GETHANDLE           0x00bd
+#define EM_GETTHUMB            0x00be
+/* FIXME : missing from specs 0x00bf and 0x00c0 */
+#define EM_LINELENGTH          0x00c1
+#define EM_REPLACESEL          0x00c2
+/* FIXME : missing from specs 0x00c3 */
+#define EM_GETLINE             0x00c4
+#define EM_LIMITTEXT           0x00c5
+#define EM_SETLIMITTEXT        EM_LIMITTEXT
+#define EM_CANUNDO             0x00c6
+#define EM_UNDO                0x00c7
+#define EM_FMTLINES            0x00c8
+#define EM_LINEFROMCHAR        0x00c9
+/* FIXME : missing from specs 0x00ca */
+#define EM_SETTABSTOPS         0x00cb
+#define EM_SETPASSWORDCHAR     0x00cc
+#define EM_EMPTYUNDOBUFFER     0x00cd
+#define EM_GETFIRSTVISIBLELINE 0x00ce
+#define EM_SETREADONLY         0x00cf
+#define EM_SETWORDBREAKPROC    0x00d0
+#define EM_GETWORDBREAKPROC    0x00d1
+#define EM_GETPASSWORDCHAR     0x00d2
+#define EM_SETMARGINS          0x00d3
+#define EM_GETMARGINS          0x00d4
+#define EM_GETLIMITTEXT        0x00d5
+#define EM_POSFROMCHAR         0x00d6
+#define EM_CHARFROMPOS         0x00d7
+#define EM_SETIMESTATUS        0x00d8
+#define EM_GETIMESTATUS        0x00d9
+#endif /* NOWINMESSAGES */
+
+
+/*** Button control styles ***/
+#define BS_PUSHBUTTON          __MSABI_LONG(0x00000000)
+#define BS_DEFPUSHBUTTON       __MSABI_LONG(0x00000001)
+#define BS_CHECKBOX            __MSABI_LONG(0x00000002)
+#define BS_AUTOCHECKBOX        __MSABI_LONG(0x00000003)
+#define BS_RADIOBUTTON         __MSABI_LONG(0x00000004)
+#define BS_3STATE              __MSABI_LONG(0x00000005)
+#define BS_AUTO3STATE          __MSABI_LONG(0x00000006)
+#define BS_GROUPBOX            __MSABI_LONG(0x00000007)
+#define BS_USERBUTTON          __MSABI_LONG(0x00000008)
+#define BS_AUTORADIOBUTTON     __MSABI_LONG(0x00000009)
+#define BS_PUSHBOX             __MSABI_LONG(0x0000000A)
+#define BS_OWNERDRAW           __MSABI_LONG(0x0000000B)
+#define BS_TYPEMASK            __MSABI_LONG(0x0000000F)
+#define BS_LEFTTEXT            __MSABI_LONG(0x00000020)
 #define BS_RIGHTBUTTON         BS_LEFTTEXT
 
-#define BS_TEXT                0x00000000L
-#define BS_ICON                0x00000040L
-#define BS_BITMAP              0x00000080L
-#define BS_LEFT                0x00000100L
-#define BS_RIGHT               0x00000200L
-#define BS_CENTER              0x00000300L
-#define BS_TOP                 0x00000400L
-#define BS_BOTTOM              0x00000800L
-#define BS_VCENTER             0x00000C00L
-#define BS_PUSHLIKE            0x00001000L
-#define BS_MULTILINE           0x00002000L
-#define BS_NOTIFY              0x00004000L
-#define BS_FLAT                0x00008000L
-
-/* Combo box styles */
-#define CBS_SIMPLE            0x0001L
-#define CBS_DROPDOWN          0x0002L
-#define CBS_DROPDOWNLIST      0x0003L
-#define CBS_OWNERDRAWFIXED    0x0010L
-#define CBS_OWNERDRAWVARIABLE 0x0020L
-#define CBS_AUTOHSCROLL       0x0040L
-#define CBS_OEMCONVERT        0x0080L
-#define CBS_SORT              0x0100L
-#define CBS_HASSTRINGS        0x0200L
-#define CBS_NOINTEGRALHEIGHT  0x0400L
-#define CBS_DISABLENOSCROLL   0x0800L
-
-#define CBS_UPPERCASE	      0x2000L
-#define CBS_LOWERCASE	      0x4000L
-
-/* Dialog styles */
-#define DS_ABSALIGN		0x0001
-#define DS_SYSMODAL		0x0002
-#define DS_3DLOOK		0x0004	/* win95 */
-#define DS_FIXEDSYS		0x0008	/* win95 */
-#define DS_NOFAILCREATE		0x0010	/* win95 */
-#define DS_LOCALEDIT		0x0020
-#define DS_SETFONT		0x0040
-#define DS_MODALFRAME		0x0080
-#define DS_NOIDLEMSG		0x0100
-#define DS_SETFOREGROUND	0x0200	/* win95 */
-#define DS_CONTROL		0x0400	/* win95 */
-#define DS_CENTER		0x0800	/* win95 */
-#define DS_CENTERMOUSE		0x1000	/* win95 */
-#define DS_CONTEXTHELP		0x2000	/* win95 */
-#define DS_USEPIXELS		0x8000
-#define DS_SHELLFONT		(DS_SETFONT | DS_FIXEDSYS)
-
-/* Edit control styles */
-#define ES_LEFT         0x00000000
-#define ES_CENTER       0x00000001
-#define ES_RIGHT        0x00000002
-#define ES_MULTILINE    0x00000004
-#define ES_UPPERCASE    0x00000008
-#define ES_LOWERCASE    0x00000010
-#define ES_PASSWORD     0x00000020
-#define ES_AUTOVSCROLL  0x00000040
-#define ES_AUTOHSCROLL  0x00000080
-#define ES_NOHIDESEL    0x00000100
-#define ES_COMBO        0x00000200   /* Undocumented. Parent is a combobox */
-#define ES_OEMCONVERT   0x00000400
-#define ES_READONLY     0x00000800
-#define ES_WANTRETURN   0x00001000
-#define ES_NUMBER       0x00002000
-
-
-#define HELP_CONTEXT        0x0001
-#define HELP_QUIT           0x0002
-#define HELP_INDEX          0x0003
-#define HELP_CONTENTS       0x0003
-#define HELP_HELPONHELP     0x0004
-#define HELP_SETINDEX       0x0005
-#define HELP_SETCONTENTS    0x0005
-#define HELP_CONTEXTPOPUP   0x0008
-#define HELP_FORCEFILE      0x0009
-#define HELP_KEY            0x0101
-#define HELP_COMMAND        0x0102
-#define HELP_PARTIALKEY     0x0105
-#define HELP_MULTIKEY       0x0201
-#define HELP_SETWINPOS      0x0203
-#define HELP_CONTEXTMENU    0x000a
-#define HELP_FINDER	    0x000b
-#define HELP_WM_HELP	    0x000c
-#define HELP_SETPOPUP_POS   0x000d
-
-#define HELP_TCARD	    0x8000
-#define HELP_TCARD_DATA	    0x0010
-#define HELP_TCARD_OTHER_CALLER 0x0011
+#define BS_TEXT                __MSABI_LONG(0x00000000)
+#define BS_ICON                __MSABI_LONG(0x00000040)
+#define BS_BITMAP              __MSABI_LONG(0x00000080)
+#define BS_LEFT                __MSABI_LONG(0x00000100)
+#define BS_RIGHT               __MSABI_LONG(0x00000200)
+#define BS_CENTER              __MSABI_LONG(0x00000300)
+#define BS_TOP                 __MSABI_LONG(0x00000400)
+#define BS_BOTTOM              __MSABI_LONG(0x00000800)
+#define BS_VCENTER             __MSABI_LONG(0x00000C00)
+#define BS_PUSHLIKE            __MSABI_LONG(0x00001000)
+#define BS_MULTILINE           __MSABI_LONG(0x00002000)
+#define BS_NOTIFY              __MSABI_LONG(0x00004000)
+#define BS_FLAT                __MSABI_LONG(0x00008000)
+
+
+/*** Button notification codes ***/
+#define BN_CLICKED             0
+#define BN_PAINT               1
+#define BN_HILITE              2
+#define BN_PUSHED              BN_HILITE
+#define BN_UNHILITE            3
+#define BN_UNPUSHED            BN_UNHILITE
+#define BN_DISABLE             4
+#define BN_DOUBLECLICKED       5
+#define BN_DBLCLK              BN_DOUBLECLICKED
+#define BN_SETFOCUS            6
+#define BN_KILLFOCUS           7
 
 
-#define IDH_NO_HELP             28440
-#define IDH_MISSING_CONTEXT     28441
+/*** Win32 button control messages ***/
+#define BM_GETCHECK            0x00f0
+#define BM_SETCHECK            0x00f1
+#define BM_GETSTATE            0x00f2
+#define BM_SETSTATE            0x00f3
+#define BM_SETSTYLE            0x00f4
+#define BM_CLICK               0x00f5
+#define BM_GETIMAGE            0x00f6
+#define BM_SETIMAGE            0x00f7
+
+/* Button states */
+#define BST_UNCHECKED          0x0000
+#define BST_CHECKED            0x0001
+#define BST_INDETERMINATE      0x0002
+#define BST_PUSHED             0x0004
+#define BST_FOCUS              0x0008
+
+/*** Static Control Styles ***/
+#define SS_LEFT                __MSABI_LONG(0x00000000)
+#define SS_CENTER              __MSABI_LONG(0x00000001)
+#define SS_RIGHT               __MSABI_LONG(0x00000002)
+#define SS_ICON                __MSABI_LONG(0x00000003)
+#define SS_BLACKRECT           __MSABI_LONG(0x00000004)
+#define SS_GRAYRECT            __MSABI_LONG(0x00000005)
+#define SS_WHITERECT           __MSABI_LONG(0x00000006)
+#define SS_BLACKFRAME          __MSABI_LONG(0x00000007)
+#define SS_GRAYFRAME           __MSABI_LONG(0x00000008)
+#define SS_WHITEFRAME          __MSABI_LONG(0x00000009)
+#define SS_USERITEM            __MSABI_LONG(0x0000000A)
+#define SS_SIMPLE              __MSABI_LONG(0x0000000B)
+#define SS_LEFTNOWORDWRAP      __MSABI_LONG(0x0000000C)
+#define SS_OWNERDRAW           __MSABI_LONG(0x0000000D)
+#define SS_BITMAP              __MSABI_LONG(0x0000000E)
+#define SS_ENHMETAFILE         __MSABI_LONG(0x0000000F)
+#define SS_ETCHEDHORZ          __MSABI_LONG(0x00000010)
+#define SS_ETCHEDVERT          __MSABI_LONG(0x00000011)
+#define SS_ETCHEDFRAME         __MSABI_LONG(0x00000012)
+#define SS_TYPEMASK            __MSABI_LONG(0x0000001F)
+
+#define SS_REALSIZECONTROL     __MSABI_LONG(0x00000040)
+#define SS_NOPREFIX            __MSABI_LONG(0x00000080)
+#define SS_NOTIFY              __MSABI_LONG(0x00000100)
+#define SS_CENTERIMAGE         __MSABI_LONG(0x00000200)
+#define SS_RIGHTJUST           __MSABI_LONG(0x00000400)
+#define SS_REALSIZEIMAGE       __MSABI_LONG(0x00000800)
+#define SS_SUNKEN              __MSABI_LONG(0x00001000)
+#define SS_EDITCONTROL         __MSABI_LONG(0x00002000)
+#define SS_ENDELLIPSIS         __MSABI_LONG(0x00004000)
+#define SS_PATHELLIPSIS        __MSABI_LONG(0x00008000)
+#define SS_WORDELLIPSIS        __MSABI_LONG(0x0000C000)
+#define SS_ELLIPSISMASK        SS_WORDELLIPSIS
+
+
+/*** Dialog styles ***/
+#define DS_ABSALIGN            __MSABI_LONG(0x00000001)
+#define DS_SYSMODAL            __MSABI_LONG(0x00000002)
+#define DS_3DLOOK              __MSABI_LONG(0x00000004) /* win95 */
+#define DS_FIXEDSYS            __MSABI_LONG(0x00000008) /* win95 */
+#define DS_NOFAILCREATE        __MSABI_LONG(0x00000010) /* win95 */
+#define DS_LOCALEDIT           __MSABI_LONG(0x00000020)
+#define DS_SETFONT             __MSABI_LONG(0x00000040)
+#define DS_MODALFRAME          __MSABI_LONG(0x00000080)
+#define DS_NOIDLEMSG           __MSABI_LONG(0x00000100)
+#define DS_SETFOREGROUND       __MSABI_LONG(0x00000200) /* win95 */
+#define DS_CONTROL             __MSABI_LONG(0x00000400) /* win95 */
+#define DS_CENTER              __MSABI_LONG(0x00000800) /* win95 */
+#define DS_CENTERMOUSE         __MSABI_LONG(0x00001000) /* win95 */
+#define DS_CONTEXTHELP         __MSABI_LONG(0x00002000) /* win95 */
+#define DS_USEPIXELS           __MSABI_LONG(0x00008000)
+#define DS_SHELLFONT           (DS_SETFONT | DS_FIXEDSYS)
+
+
+/*** Listbox styles ***/
+#ifndef NOWINSTYLES
+#define LBS_NOTIFY             __MSABI_LONG(0x00000001)
+#define LBS_SORT               __MSABI_LONG(0x00000002)
+#define LBS_NOREDRAW           __MSABI_LONG(0x00000004)
+#define LBS_MULTIPLESEL        __MSABI_LONG(0x00000008)
+#define LBS_OWNERDRAWFIXED     __MSABI_LONG(0x00000010)
+#define LBS_OWNERDRAWVARIABLE  __MSABI_LONG(0x00000020)
+#define LBS_HASSTRINGS         __MSABI_LONG(0x00000040)
+#define LBS_USETABSTOPS        __MSABI_LONG(0x00000080)
+#define LBS_NOINTEGRALHEIGHT   __MSABI_LONG(0x00000100)
+#define LBS_MULTICOLUMN        __MSABI_LONG(0x00000200)
+#define LBS_WANTKEYBOARDINPUT  __MSABI_LONG(0x00000400)
+#define LBS_EXTENDEDSEL        __MSABI_LONG(0x00000800)
+#define LBS_DISABLENOSCROLL    __MSABI_LONG(0x00001000)
+#define LBS_NODATA             __MSABI_LONG(0x00002000)
+#define LBS_NOSEL              __MSABI_LONG(0x00004000)
+#define LBS_COMBOBOX           __MSABI_LONG(0x00008000)
+#define LBS_STANDARD           (LBS_NOTIFY | LBS_SORT | WS_VSCROLL | WS_BORDER)
+#endif /* NOWINSTYLES */
+
+/*** Combo box styles ***/
+#ifndef NOWINSTYLES
+#define CBS_SIMPLE             __MSABI_LONG(0x00000001)
+#define CBS_DROPDOWN           __MSABI_LONG(0x00000002)
+#define CBS_DROPDOWNLIST       __MSABI_LONG(0x00000003)
+#define CBS_OWNERDRAWFIXED     __MSABI_LONG(0x00000010)
+#define CBS_OWNERDRAWVARIABLE  __MSABI_LONG(0x00000020)
+#define CBS_AUTOHSCROLL        __MSABI_LONG(0x00000040)
+#define CBS_OEMCONVERT         __MSABI_LONG(0x00000080)
+#define CBS_SORT               __MSABI_LONG(0x00000100)
+#define CBS_HASSTRINGS         __MSABI_LONG(0x00000200)
+#define CBS_NOINTEGRALHEIGHT   __MSABI_LONG(0x00000400)
+#define CBS_DISABLENOSCROLL    __MSABI_LONG(0x00000800)
+
+#define CBS_UPPERCASE          __MSABI_LONG(0x00002000)
+#define CBS_LOWERCASE          __MSABI_LONG(0x00004000)
+#endif /* NOWINSTYLES */
+
+
+/*** Scrollbar styles ***/
+#ifndef NOWINSTYLES
+#define SBS_HORZ               __MSABI_LONG(0x00000000)
+#define SBS_VERT               __MSABI_LONG(0x00000001)
+#define SBS_TOPALIGN           __MSABI_LONG(0x00000002)
+#define SBS_LEFTALIGN          __MSABI_LONG(0x00000002)
+#define SBS_BOTTOMALIGN        __MSABI_LONG(0x00000004)
+#define SBS_RIGHTALIGN         __MSABI_LONG(0x00000004)
+#define SBS_SIZEBOXTOPLEFTALIGN __MSABI_LONG(0x00000002)
+#define SBS_SIZEBOXBOTTOMRIGHTALIGN __MSABI_LONG(0x00000004)
+#define SBS_SIZEBOX            __MSABI_LONG(0x00000008)
+#define SBS_SIZEGRIP           __MSABI_LONG(0x00000010)
+#endif /* NOWINSTYLES */
+
+/*** WinHelp commands ***/
+#define HELP_CONTEXT           __MSABI_LONG(0x00000001)
+#define HELP_QUIT              __MSABI_LONG(0x00000002)
+#define HELP_INDEX             __MSABI_LONG(0x00000003)
+#define HELP_CONTENTS          HELP_INDEX
+#define HELP_HELPONHELP        __MSABI_LONG(0x00000004)
+#define HELP_SETINDEX          __MSABI_LONG(0x00000005)
+#define HELP_SETCONTENTS       HELP_SETINDEX
+#define HELP_CONTEXTPOPUP      __MSABI_LONG(0x00000008)
+#define HELP_FORCEFILE         __MSABI_LONG(0x00000009)
+#define HELP_KEY               __MSABI_LONG(0x00000101)
+#define HELP_COMMAND           __MSABI_LONG(0x00000102)
+#define HELP_PARTIALKEY        __MSABI_LONG(0x00000105)
+#define HELP_MULTIKEY          __MSABI_LONG(0x00000201)
+#define HELP_SETWINPOS         __MSABI_LONG(0x00000203)
+
+#define HELP_CONTEXTMENU       0x000a
+#define HELP_FINDER            0x000b
+#define HELP_WM_HELP           0x000c
+#define HELP_SETPOPUP_POS      0x000d
+#define HELP_TCARD_DATA        0x0010
+#define HELP_TCARD_OTHER_CALLER 0x0011
+#define HELP_TCARD             0x8000
+
+#define IDH_NO_HELP            28440
+#define IDH_MISSING_CONTEXT    28441
 #define IDH_GENERIC_HELP_BUTTON 28442
-#define IDH_OK                  28443
-#define IDH_CANCEL              28444
-#define IDH_HELP                28445
-
-/* Listbox styles */
-#define LBS_NOTIFY               0x0001
-#define LBS_SORT                 0x0002
-#define LBS_NOREDRAW             0x0004
-#define LBS_MULTIPLESEL          0x0008
-#define LBS_OWNERDRAWFIXED       0x0010
-#define LBS_OWNERDRAWVARIABLE    0x0020
-#define LBS_HASSTRINGS           0x0040
-#define LBS_USETABSTOPS          0x0080
-#define LBS_NOINTEGRALHEIGHT     0x0100
-#define LBS_MULTICOLUMN          0x0200
-#define LBS_WANTKEYBOARDINPUT    0x0400
-#define LBS_EXTENDEDSEL          0x0800
-#define LBS_DISABLENOSCROLL      0x1000
-#define LBS_NODATA               0x2000
-#define LBS_NOSEL                0x4000
-#define LBS_COMBOBOX             0x8000
-#define LBS_STANDARD  (LBS_NOTIFY | LBS_SORT | WS_VSCROLL | WS_BORDER)
-
-/* Menu flags */
-#define MF_INSERT          0x0000
-#define MF_CHANGE          0x0080
-#define MF_APPEND          0x0100
-#define MF_DELETE          0x0200
-#define MF_REMOVE          0x1000
-#define MF_END             0x0080
-
-#define MF_ENABLED         0x0000
-#define MF_GRAYED          0x0001
-#define MF_DISABLED        0x0002
-#define MF_STRING          0x0000
-#define MF_BITMAP          0x0004
-#define MF_UNCHECKED       0x0000
-#define MF_CHECKED         0x0008
-#define MF_POPUP           0x0010
-#define MF_MENUBARBREAK    0x0020
-#define MF_MENUBREAK       0x0040
-#define MF_UNHILITE        0x0000
-#define MF_HILITE          0x0080
-#define MF_OWNERDRAW       0x0100
-#define MF_USECHECKBITMAPS 0x0200
-#define MF_BYCOMMAND       0x0000
-#define MF_BYPOSITION      0x0400
-#define MF_SEPARATOR       0x0800
-#define MF_DEFAULT         0x1000
-#define MF_SYSMENU         0x2000
-#define MF_HELP            0x4000
-#define MF_RIGHTJUSTIFY    0x4000
-#define MF_MOUSESELECT     0x8000
-
-/* Flags for extended menu item types.  */
-#define MFT_STRING         MF_STRING
-#define MFT_BITMAP         MF_BITMAP
-#define MFT_MENUBARBREAK   MF_MENUBARBREAK
-#define MFT_MENUBREAK      MF_MENUBREAK
-#define MFT_OWNERDRAW      MF_OWNERDRAW
-#define MFT_RADIOCHECK     0x00000200L
-#define MFT_SEPARATOR      MF_SEPARATOR
-#define MFT_RIGHTORDER     0x00002000L
-#define MFT_RIGHTJUSTIFY   MF_RIGHTJUSTIFY
-
-/* Flags for extended menu item states.  */
-#define MFS_GRAYED          0x00000003L
-#define MFS_DISABLED        MFS_GRAYED
-#define MFS_CHECKED         MF_CHECKED
-#define MFS_HILITE          MF_HILITE
-#define MFS_ENABLED         MF_ENABLED
-#define MFS_UNCHECKED       MF_UNCHECKED
-#define MFS_UNHILITE        MF_UNHILITE
-#define MFS_DEFAULT         MF_DEFAULT
-#define MFS_MASK            0x0000108BL
-#define MFS_HOTTRACKDRAWN   0x10000000L
-#define MFS_CACHEDBMP       0x20000000L
-#define MFS_BOTTOMGAPDROP   0x40000000L
-#define MFS_TOPGAPDROP      0x80000000L
-#define MFS_GAPDROP         0xC0000000L
-/* Scrollbar styles */
-#define SBS_HORZ                    0x0000L
-#define SBS_VERT                    0x0001L
-#define SBS_TOPALIGN                0x0002L
-#define SBS_LEFTALIGN               0x0002L
-#define SBS_BOTTOMALIGN             0x0004L
-#define SBS_RIGHTALIGN              0x0004L
-#define SBS_SIZEBOXTOPLEFTALIGN     0x0002L
-#define SBS_SIZEBOXBOTTOMRIGHTALIGN 0x0004L
-#define SBS_SIZEBOX                 0x0008L
-#define SBS_SIZEGRIP                0x0010L
-
-/* WM_SYSCOMMAND parameters */
-#ifdef SC_SIZE /* at least HP-UX: already defined in /usr/include/sys/signal.h */
-#undef SC_SIZE
-#endif
-#define SC_SIZE         0xf000
-#define SC_MOVE         0xf010
-#define SC_MINIMIZE     0xf020
-#define SC_MAXIMIZE     0xf030
-#define SC_NEXTWINDOW   0xf040
-#define SC_PREVWINDOW   0xf050
-#define SC_CLOSE        0xf060
-#define SC_VSCROLL      0xf070
-#define SC_HSCROLL      0xf080
-#define SC_MOUSEMENU    0xf090
-#define SC_KEYMENU      0xf100
-#define SC_ARRANGE      0xf110
-#define SC_RESTORE      0xf120
-#define SC_TASKLIST     0xf130
-#define SC_SCREENSAVE   0xf140
-#define SC_HOTKEY       0xf150
-  /* Win32 4.0 */
-#define SC_DEFAULT      0xf160
-#define SC_MONITORPOWER 0xf170
-#define SC_CONTEXTHELP  0xf180
-#define SC_SEPARATOR    0xf00f
-
-/* obsolete names(SC_ICON and SC_ZOOM) */
-#define SC_ICON   SC_MINIMIZE
-#define SC_ZOOM   SC_MAXIMIZE
-
-/* Static Control Styles */
-#define SS_LEFT             0x00000000L
-#define SS_CENTER           0x00000001L
-#define SS_RIGHT            0x00000002L
-#define SS_ICON             0x00000003L
-#define SS_BLACKRECT        0x00000004L
-#define SS_GRAYRECT         0x00000005L
-#define SS_WHITERECT        0x00000006L
-#define SS_BLACKFRAME       0x00000007L
-#define SS_GRAYFRAME        0x00000008L
-#define SS_WHITEFRAME       0x00000009L
-#define SS_USERITEM         0x0000000AL
-#define SS_SIMPLE           0x0000000BL
-#define SS_LEFTNOWORDWRAP   0x0000000CL
-#define SS_OWNERDRAW        0x0000000DL
-#define SS_BITMAP           0x0000000EL
-#define SS_ENHMETAFILE      0x0000000FL
-#define SS_ETCHEDHORZ       0x00000010L
-#define SS_ETCHEDVERT       0x00000011L
-#define SS_ETCHEDFRAME      0x00000012L
-#define SS_TYPEMASK         0x0000001FL
-
-#define SS_REALSIZECONTROL  0x00000040L
-#define SS_NOPREFIX         0x00000080L
-#define SS_NOTIFY           0x00000100L
-#define SS_CENTERIMAGE      0x00000200L
-#define SS_RIGHTJUST        0x00000400L
-#define SS_REALSIZEIMAGE    0x00000800L
-#define SS_SUNKEN           0x00001000L
-#define SS_EDITCONTROL      0x00002000L
-#define SS_ENDELLIPSIS      0x00004000L
-#define SS_PATHELLIPSIS     0x00008000L
-#define SS_WORDELLIPSIS     0x0000C000L
-#define SS_ELLIPSISMASK     0x0000C000L
-
-/* ShowWindow() codes */
-#define SW_HIDE             0
-#define SW_SHOWNORMAL       1
-#define SW_NORMAL           1
-#define SW_SHOWMINIMIZED    2
-#define SW_SHOWMAXIMIZED    3
-#define SW_MAXIMIZE         3
-#define SW_SHOWNOACTIVATE   4
-#define SW_SHOW             5
-#define SW_MINIMIZE         6
-#define SW_SHOWMINNOACTIVE  7
-#define SW_SHOWNA           8
-#define SW_RESTORE          9
-#define SW_SHOWDEFAULT	    10
-#define SW_FORCEMINIMIZE    11
-#define SW_MAX              11
-
-/* Predefined resources */
-#define IDI_APPLICATION    MAKEINTRESOURCE(32512)
-#define IDI_HAND           MAKEINTRESOURCE(32513)
-#define IDI_QUESTION       MAKEINTRESOURCE(32514)
-#define IDI_EXCLAMATION    MAKEINTRESOURCE(32515)
-#define IDI_ASTERISK       MAKEINTRESOURCE(32516)
-#define IDI_WINLOGO        MAKEINTRESOURCE(32517)
-
-#define IDI_WARNING        IDI_EXCLAMATION
-#define IDI_ERROR          IDI_HAND
-#define IDI_INFORMATION    IDI_ASTERISK
+#define IDH_OK                 28443
+#define IDH_CANCEL             28444
+#define IDH_HELP               28445
-- 
1.7.7.1



More information about the wine-patches mailing list