annotate src/menu.h @ 109748:e2f8226efb99

Fix -Wwrite_strings in general and for Gtk+ specific code. * callproc.c (synch_process_death): Make const. (Fcall_process): Make signame const. * emacs.c (main): Pass char[] to putenv instead of literal. * floatfns.c (matherr): Use a const char* variable for x->name. * font.c (font_open_by_name): Make name const. * font.h (font_open_by_name): Make name const. * gtkutil.c (get_utf8_string): Always return an allocated string. Parameter is const. (create_dialog, xg_create_one_menuitem, create_menus) (xg_item_label_same_p, xg_update_menu_item): Free result from get_utf8_string. (xg_separator_p, xg_item_label_same_p): label is const. * gtkutil.h: Replace widget_value with struct _widget_value. (enum button_type, struct _widget_value): Remove and use the one from keyboard.h. * keyboard.h (_widget_value): Add defined USE_GTK. Replace Boolean with unsigned char and XtPointer with void *. * menu.c (Fx_popup_menu): error_name is const. * menu.h (w32_menu_show, ns_menu_show, xmenu_show): error parameter is const char **. * w32menu.c (w32_menu_show): * nsmenu.m (ns_menu_show): error parameter is const char **. * process.h (synch_process_death): Is const char*. * xmenu.c (Fx_popup_dialog): error_name is const char*. (xmenu_show): error parameter is const char **. pane_string is const char *. (button_names): Is const char *. (xdialog_show): error_name and pane_string is const. * xrdb.c (get_system_app): Make path const and use char *p for non-const char. * xselect.c (Fx_get_atom_name): Use char empty[] instead of literal "". * xsmfns.c (NOSPLASH_OPT): Change to char[]. (smc_save_yourself_CB): Do xstrdup on all ->type and ->name for props. Free them at the end. * xterm.c (emacs_class): New char[] for EMACS_CLASS. (xim_open_dpy, xim_initialize, xim_close_dpy): Use emacs_class. (x_term_init): Use char[] display_opt and name_opt instead of string literal. file is const char*.
author Jan D <jan.h.d@swipnet.se>
date Wed, 11 Aug 2010 14:34:46 +0200
parents 9cfca8c9fb07
children 417b1e4d63cd
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
96608
127e54f8220e * menu.h: New file.
Andreas Schwab <schwab@suse.de>
parents:
diff changeset
1 /* Functions to manipulate menus.
106815
1d1d5d9bd884 Add 2010 to copyright years.
Glenn Morris <rgm@gnu.org>
parents: 105923
diff changeset
2 Copyright (C) 2008, 2009, 2010 Free Software Foundation, Inc.
96608
127e54f8220e * menu.h: New file.
Andreas Schwab <schwab@suse.de>
parents:
diff changeset
3
127e54f8220e * menu.h: New file.
Andreas Schwab <schwab@suse.de>
parents:
diff changeset
4 This file is part of GNU Emacs.
127e54f8220e * menu.h: New file.
Andreas Schwab <schwab@suse.de>
parents:
diff changeset
5
127e54f8220e * menu.h: New file.
Andreas Schwab <schwab@suse.de>
parents:
diff changeset
6 GNU Emacs is free software: you can redistribute it and/or modify
127e54f8220e * menu.h: New file.
Andreas Schwab <schwab@suse.de>
parents:
diff changeset
7 it under the terms of the GNU General Public License as published by
127e54f8220e * menu.h: New file.
Andreas Schwab <schwab@suse.de>
parents:
diff changeset
8 the Free Software Foundation, either version 3 of the License, or
127e54f8220e * menu.h: New file.
Andreas Schwab <schwab@suse.de>
parents:
diff changeset
9 (at your option) any later version.
127e54f8220e * menu.h: New file.
Andreas Schwab <schwab@suse.de>
parents:
diff changeset
10
127e54f8220e * menu.h: New file.
Andreas Schwab <schwab@suse.de>
parents:
diff changeset
11 GNU Emacs is distributed in the hope that it will be useful,
127e54f8220e * menu.h: New file.
Andreas Schwab <schwab@suse.de>
parents:
diff changeset
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
127e54f8220e * menu.h: New file.
Andreas Schwab <schwab@suse.de>
parents:
diff changeset
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
127e54f8220e * menu.h: New file.
Andreas Schwab <schwab@suse.de>
parents:
diff changeset
14 GNU General Public License for more details.
127e54f8220e * menu.h: New file.
Andreas Schwab <schwab@suse.de>
parents:
diff changeset
15
127e54f8220e * menu.h: New file.
Andreas Schwab <schwab@suse.de>
parents:
diff changeset
16 You should have received a copy of the GNU General Public License
127e54f8220e * menu.h: New file.
Andreas Schwab <schwab@suse.de>
parents:
diff changeset
17 along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
127e54f8220e * menu.h: New file.
Andreas Schwab <schwab@suse.de>
parents:
diff changeset
18
127e54f8220e * menu.h: New file.
Andreas Schwab <schwab@suse.de>
parents:
diff changeset
19 #ifndef MENU_H
127e54f8220e * menu.h: New file.
Andreas Schwab <schwab@suse.de>
parents:
diff changeset
20 #define MENU_H
127e54f8220e * menu.h: New file.
Andreas Schwab <schwab@suse.de>
parents:
diff changeset
21
105923
1011707400d3 * menu.c (Fx_popup_menu): Consolidate versions from xmenu.c,
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 100951
diff changeset
22 extern Lisp_Object Vmenu_updating_frame;
1011707400d3 * menu.c (Fx_popup_menu): Consolidate versions from xmenu.c,
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 100951
diff changeset
23
109653
9cfca8c9fb07 Fix missing prototypes for HAVE_NS (caused crash) and vrious warnings.
Jan D <jan.h.d@swipnet.se>
parents: 109639
diff changeset
24 extern void x_set_menu_bar_lines (struct frame *f,
9cfca8c9fb07 Fix missing prototypes for HAVE_NS (caused crash) and vrious warnings.
Jan D <jan.h.d@swipnet.se>
parents: 109639
diff changeset
25 Lisp_Object value,
9cfca8c9fb07 Fix missing prototypes for HAVE_NS (caused crash) and vrious warnings.
Jan D <jan.h.d@swipnet.se>
parents: 109639
diff changeset
26 Lisp_Object oldval);
9cfca8c9fb07 Fix missing prototypes for HAVE_NS (caused crash) and vrious warnings.
Jan D <jan.h.d@swipnet.se>
parents: 109639
diff changeset
27
109099
e16f43875a48 Remove P_ and __P macros.
Jan D <jan.h.d@swipnet.se>
parents: 106815
diff changeset
28 extern void init_menu_items (void);
e16f43875a48 Remove P_ and __P macros.
Jan D <jan.h.d@swipnet.se>
parents: 106815
diff changeset
29 extern void finish_menu_items (void);
e16f43875a48 Remove P_ and __P macros.
Jan D <jan.h.d@swipnet.se>
parents: 106815
diff changeset
30 extern void discard_menu_items (void);
e16f43875a48 Remove P_ and __P macros.
Jan D <jan.h.d@swipnet.se>
parents: 106815
diff changeset
31 extern void save_menu_items (void);
e16f43875a48 Remove P_ and __P macros.
Jan D <jan.h.d@swipnet.se>
parents: 106815
diff changeset
32 extern int parse_single_submenu (Lisp_Object, Lisp_Object, Lisp_Object);
e16f43875a48 Remove P_ and __P macros.
Jan D <jan.h.d@swipnet.se>
parents: 106815
diff changeset
33 extern void list_of_panes (Lisp_Object);
109653
9cfca8c9fb07 Fix missing prototypes for HAVE_NS (caused crash) and vrious warnings.
Jan D <jan.h.d@swipnet.se>
parents: 109639
diff changeset
34 #if defined (USE_X_TOOLKIT) || defined (USE_GTK) || defined (HAVE_NTGUI) \
9cfca8c9fb07 Fix missing prototypes for HAVE_NS (caused crash) and vrious warnings.
Jan D <jan.h.d@swipnet.se>
parents: 109639
diff changeset
35 || defined (HAVE_NS)
109099
e16f43875a48 Remove P_ and __P macros.
Jan D <jan.h.d@swipnet.se>
parents: 106815
diff changeset
36 extern void free_menubar_widget_value_tree (widget_value *);
e16f43875a48 Remove P_ and __P macros.
Jan D <jan.h.d@swipnet.se>
parents: 106815
diff changeset
37 extern void update_submenu_strings (widget_value *);
e16f43875a48 Remove P_ and __P macros.
Jan D <jan.h.d@swipnet.se>
parents: 106815
diff changeset
38 extern void find_and_call_menu_selection (FRAME_PTR, int,
e16f43875a48 Remove P_ and __P macros.
Jan D <jan.h.d@swipnet.se>
parents: 106815
diff changeset
39 Lisp_Object, void *);
109639
8ee3605b9d8a Fix changes in revnos 100982..100984 for Windows build.
Juanma Barranquero <lekktu@gmail.com>
parents: 109099
diff changeset
40 extern widget_value *xmalloc_widget_value (void);
8ee3605b9d8a Fix changes in revnos 100982..100984 for Windows build.
Juanma Barranquero <lekktu@gmail.com>
parents: 109099
diff changeset
41 extern widget_value *digest_single_submenu (int, int, int);
96608
127e54f8220e * menu.h: New file.
Andreas Schwab <schwab@suse.de>
parents:
diff changeset
42 #endif
127e54f8220e * menu.h: New file.
Andreas Schwab <schwab@suse.de>
parents:
diff changeset
43
105923
1011707400d3 * menu.c (Fx_popup_menu): Consolidate versions from xmenu.c,
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 100951
diff changeset
44 #ifdef HAVE_X_WINDOWS
1011707400d3 * menu.c (Fx_popup_menu): Consolidate versions from xmenu.c,
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 100951
diff changeset
45 extern void mouse_position_for_popup (FRAME_PTR f, int *x, int *y);
1011707400d3 * menu.c (Fx_popup_menu): Consolidate versions from xmenu.c,
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 100951
diff changeset
46 #endif
1011707400d3 * menu.c (Fx_popup_menu): Consolidate versions from xmenu.c,
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 100951
diff changeset
47
1011707400d3 * menu.c (Fx_popup_menu): Consolidate versions from xmenu.c,
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 100951
diff changeset
48 extern Lisp_Object w32_menu_show (FRAME_PTR, int, int, int, int,
109748
e2f8226efb99 Fix -Wwrite_strings in general and for Gtk+ specific code.
Jan D <jan.h.d@swipnet.se>
parents: 109653
diff changeset
49 Lisp_Object, const char **);
105923
1011707400d3 * menu.c (Fx_popup_menu): Consolidate versions from xmenu.c,
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 100951
diff changeset
50 extern Lisp_Object ns_menu_show (FRAME_PTR, int, int, int, int,
109748
e2f8226efb99 Fix -Wwrite_strings in general and for Gtk+ specific code.
Jan D <jan.h.d@swipnet.se>
parents: 109653
diff changeset
51 Lisp_Object, const char **);
105923
1011707400d3 * menu.c (Fx_popup_menu): Consolidate versions from xmenu.c,
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 100951
diff changeset
52 extern Lisp_Object xmenu_show (FRAME_PTR, int, int, int, int,
109748
e2f8226efb99 Fix -Wwrite_strings in general and for Gtk+ specific code.
Jan D <jan.h.d@swipnet.se>
parents: 109653
diff changeset
53 Lisp_Object, const char **, EMACS_UINT);
96608
127e54f8220e * menu.h: New file.
Andreas Schwab <schwab@suse.de>
parents:
diff changeset
54 #endif /* MENU_H */
96621
bf6f87d07e3b Add arch tagline
Miles Bader <miles@gnu.org>
parents: 96608
diff changeset
55
bf6f87d07e3b Add arch tagline
Miles Bader <miles@gnu.org>
parents: 96608
diff changeset
56 /* arch-tag: c32b2778-724d-4e85-81d7-45f98530a988
bf6f87d07e3b Add arch tagline
Miles Bader <miles@gnu.org>
parents: 96608
diff changeset
57 (do not change this comment) */