ReactOS Fundraising Campaign 2012
 
€ 4,410 / € 30,000

Information | Donate

Home | Info | Community | Development | myReactOS | Contact Us

  1. Home
  2. Community
  3. Development
  4. myReactOS
  5. Fundraiser 2012

  1. Main Page
  2. Alphabetical List
  3. Data Structures
  4. Directories
  5. File List
  6. Data Fields
  7. Globals
  8. Related Pages

ReactOS Development > Doxygen

menu.h
Go to the documentation of this file.
00001 #pragma once
00002 
00003 #define IS_ATOM(x) \
00004   (((ULONG_PTR)(x) > 0x0) && ((ULONG_PTR)(x) < 0x10000))
00005 
00006 #define MENU_ITEM_TYPE(flags) \
00007   ((flags) & (MF_STRING | MF_BITMAP | MF_OWNERDRAW | MF_SEPARATOR))
00008 
00009 #ifndef MF_END
00010 #define MF_END             (0x0080)
00011 #endif
00012 
00013 typedef struct _MENU_ITEM
00014 {
00015   struct _MENU_ITEM *Next;
00016   UINT fType;
00017   UINT fState;
00018   UINT wID;
00019   HMENU hSubMenu;
00020   HBITMAP hbmpChecked;
00021   HBITMAP hbmpUnchecked;
00022   ULONG_PTR dwItemData;
00023   UNICODE_STRING Text;
00024   HBITMAP hbmpItem;
00025   RECTL Rect;
00026   UINT dxTab;
00027 } MENU_ITEM, *PMENU_ITEM;
00028 
00029 typedef struct _MENU_OBJECT
00030 {
00031   PROCDESKHEAD head;
00032   PEPROCESS Process;
00033   LIST_ENTRY ListEntry;
00034   PMENU_ITEM MenuItemList;
00035   ROSMENUINFO MenuInfo;
00036   BOOL RtoL;
00037 } MENU_OBJECT, *PMENU_OBJECT;
00038 
00039 typedef struct _SETMENUITEMRECT
00040 {
00041   UINT uItem;
00042   BOOL fByPosition;
00043   RECTL rcRect;
00044 } SETMENUITEMRECT, *PSETMENUITEMRECT;
00045 
00046 PMENU_OBJECT FASTCALL
00047 IntGetMenuObject(HMENU hMenu);
00048 
00049 #define IntReleaseMenuObject(MenuObj) \
00050   UserDereferenceObject(MenuObj)
00051 
00052 BOOL FASTCALL
00053 IntDestroyMenuObject(PMENU_OBJECT MenuObject, BOOL bRecurse, BOOL RemoveFromProcess);
00054 
00055 PMENU_OBJECT FASTCALL
00056 IntCloneMenu(PMENU_OBJECT Source);
00057 
00058 int FASTCALL
00059 IntGetMenuItemByFlag(PMENU_OBJECT MenuObject, UINT uSearchBy, UINT fFlag,
00060                      PMENU_OBJECT *SubMenu, PMENU_ITEM *MenuItem,
00061                      PMENU_ITEM *PrevMenuItem);
00062 
00063 BOOL FASTCALL
00064 IntCleanupMenus(struct _EPROCESS *Process, PPROCESSINFO Win32Process);
00065 
00066 BOOL FASTCALL
00067 IntInsertMenuItem(PMENU_OBJECT MenuObject, UINT uItem, BOOL fByPosition,
00068                   PROSMENUITEMINFO ItemInfo);
00069 
00070 PMENU_OBJECT FASTCALL
00071 IntGetSystemMenu(PWND Window, BOOL bRevert, BOOL RetMenu);
00072 
00073 UINT FASTCALL IntFindSubMenu(HMENU *hMenu, HMENU hSubTarget );
00074 UINT FASTCALL IntGetMenuState( HMENU hMenu, UINT uId, UINT uFlags);
00075 

Generated on Sat May 26 2012 04:37:23 for ReactOS by doxygen 1.7.6.1

ReactOS is a registered trademark or a trademark of ReactOS Foundation in the United States and other countries.