diff --git a/reactos/include/psdk/winuser.h b/reactos/include/psdk/winuser.h index 8700be78f5d..57c1ac13aac 100644 --- a/reactos/include/psdk/winuser.h +++ b/reactos/include/psdk/winuser.h @@ -2446,8 +2446,18 @@ extern "C" { #define ODS_DISABLED 4 #define ODS_CHECKED 8 #define ODS_FOCUS 16 +#if(WINVER >= 0x0400) #define ODS_DEFAULT 32 #define ODS_COMBOBOXEDIT 4096 +#endif +#if(WINVER >= 0x0500) +#define ODS_HOTLIGHT 0x0040 +#define ODS_INACTIVE 0x0080 +#if(_WIN32_WINNT >= 0x0500) +#define ODS_NOACCEL 0x0100 +#define ODS_NOFOCUSRECT 0x0200 +#endif +#endif #define IDHOT_SNAPWINDOW (-1) #define IDHOT_SNAPDESKTOP (-2) #define DBWF_LPARAMPOINTER 0x8000 diff --git a/reactos/include/reactos/win32k/ntuser.h b/reactos/include/reactos/win32k/ntuser.h index a9feb1fb69f..8e59d26b4cc 100644 --- a/reactos/include/reactos/win32k/ntuser.h +++ b/reactos/include/reactos/win32k/ntuser.h @@ -221,12 +221,15 @@ C_ASSERT(sizeof(CLIENTINFO) == FIELD_OFFSET(TEB, glDispatchTable) - FIELD_OFFSET #define GetWin32ClientInfo() ((PCLIENTINFO)(NtCurrentTeb()->Win32ClientInfo)) +/* Menu Item fType. */ +#define MFT_RTOL 0x6000 + typedef struct tagITEM { UINT fType; UINT fState; UINT wID; - struct tagMENU* spSubMenu; /* Pop-up menu. */ + struct tagMENU* spSubMenu; /* Pop-up menu. */ HANDLE hbmpChecked; HANDLE hbmpUnchecked; USHORT* lpstr; /* Item text pointer. */ @@ -250,12 +253,21 @@ typedef struct tagMENULIST struct tagMENU* pMenu; } MENULIST, *PMENULIST; +/* Menu fFlags, upper byte is MNS_X style flags. */ +#define MNF_POPUP 0x0001 +#define MNF_UNDERLINE 0x0004 +#define MNF_INACTIVE 0x0010 +#define MNF_RTOL 0x0020 +#define MNF_DESKTOPMN 0x0040 +#define MNF_SYSDESKMN 0x0080 +#define MNF_SYSSUBMENU 0x0100 + typedef struct tagMENU { PROCDESKHEAD head; - ULONG fFlags; /* Menu flags (MF_POPUP, MF_SYSMENU) */ + ULONG fFlags; /* [Style flags | Menu flags] */ INT iItem; /* nPos of selected item, if -1 not selected. */ - UINT cAlloced; /* Number of allocated items. */ + UINT cAlloced; /* Number of allocated items. Inc's of 8 */ UINT cItems; /* Number of items in the menu */ ULONG cxMenu; /* Width of the whole menu */ ULONG cyMenu; /* Height of the whole menu */