diff src/menu.h @ 105923:1011707400d3

* menu.c (Fx_popup_menu): Consolidate versions from xmenu.c, w32menu.c, and nsmenu.m. Simplify the obsolete case where position is nil. (cleanup_popup_menu): New function, moved from nsmenu.m. (struct skp): Remove slot `notreal'. (single_keymap_panes, keymap_panes): Remove arg `notreal' and adjust callers. (single_menu_item): Adjust call to parse_menu_item. (syms_of_menu): Defsubr x-popup-menu. * menu.h (Vmenu_updating_frame): Consolidate declarations from *menu.c. (keymap_panes): Don't export any more. (mouse_position_for_popup, w32_menu_show, ns_menu_show, xmenu_show): Declare. * keyboard.c (parse_menu_item): Remove arg `notreal'. (menu_bar_item, read_char_minibuf_menu_prompt): Adjust callers. * keyboard.h (parse_menu_item): Update declaration. * xmenu.c (Fx_popup_menu): Remove. (syms_of_xmenu): Don't defsubr x-popup-menu. * w32menu.c (Fx_popup_menu): Remove. (syms_of_w32menu): Don't defsubr x-popup-menu. * nsmenu.m (cleanup_popup_menu): Remove. (ns_menu_show): Rename from ns_popup_menu and remove all the code moved to menu.c's Fx_popup_menu. (Fx_popup_menu): Remove. (syms_of_nsmenu): Don't defsubr x-popup-menu, and don't initialize menu_items (it's done in menu.c already).
author Stefan Monnier <monnier@iro.umontreal.ca>
date Mon, 09 Nov 2009 06:21:03 +0000
parents e038c1a8307c
children 1d1d5d9bd884
line wrap: on
line diff
--- a/src/menu.h	Sun Nov 08 23:19:11 2009 +0000
+++ b/src/menu.h	Mon Nov 09 06:21:03 2009 +0000
@@ -19,12 +19,13 @@
 #ifndef MENU_H
 #define MENU_H
 
+extern Lisp_Object Vmenu_updating_frame;
+
 extern void init_menu_items P_ ((void));
 extern void finish_menu_items P_ ((void));
 extern void discard_menu_items P_ ((void));
 extern void save_menu_items P_ ((void));
 extern int parse_single_submenu P_ ((Lisp_Object, Lisp_Object, Lisp_Object));
-extern void keymap_panes P_ ((Lisp_Object *, int, int));
 extern void list_of_panes P_ ((Lisp_Object));
 #if defined (USE_X_TOOLKIT) || defined (USE_GTK) || defined (HAVE_NTGUI)
 extern void free_menubar_widget_value_tree P_ ((widget_value *));
@@ -33,6 +34,16 @@
 					      Lisp_Object, void *));
 #endif
 
+#ifdef HAVE_X_WINDOWS
+extern void mouse_position_for_popup (FRAME_PTR f, int *x, int *y);
+#endif
+
+extern Lisp_Object w32_menu_show (FRAME_PTR, int, int, int, int,
+				  Lisp_Object, char **);
+extern Lisp_Object ns_menu_show (FRAME_PTR, int, int, int, int,
+				 Lisp_Object, char **);
+extern Lisp_Object xmenu_show (FRAME_PTR, int, int, int, int,
+			       Lisp_Object, char **, EMACS_UINT);
 #endif /* MENU_H */
 
 /* arch-tag: c32b2778-724d-4e85-81d7-45f98530a988