Release 940301
[wine/gsoc-2012-control.git] / include / menu.h
blob315ef2ee5e4931fe3a17402250186dfc60b198af
1 /* $Id$
3 * Menu definitions
4 */
6 #ifndef MENU_H
7 #define MENU_H
11 typedef struct tagMENUITEM
13 struct tagMENUITEM *next;
14 struct tagMENUITEM *prev;
15 struct tagMENUITEM *child;
16 struct tagMENUITEM *parent;
17 WORD item_flags;
18 WORD item_id;
19 WORD sel_key;
20 char *shortcut;
21 char *item_text;
22 char menu_name[10];
23 RECT rect;
24 HBITMAP hCheckBit;
25 HBITMAP hUnCheckBit;
26 } MENUITEM, *LPMENUITEM;
29 typedef struct tagPOPUPMENU
31 HWND hWnd; /* PopupMenu window handle */
32 HWND hWndParent; /* Parent opupMenu window handle */
33 HWND ownerWnd; /* Owner window */
34 WORD nItems; /* Number of items on menu */
35 MENUITEM *firstItem;
36 WORD FocusedItem;
37 WORD MouseFlags;
38 WORD BarFlags;
39 BOOL SysFlag;
40 WORD Width;
41 WORD Height;
42 WORD CheckWidth;
43 WORD PopWidth;
44 RECT rect;
45 } POPUPMENU, *LPPOPUPMENU;
47 typedef struct
49 WORD version; /* Should be zero */
50 WORD reserved; /* Must be zero */
51 } MENU_HEADER;
53 typedef struct
55 WORD item_flags; /* See windows.h */
56 char item_text[1]; /* Text for menu item */
57 } MENU_POPUPITEM;
59 typedef struct
61 WORD item_flags; /* See windows.h */
62 WORD item_id; /* Control Id for menu item */
63 char item_text[1]; /* Text for menu item */
64 } MENUITEMTEMPLATE;
66 void StdDrawMenuBar(HDC hDC, LPRECT lprect, LPPOPUPMENU lppop);
67 void MenuButtonDown(HWND hWnd, LPPOPUPMENU lppop, int x, int y);
68 void MenuButtonUp(HWND hWnd, LPPOPUPMENU lppop, int x, int y);
69 void MenuMouseMove(HWND hWnd, LPPOPUPMENU lppop, WORD wParam, int x, int y);
70 extern void NC_TrackSysMenu(HWND hwnd);
72 #endif /* MENU_H */