update for HEAD-2003091401
[reactos.git] / include / defines.h
index e191776..1e77428 100644 (file)
 
 
 #ifndef WIN32_NO_STATUS
-//#define STATUS_WAIT_0                (0x00000000L)
-//#define STATUS_ABANDONED_WAIT_0      (0x00000080L)
-//#define STATUS_USER_APC              (0x000000C0L)
-//#define STATUS_TIMEOUT               (0x00000102L)
-//#define STATUS_PENDING               (0x00000103L)
+/*
+#define STATUS_WAIT_0                  (0x00000000L)
+#define STATUS_ABANDONED_WAIT_0        (0x00000080L)
+#define STATUS_USER_APC                (0x000000C0L)
+#define STATUS_TIMEOUT                 (0x00000102L)
+#define STATUS_PENDING                 (0x00000103L)
+*/
 #endif /* WIN32_NO_STATUS */
 
 #define GA_PARENT               (1)
@@ -156,6 +158,7 @@ extern "C" {
 #define MF_STRING      (0L)
 #define MF_SYSMENU     (0x2000L)
 #define MF_USECHECKBITMAPS     (0x200L)
+#define MF_RIGHTJUSTIFY MF_HELP
 
 /* Ternary Raster Operations - BitBlt */
 #define BLACKNESS      0x00000042
@@ -244,6 +247,7 @@ extern "C" {
 #define DISP_CHANGE_FAILED     (-1)
 #define DISP_CHANGE_BADMODE    (-2)
 #define DISP_CHANGE_NOTUPDATED (-3)
+#define DISP_CHANGE_BADPARAM   (-5)
 
 /* ChangeServiceConfig */
 #define SERVICE_NO_CHANGE      (-1)
@@ -258,6 +262,8 @@ extern "C" {
 #define SERVICE_AUTO_START     (2)
 #define SERVICE_DEMAND_START   (3)
 #define SERVICE_DISABLED       (4)
+#define SERVICE_CONFIG_DESCRIPTION (1)
+#define SERVICE_CONFIG_FAILURE_ACTIONS (2)
 
 /* SERVICE_STATUS structure */
 #define SERVICE_STOPPED        (1)
@@ -270,6 +276,11 @@ extern "C" {
 #define SERVICE_ACCEPT_STOP    (1)
 #define SERVICE_ACCEPT_PAUSE_CONTINUE  (2)
 #define SERVICE_ACCEPT_SHUTDOWN        (4)
+#define SERVICE_ACCEPT_PARAMCHANGE (8)
+#define SERVICE_ACCEPT_NETBINDCHANGE (16)
+#define SERVICE_ACCEPT_HARDWAREPROFILECHANGE (32)
+#define SERVICE_ACCEPT_POWEREVENT (64)
+#define SERVICE_ACCEPT_SESSIONCHANGE (128)
 
 /* CheckDlgButton */
 #define BST_CHECKED    (1)
@@ -318,6 +329,8 @@ extern "C" {
 #define COMPLEXREGION  (3)
 #define ERROR  (0)
 
+#define HW_PROFILE_GUIDLEN         39
+#define MAX_PROFILE_LEN            80
 /* CommonDlgExtendedError */
 #define CDERR_DIALOGFAILURE    (0xffff)
 #define CDERR_FINDRESFAILURE   (6)
@@ -383,6 +396,15 @@ extern "C" {
 #define SERVICE_CONTROL_CONTINUE       (3)
 #define SERVICE_CONTROL_INTERROGATE    (4)
 #define SERVICE_CONTROL_SHUTDOWN       (5)
+#define SERVICE_CONTROL_PARAMCHANGE (6)
+#define SERVICE_CONTROL_NETBINDADD (7)
+#define SERVICE_CONTROL_NETBINDREMOVE (8)
+#define SERVICE_CONTROL_NETBINDENABLE (9)
+#define SERVICE_CONTROL_NETBINDDISABLE (10)
+#define SERVICE_CONTROL_DEVICEEVENT (11)
+#define SERVICE_CONTROL_HARDWAREPROFILECHANGE (12)
+#define SERVICE_CONTROL_POWEREVENT (13)
+#define SERVICE_CONTROL_SESSIONCHANGE (14)
 
 /* CopyImage, LoadImage */
 #define IMAGE_BITMAP   (0)
@@ -394,6 +416,7 @@ extern "C" {
 #define LR_MONOCHROME  (1)
 #define LR_CREATEDIBSECTION    (8192)
 #define LR_DEFAULTSIZE (64)
+#define LR_SHARED      (32768)
 
 /* CreateDesktop */
 #define DF_ALLOWOTHERACCOUNTHOOK       (0x1L)
@@ -535,7 +558,6 @@ extern "C" {
 
 
 /* CreateService */
-#define SERVICE_ALL_ACCESS     (0xf01ffL)
 #define SERVICE_CHANGE_CONFIG  (2)
 #define SERVICE_ENUMERATE_DEPENDENTS   (8)
 #define SERVICE_INTERROGATE    (128)
@@ -559,6 +581,17 @@ extern "C" {
 #define SERVICE_ERROR_NORMAL   (1)
 #define SERVICE_ERROR_SEVERE   (2)
 #define SERVICE_ERROR_CRITICAL (3)
+#define SERVICE_RUNS_IN_SYSTEM_PROCESS (1)
+#define SERVICE_ALL_ACCESS             (STANDARD_RIGHTS_REQUIRED     | \
+                                        SERVICE_QUERY_CONFIG         | \
+                                        SERVICE_CHANGE_CONFIG        | \
+                                        SERVICE_QUERY_STATUS         | \
+                                        SERVICE_ENUMERATE_DEPENDENTS | \
+                                        SERVICE_START                | \
+                                        SERVICE_STOP                 | \
+                                        SERVICE_PAUSE_CONTINUE       | \
+                                        SERVICE_INTERROGATE          | \
+                                        SERVICE_USER_DEFINED_CONTROL)
 
 /* CreateTapePartition, WriteTapemark */
 #define TAPE_FIXED_PARTITIONS  (0L)
@@ -624,6 +657,7 @@ extern "C" {
 #define BS_TOP (0x400L)
 #define BS_USERBUTTON  (0x8L)
 #define BS_VCENTER     (0xc00L)
+#define BS_FLAT (0x8000L)
 #define CBS_AUTOHSCROLL        (0x40L)
 #define CBS_DISABLENOSCROLL    (0x800L)
 #define CBS_DROPDOWN   (0x2L)
@@ -682,6 +716,8 @@ extern "C" {
 #define SS_BLACKRECT   (0x4L)
 #define SS_CENTER      (0x1L)
 #define SS_CENTERIMAGE (0x200L)
+#define SS_ELLIPSISMASK        (0xC000L)
+#define SS_ENDELLIPSIS (0x4000L)
 #define SS_ENHMETAFILE (0xfL)
 #define SS_ETCHEDFRAME (0x12L)
 #define SS_ETCHEDHORZ  (0x10L)
@@ -694,14 +730,17 @@ extern "C" {
 #define SS_NOPREFIX    (0x80L)
 #define SS_NOTIFY      (0x100L)
 #define SS_OWNERDRAW   (0xdL)
+#define SS_PATHELLIPSIS        (0x8000L)
 #define SS_REALSIZEIMAGE       (0x800L)
 #define SS_RIGHT       (0x2L)
 #define SS_RIGHTJUST   (0x400L)
 #define SS_SIMPLE      (0xbL)
 #define SS_SUNKEN      (0x1000L)
+#define SS_TYPEMASK    (0x1FL)
 #define SS_USERITEM     (0xaL)
 #define SS_WHITEFRAME  (0x9L)
 #define SS_WHITERECT   (0x6L)
+#define SS_WORDELLIPSIS (0xC000L)
 #define DS_3DLOOK      (0x4L)
 #define DS_ABSALIGN    (0x1L)
 #define DS_CENTER      (0x800L)
@@ -844,8 +883,15 @@ extern "C" {
 #define IDANI_CLOSE    (2)
 
 /* DrawCaption */
-#define DC_ACTIVE      (1)
-#define DC_SMALLCAP    (2)
+#define DC_ACTIVE      1
+#define DC_SMALLCAP    2
+#define DC_ICON        4
+#define DC_TEXT        8
+#define DC_INBUTTON    16
+#define DC_GRADIENT 32
+#define DC_BUTTONS 64
+#define DC_CAPTION     (DC_ICON|DC_TEXT|DC_BUTTONS|DC_GRADIENT)
+#define DC_NC  (DC_CAPTION|DC_FRAME)
 
 /* DrawEdge */
 #define BDR_OUTER       (3)
@@ -930,6 +976,7 @@ extern "C" {
 #define DSS_UNION      (16)
 #define DSS_DISABLED   (32)
 #define DSS_MONO       (128)
+#define DSS_RIGHT   (0x8000)    /* Undocumented */
 
 /* DrawStatusText */
 #define SBT_NOBORDERS  (256)
@@ -1007,6 +1054,8 @@ extern "C" {
 /* EnumDependentServices */
 #define SERVICE_ACTIVE (1)
 #define SERVICE_INACTIVE       (2)
+#define SERVICE_STATE_ALL              (SERVICE_ACTIVE   | \
+                                        SERVICE_INACTIVE)
 
 /* EnumFontFamExProc */
 #define DEVICE_FONTTYPE        (2)
@@ -1033,20 +1082,69 @@ extern "C" {
 /* EnumProtocols */
 
 /* EnumResLangProc */
-#define RT_ACCELERATOR (MAKEINTRESOURCE(9))
-#define RT_BITMAP      (MAKEINTRESOURCE(2))
-#define RT_DIALOG      (MAKEINTRESOURCE(5))
-#define RT_FONT        (MAKEINTRESOURCE(8))
-#define RT_FONTDIR     (MAKEINTRESOURCE(7))
-#define RT_MENU        (MAKEINTRESOURCE(4))
-#define RT_RCDATA      (MAKEINTRESOURCE(10))
-#define RT_STRING      (MAKEINTRESOURCE(6))
-#define RT_MESSAGETABLE        (MAKEINTRESOURCE(11))
-#define RT_CURSOR      (MAKEINTRESOURCE(1))
-#define RT_GROUP_CURSOR        (MAKEINTRESOURCE(12))
-#define RT_ICON        (MAKEINTRESOURCE(3))
-#define RT_GROUP_ICON  (MAKEINTRESOURCE(13))
-#define RT_VERSION     (MAKEINTRESOURCE(16))
+#define RT_ACCELERATORA        (MAKEINTRESOURCEA(9))
+#define RT_BITMAPA     (MAKEINTRESOURCEA(2))
+#define RT_DIALOGA     (MAKEINTRESOURCEA(5))
+#define RT_FONTA       (MAKEINTRESOURCEA(8))
+#define RT_FONTDIRA    (MAKEINTRESOURCEA(7))
+#define RT_MENUA       (MAKEINTRESOURCEA(4))
+#define RT_RCDATAA     (MAKEINTRESOURCEA(10))
+#define RT_STRINGA     (MAKEINTRESOURCEA(6))
+#define RT_MESSAGETABLEA       (MAKEINTRESOURCEA(11))
+#define RT_CURSORA     (MAKEINTRESOURCEA(1))
+#define RT_GROUP_CURSORA       (MAKEINTRESOURCEA(12))
+#define RT_ICONA       (MAKEINTRESOURCEA(3))
+#define RT_GROUP_ICONA (MAKEINTRESOURCEA(13))
+#define RT_VERSIONA    (MAKEINTRESOURCEA(16))
+
+#define RT_ACCELERATORW        (MAKEINTRESOURCEW(9))
+#define RT_BITMAPW     (MAKEINTRESOURCEW(2))
+#define RT_DIALOGW     (MAKEINTRESOURCEW(5))
+#define RT_FONTW       (MAKEINTRESOURCEW(8))
+#define RT_FONTDIRW    (MAKEINTRESOURCEW(7))
+#define RT_MENUW       (MAKEINTRESOURCEW(4))
+#define RT_RCDATAW     (MAKEINTRESOURCEW(10))
+#define RT_STRINGW     (MAKEINTRESOURCEW(6))
+#define RT_MESSAGETABLEW       (MAKEINTRESOURCEW(11))
+#define RT_CURSORW     (MAKEINTRESOURCEW(1))
+#define RT_GROUP_CURSORW       (MAKEINTRESOURCEW(12))
+#define RT_ICONW       (MAKEINTRESOURCEW(3))
+#define RT_GROUP_ICONW (MAKEINTRESOURCEW(13))
+#define RT_VERSIONW    (MAKEINTRESOURCEW(16))
+
+#ifndef _DISABLE_TIDENT
+#ifdef UNICODE
+#define RT_ACCELERATOR RT_ACCELERATORW
+#define RT_BITMAP      RT_BITMAPW
+#define RT_DIALOG      RT_DIALOGW
+#define RT_FONT        RT_FONTW
+#define RT_FONTDIR     RT_FONTDIRW
+#define RT_MENU        RT_MENUW
+#define RT_RCDATA      RT_RCDATAW
+#define RT_STRING      RT_STRINGW
+#define RT_MESSAGETABLE        RT_MESSAGETABLEW
+#define RT_CURSOR      RT_CURSORW
+#define RT_GROUP_CURSOR        RT_GROUP_CURSORW
+#define RT_ICON        RT_ICONW
+#define RT_GROUP_ICON  RT_GROUP_ICONW
+#define RT_VERSION     RT_VERSIONW
+#else /* UNICODE */
+#define RT_ACCELERATOR RT_ACCELERATORA
+#define RT_BITMAP      RT_BITMAPA
+#define RT_DIALOG      RT_DIALOGA
+#define RT_FONT        RT_FONTA
+#define RT_FONTDIR     RT_FONTDIRA
+#define RT_MENU        RT_MENUA
+#define RT_RCDATA      RT_RCDATAA
+#define RT_STRING      RT_STRINGA
+#define RT_MESSAGETABLE        RT_MESSAGETABLEA
+#define RT_CURSOR      RT_CURSORA
+#define RT_GROUP_CURSOR        RT_GROUP_CURSORA
+#define RT_ICON        RT_ICONA
+#define RT_GROUP_ICON  RT_GROUP_ICONA
+#define RT_VERSION     RT_VERSIONA
+#endif /* UNICODE */
+#endif /* _DISABLE_TIDENT */
 
 /* EnumServicesStatus */
 #define SERVICE_WIN32  (48)
@@ -1136,6 +1234,9 @@ extern "C" {
 
 /* FindNextPrinterNotification */
 
+/* FlsAlloc */
+#define FLS_OUT_OF_INDEXES (0xFFFFFFFF)
+
 /* FMExtensionProc */
 
 /* FoldString */
@@ -1282,10 +1383,10 @@ extern "C" {
 #define CP_ACP (0)
 #define CP_MACCP       (2)
 #define CP_OEMCP       (1)
-#define CP_THREAD_ACP                  3                       //ACP Current thread's ANSI code page 
-#define CP_SYMBOL                              42                      //Symbol code page (42) 
-#define CP_UTF7                                        65000           //Translate using UTF-7 
-#define CP_UTF8                                        65001           //Translate using UTF-8 
+#define CP_THREAD_ACP                  3                       /* ACP Current thread's ANSI code page */
+#define CP_SYMBOL                              42                      /* Symbol code page (42) */
+#define CP_UTF7                                        65000           /* Translate using UTF-7 */
+#define CP_UTF8                                        65001           /* Translate using UTF-8 */ 
 
 /* GetDateFormat */
 #define DATE_SHORTDATE (1)
@@ -1466,27 +1567,28 @@ extern "C" {
 #define HANDLE_FLAG_PROTECT_FROM_CLOSE (2)
 
 /* GetIconInfo */
-#define IDC_ARROW      (MAKEINTRESOURCE(32512))
-#define IDC_IBEAM      (MAKEINTRESOURCE(32513))
-#define IDC_WAIT       (MAKEINTRESOURCE(32514))
-#define IDC_CROSS      (MAKEINTRESOURCE(32515))
-#define IDC_UPARROW    (MAKEINTRESOURCE(32516))
-#define IDC_SIZENWSE   (MAKEINTRESOURCE(32642))
-#define IDC_SIZENESW   (MAKEINTRESOURCE(32643))
-#define IDC_SIZEWE     (MAKEINTRESOURCE(32644))
-#define IDC_SIZENS     (MAKEINTRESOURCE(32645))
-#define IDC_SIZEALL    (MAKEINTRESOURCE(32646))
-#define IDC_NO (MAKEINTRESOURCE(32648))
-#define IDC_APPSTARTING        (MAKEINTRESOURCE(32650))
-#define IDC_HELP       (MAKEINTRESOURCE(32651))
-#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 IDC_SIZE       (MAKEINTRESOURCE(32640))
-#define IDC_ICON       (MAKEINTRESOURCE(32641))
+#define IDC_ARROW      (MAKEINTRESOURCEW(32512))
+#define IDC_IBEAM      (MAKEINTRESOURCEW(32513))
+#define IDC_WAIT       (MAKEINTRESOURCEW(32514))
+#define IDC_CROSS      (MAKEINTRESOURCEW(32515))
+#define IDC_UPARROW    (MAKEINTRESOURCEW(32516))
+#define IDC_SIZENWSE   (MAKEINTRESOURCEW(32642))
+#define IDC_SIZENESW   (MAKEINTRESOURCEW(32643))
+#define IDC_SIZEWE     (MAKEINTRESOURCEW(32644))
+#define IDC_SIZENS     (MAKEINTRESOURCEW(32645))
+#define IDC_SIZEALL    (MAKEINTRESOURCEW(32646))
+#define IDC_NO (MAKEINTRESOURCEW(32648))
+#define IDC_APPSTARTING        (MAKEINTRESOURCEW(32650))
+#define IDC_HELP       (MAKEINTRESOURCEW(32651))
+#define IDI_APPLICATION        (MAKEINTRESOURCEW(32512))
+#define IDI_HAND       (MAKEINTRESOURCEW(32513))
+#define IDI_QUESTION   (MAKEINTRESOURCEW(32514))
+#define IDI_EXCLAMATION        (MAKEINTRESOURCEW(32515))
+#define IDI_ASTERISK   (MAKEINTRESOURCEW(32516))
+#define IDI_WINLOGO    (MAKEINTRESOURCEW(32517))
+#define IDC_SIZE       (MAKEINTRESOURCEW(32640))
+#define IDC_ICON       (MAKEINTRESOURCEW(32641))
+#define IDC_HAND       (MAKEINTRESOURCEW(32649))
 
 /* GetMapMode */
 #define MM_ANISOTROPIC (8)
@@ -1548,11 +1650,12 @@ extern "C" {
 #define QS_TIMER       (16)
 
 /* GetScrollInfo, SetScrollInfo */
-#define SIF_ALL        (23)
-#define SIF_PAGE       (2)
-#define SIF_POS        (4)
-#define SIF_RANGE      (1)
-#define SIF_DISABLENOSCROLL    (8)
+#define SIF_ALL 23
+#define SIF_PAGE 2
+#define SIF_POS 4
+#define SIF_RANGE 1
+#define SIF_DISABLENOSCROLL 8
+#define SIF_TRACKPOS   16
 
 /* GetStdHandle */
 #define STD_INPUT_HANDLE       (DWORD)(-10)
@@ -2033,6 +2136,7 @@ extern "C" {
 #define MB_TASKMODAL   (0x2000L)
 #define MB_YESNO       (0x4L)
 #define MB_YESNOCANCEL (0x3L)
+#define MB_CANCELTRYCONTINUE   (0x6L)
 #define IDABORT        (3)
 #define IDCANCEL       (2)
 #define IDCLOSE        (8)
@@ -2042,6 +2146,8 @@ extern "C" {
 #define IDOK   (1)
 #define IDRETRY        (4)
 #define IDYES  (6)
+#define IDTRYAGAIN     (10)
+#define IDCONTINUE     (11)
 
 /* MessageProc */
 #define MSGF_DIALOGBOX (0)
@@ -2100,13 +2206,19 @@ extern "C" {
 /* OpenProcessToken */
 
 /* OpenSCManager */
-#define SC_MANAGER_ALL_ACCESS  (0xf003fL)
 #define SC_MANAGER_CONNECT     (1)
 #define SC_MANAGER_CREATE_SERVICE      (2)
 #define SC_MANAGER_ENUMERATE_SERVICE   (4)
 #define SC_MANAGER_LOCK        (8)
 #define SC_MANAGER_QUERY_LOCK_STATUS   (16)
 #define SC_MANAGER_MODIFY_BOOT_CONFIG  (32)
+#define SC_MANAGER_ALL_ACCESS          (STANDARD_RIGHTS_REQUIRED      | \
+                                        SC_MANAGER_CONNECT            | \
+                                        SC_MANAGER_CREATE_SERVICE     | \
+                                        SC_MANAGER_ENUMERATE_SERVICE  | \
+                                        SC_MANAGER_LOCK               | \
+                                        SC_MANAGER_QUERY_LOCK_STATUS  | \
+                                        SC_MANAGER_MODIFY_BOOT_CONFIG)
 
 /* PostMessage */
 #define HWND_BROADCAST ((HWND)0xFFFF)
@@ -2472,6 +2584,17 @@ extern "C" {
 #define WPF_RESTORETOMAXIMIZED (2)
 #define WPF_SETMINPOSITION     (1)
 
+/* AnimageWindow */
+#define AW_SLIDE        (0x00040000)
+#define AW_ACTIVATE     (0x00020000)
+#define AW_BLEND        (0x00080000)
+#define AW_HIDE         (0x00010000)
+#define AW_CENTER       (0x00000010)
+#define AW_HOR_POSITIVE (0x00000001)
+#define AW_HOR_NEGATIVE (0x00000002)
+#define AW_VER_POSITIVE (0x00000004)
+#define AW_VER_NEGATIVE (0x00000008)
+
 /* Sleep */
 #define INFINITE       0xFFFFFFFF
 
@@ -3358,6 +3481,7 @@ extern "C" {
 #define WC_LISTVIEWA   "SysListView32"
 #define WC_TABCONTROLA "SysTabControl32"
 #define WC_TREEVIEWA   "SysTreeView32"
+#ifndef _DISABLE_TIDENTS
 #ifdef UNICODE
 #define ANIMATE_CLASS ANIMATE_CLASSW
 #define HOTKEY_CLASS HOTKEY_CLASSW
@@ -3385,6 +3509,7 @@ extern "C" {
 #define WC_TABCONTROL WC_TABCONTROLA
 #define WC_TREEVIEW WC_TREEVIEWA
 #endif /* UNICODE */
+#endif /* _DISABLE_TIDENTS */
 
 /* Header control styles */
 #define HDS_BUTTONS    (2)
@@ -3573,11 +3698,13 @@ extern "C" {
 #define LVIS_STATEIMAGEMASK    (61440)
 #define LPSTR_TEXTCALLBACKW    ((LPWSTR)-1L)
 #define LPSTR_TEXTCALLBACKA    ((LPSTR)-1L)
+#ifndef _DISABLE_TIDENTS
 #ifdef UNICODE
 #define LPSTR_TEXTCALLBACK LPSTR_TEXTCALLBACKW
 #else
 #define LPSTR_TEXTCALLBACK LPSTR_TEXTCALLBACKA
 #endif /* UNICODE */
+#endif /* _DISABLE_TIDENTS */
 
 /* LV_ITEM structure */
 #define LVIF_TEXT      (1)
@@ -4031,6 +4158,7 @@ extern "C" {
 #define LBSELCHSTRINGA "commdlg_LBSelChangedNotify"
 #define SETRGBSTRINGA  "commdlg_SetRGBColor"
 #define SHAREVISTRINGA "commdlg_ShareViolation"
+#ifndef _DISABLE_TIDENTS
 #ifdef UNICODE
 #define COLOROKSTRING COLOROKSTRINGW
 #define FILEOKSTRING FILEOKSTRINGW
@@ -4047,7 +4175,8 @@ extern "C" {
 #define LBSELCHSTRING LBSELCHSTRINGA
 #define SETRGBSTRING SETRGBSTRINGA
 #define SHAREVISTRING SHAREVISTRINGA
-#endif
+#endif /* UNICODE */
+#endif /* _DISABLE_TIDENTS */
 
 /* LBSELCHSTRING message */
 #define CD_LBSELCHANGE (0)
@@ -4231,6 +4360,14 @@ extern "C" {
 #define FSHIFT (4)
 #define FVIRTKEY       (1)
 
+/* MENUINFO structure */
+#define MIM_MAXHEIGHT          0x00000001
+#define MIM_BACKGROUND         0x00000002
+#define MIM_HELPID             0x00000004
+#define MIM_MENUDATA           0x00000008
+#define MIM_STYLE              0x00000010
+#define MIM_APPLYTOSUBMENUS    0x80000000
+
 /* MENUITEMINFO structure */
 #define MIIM_CHECKMARKS        (8)
 #define MIIM_DATA      (32)
@@ -4238,6 +4375,9 @@ extern "C" {
 #define MIIM_STATE     (1)
 #define MIIM_SUBMENU   (4)
 #define MIIM_TYPE      (16)
+#define MIIM_STRING    (0x40)
+#define MIIM_BITMAP    (0x80)
+#define MIIM_FTYPE     (0x100)
 #define MFT_BITMAP     (0x4L)
 #define MFT_MENUBARBREAK       (0x20L)
 #define MFT_MENUBREAK  (0x40L)
@@ -4491,6 +4631,22 @@ extern "C" {
 /* GetFileCompressedSize */
 #define INVALID_FILE_SIZE ((DWORD)-1)
 
+/* system ids */
+#define OBJID_WINDOW        ((LONG)0x00000000)
+#define OBJID_SYSMENU       ((LONG)0xFFFFFFFF)
+#define OBJID_TITLEBAR      ((LONG)0xFFFFFFFE)
+#define OBJID_MENU          ((LONG)0xFFFFFFFD)
+#define OBJID_CLIENT        ((LONG)0xFFFFFFFC)
+#define OBJID_VSCROLL       ((LONG)0xFFFFFFFB)
+#define OBJID_HSCROLL       ((LONG)0xFFFFFFFA)
+#define OBJID_SIZEGRIP      ((LONG)0xFFFFFFF9)
+#define OBJID_CARET         ((LONG)0xFFFFFFF8)
+#define OBJID_CURSOR        ((LONG)0xFFFFFFF7)
+#define OBJID_ALERT         ((LONG)0xFFFFFFF6)
+#define OBJID_SOUND         ((LONG)0xFFFFFFF5)
+#define OBJID_QUERYCLASSNAMEIDX ((LONG)0xFFFFFFF4)
+#define OBJID_NATIVEOM      ((LONG)0xFFFFFFF0)
+
 /* --------------------- old stuff, need to organize! --------------- */
 
 /* BEGINNING of windowsx.h stuff from old headers: */
@@ -4744,19 +4900,19 @@ typedef enum _SC_ENUM_TYPE {
 #endif /* !__USE_W32API */
 
 typedef enum _SystemState {
-  STATE_SYSTEM_UNAVAILABLE        = 0x00000001, // Disabled
+  STATE_SYSTEM_UNAVAILABLE        = 0x00000001, /* Disabled */
   STATE_SYSTEM_SELECTED           = 0x00000002,
   STATE_SYSTEM_FOCUSED            = 0x00000004,
   STATE_SYSTEM_PRESSED            = 0x00000008,
   STATE_SYSTEM_CHECKED            = 0x00000010,
-  STATE_SYSTEM_MIXED              = 0x00000020, // 3-state checkbox or toolbar button
+  STATE_SYSTEM_MIXED              = 0x00000020, /* 3-state checkbox or toolbar button */
   STATE_SYSTEM_READONLY           = 0x00000040,
   STATE_SYSTEM_HOTTRACKED         = 0x00000080,
   STATE_SYSTEM_DEFAULT            = 0x00000100,
   STATE_SYSTEM_EXPANDED           = 0x00000200,
   STATE_SYSTEM_COLLAPSED          = 0x00000400,
   STATE_SYSTEM_BUSY               = 0x00000800,
-  STATE_SYSTEM_FLOATING           = 0x00001000, // Children "owned" not "contained" by parent
+  STATE_SYSTEM_FLOATING           = 0x00001000, /* Children "owned" not "contained" by parent */
   STATE_SYSTEM_MARQUEED           = 0x00002000,
   STATE_SYSTEM_ANIMATED           = 0x00004000,
   STATE_SYSTEM_INVISIBLE          = 0x00008000,
@@ -4768,11 +4924,11 @@ typedef enum _SystemState {
   STATE_SYSTEM_SELECTABLE         = 0x00200000,
   STATE_SYSTEM_LINKED             = 0x00400000,
   STATE_SYSTEM_TRAVERSED          = 0x00800000,
-  STATE_SYSTEM_MULTISELECTABLE    = 0x01000000,  // Supports multiple selection
-  STATE_SYSTEM_EXTSELECTABLE      = 0x02000000,  // Supports extended selection
-  STATE_SYSTEM_ALERT_LOW          = 0x04000000,  // This information is of low priority
-  STATE_SYSTEM_ALERT_MEDIUM       = 0x08000000,  // This information is of medium priority
-  STATE_SYSTEM_ALERT_HIGH         = 0x10000000,  // This information is of high priority
+  STATE_SYSTEM_MULTISELECTABLE    = 0x01000000,  /* Supports multiple selection */
+  STATE_SYSTEM_EXTSELECTABLE      = 0x02000000,  /* Supports extended selection */
+  STATE_SYSTEM_ALERT_LOW          = 0x04000000,  /* This information is of low priority */
+  STATE_SYSTEM_ALERT_MEDIUM       = 0x08000000,  /* This information is of medium priority */
+  STATE_SYSTEM_ALERT_HIGH         = 0x10000000,  /* This information is of high priority */
   STATE_SYSTEM_VALID              = 0x1FFFFFFF
 } SystemState;