Commit | Line | Data |
---|---|---|
e7c9048f | 1 | /* Functions to manipulate menus. |
acaf905b | 2 | Copyright (C) 2008-2012 Free Software Foundation, Inc. |
e7c9048f AS |
3 | |
4 | This file is part of GNU Emacs. | |
5 | ||
6 | GNU Emacs is free software: you can redistribute it and/or modify | |
7 | it under the terms of the GNU General Public License as published by | |
8 | the Free Software Foundation, either version 3 of the License, or | |
9 | (at your option) any later version. | |
10 | ||
11 | GNU Emacs is distributed in the hope that it will be useful, | |
12 | but WITHOUT ANY WARRANTY; without even the implied warranty of | |
13 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
14 | GNU General Public License for more details. | |
15 | ||
16 | You should have received a copy of the GNU General Public License | |
17 | along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ | |
18 | ||
19 | #ifndef MENU_H | |
20 | #define MENU_H | |
21 | ||
08dc5ae6 PE |
22 | #include "systime.h" /* for Time */ |
23 | ||
3d608a86 J |
24 | extern void x_set_menu_bar_lines (struct frame *f, |
25 | Lisp_Object value, | |
26 | Lisp_Object oldval); | |
27 | ||
383e0970 | 28 | extern void init_menu_items (void); |
5994c183 | 29 | extern void finish_menu_items (void) ATTRIBUTE_CONST; |
383e0970 J |
30 | extern void discard_menu_items (void); |
31 | extern void save_menu_items (void); | |
32 | extern int parse_single_submenu (Lisp_Object, Lisp_Object, Lisp_Object); | |
33 | extern void list_of_panes (Lisp_Object); | |
3d608a86 J |
34 | #if defined (USE_X_TOOLKIT) || defined (USE_GTK) || defined (HAVE_NTGUI) \ |
35 | || defined (HAVE_NS) | |
383e0970 J |
36 | extern void free_menubar_widget_value_tree (widget_value *); |
37 | extern void update_submenu_strings (widget_value *); | |
38 | extern void find_and_call_menu_selection (FRAME_PTR, int, | |
39 | Lisp_Object, void *); | |
a11889ab JB |
40 | extern widget_value *xmalloc_widget_value (void); |
41 | extern widget_value *digest_single_submenu (int, int, int); | |
e7c9048f AS |
42 | #endif |
43 | ||
ef7417fd SM |
44 | #ifdef HAVE_X_WINDOWS |
45 | extern void mouse_position_for_popup (FRAME_PTR f, int *x, int *y); | |
46 | #endif | |
47 | ||
48 | extern Lisp_Object w32_menu_show (FRAME_PTR, int, int, int, int, | |
42ca4633 | 49 | Lisp_Object, const char **); |
ef7417fd | 50 | extern Lisp_Object ns_menu_show (FRAME_PTR, int, int, int, int, |
42ca4633 | 51 | Lisp_Object, const char **); |
ef7417fd | 52 | extern Lisp_Object xmenu_show (FRAME_PTR, int, int, int, int, |
08dc5ae6 | 53 | Lisp_Object, const char **, Time); |
e7c9048f | 54 | #endif /* MENU_H */ |