4 (((ULONG_PTR)(x) > 0x0) && ((ULONG_PTR)(x) < 0x10000))
6 #define MENU_ITEM_TYPE(flags) \
7 ((flags) & (MF_STRING | MF_BITMAP | MF_OWNERDRAW | MF_SEPARATOR))
10 #define MF_END (0x0080)
13 typedef struct _SETMENUITEMRECT
18 } SETMENUITEMRECT
, *PSETMENUITEMRECT
;
21 IntGetMenuObject(HMENU hMenu
);
23 #define IntReleaseMenuObject(MenuObj) \
24 UserDereferenceObject(MenuObj)
27 UserDestroyMenuObject(PVOID Object
);
30 IntDestroyMenuObject(PMENU MenuObject
, BOOL bRecurse
);
33 IntCloneMenu(PMENU Source
);
36 IntGetMenuItemByFlag(PMENU MenuObject
, UINT uSearchBy
, UINT fFlag
,
37 PMENU
*SubMenu
, PITEM
*MenuItem
,
41 IntCleanupMenus(struct _EPROCESS
*Process
, PPROCESSINFO Win32Process
);
44 IntInsertMenuItem(_In_ PMENU MenuObject
, UINT uItem
, BOOL fByPosition
, PROSMENUITEMINFO ItemInfo
, PUNICODE_STRING lpstr
);
47 IntGetSystemMenu(PWND Window
, BOOL bRevert
);
49 UINT FASTCALL
IntFindSubMenu(HMENU
*hMenu
, HMENU hSubTarget
);
50 UINT FASTCALL
IntGetMenuState( HMENU hMenu
, UINT uId
, UINT uFlags
);
51 BOOL FASTCALL
IntRemoveMenuItem(PMENU Menu
, UINT uPosition
, UINT uFlags
, BOOL bRecurse
);
52 PITEM FASTCALL
MENU_FindItem( PMENU
*pmenu
, UINT
*nPos
, UINT wFlags
);
53 BOOL FASTCALL
IntMenuItemInfo(PMENU Menu
, UINT Item
, BOOL ByPosition
, PROSMENUITEMINFO UnsafeItemInfo
, BOOL SetOrGet
, PUNICODE_STRING lpstr
);