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 IntDestroyMenuObject(PMENU MenuObject
, BOOL bRecurse
, BOOL RemoveFromProcess
);
30 IntCloneMenu(PMENU Source
);
33 IntGetMenuItemByFlag(PMENU MenuObject
, UINT uSearchBy
, UINT fFlag
,
34 PMENU
*SubMenu
, PITEM
*MenuItem
,
38 IntCleanupMenus(struct _EPROCESS
*Process
, PPROCESSINFO Win32Process
);
41 IntInsertMenuItem(_In_ PMENU MenuObject
, UINT uItem
, BOOL fByPosition
,
42 PROSMENUITEMINFO ItemInfo
);
45 IntGetSystemMenu(PWND Window
, BOOL bRevert
, BOOL RetMenu
);
47 UINT FASTCALL
IntFindSubMenu(HMENU
*hMenu
, HMENU hSubTarget
);
48 UINT FASTCALL
IntGetMenuState( HMENU hMenu
, UINT uId
, UINT uFlags
);
49 BOOL FASTCALL
IntRemoveMenuItem(PMENU Menu
, UINT uPosition
, UINT uFlags
, BOOL bRecurse
);
50 PITEM
MENU_FindItem( PMENU
*pmenu
, UINT
*nPos
, UINT wFlags
);