9 #define MENU_MAGIC 0x554d /* 'MU' */
11 extern BOOL
MENU_Init(void);
12 extern WORD
MENU_GetMenuBarHeight( HWND hwnd
, WORD menubarWidth
,
13 int orgX
, int orgY
); /* menu.c */
14 extern void MENU_TrackMouseMenuBar( HWND hwnd
, POINT pt
); /* menu.c */
15 extern void MENU_TrackKbdMenuBar( HWND hwnd
, WORD wParam
); /* menu.c */
16 extern WORD
MENU_DrawMenuBar( HDC hDC
, LPRECT lprect
,
17 HWND hwnd
, BOOL suppress_draw
); /* menu.c */
18 extern HMENU
CopySysMenu(); /* menu.c */
21 typedef struct tagMENUITEM
23 WORD item_flags
; /* Item flags */
24 WORD item_id
; /* Item or popup id */
25 RECT rect
; /* Item area (relative to menu window) */
26 WORD xTab
; /* X position of text after Tab */
27 HBITMAP hCheckBit
; /* Bitmap for checked item */
28 HBITMAP hUnCheckBit
; /* Bitmap for unchecked item */
29 HANDLE hText
; /* Handle to item string or bitmap */
31 } MENUITEM
, *LPMENUITEM
;
34 typedef struct tagPOPUPMENU
36 HMENU hNext
; /* Next menu (compatibility only, always 0) */
37 WORD wFlags
; /* Menu flags (MF_POPUP, MF_SYSMENU) */
38 WORD wMagic
; /* Magic number */
39 HANDLE hTaskQ
; /* Task queue for this menu */
40 WORD Width
; /* Width of the whole menu */
41 WORD Height
; /* Height of the whole menu */
42 WORD nItems
; /* Number of items in the menu */
43 HWND hWnd
; /* Window containing the menu */
44 HANDLE hItems
; /* Handle to the items array */
45 WORD FocusedItem
; /* Currently focused item */
46 } POPUPMENU
, *LPPOPUPMENU
;
50 WORD version
; /* Should be zero */
51 WORD reserved
; /* Must be zero */
56 WORD item_flags
; /* See windows.h */
57 char item_text
[1]; /* Text for menu item */
62 WORD item_flags
; /* See windows.h */
63 WORD item_id
; /* Control Id for menu item */
64 char item_text
[1]; /* Text for menu item */