/* Definitions and headers for GTK widgets.
-Copyright (C) 2003-2012 Free Software Foundation, Inc.
+Copyright (C) 2003-2013 Free Software Foundation, Inc.
This file is part of GNU Emacs.
#include <gtk/gtk.h>
#include "frame.h"
+#include "xterm.h"
/* Minimum and maximum values used for GTK scroll bars */
{
xg_list_node ptrs;
- FRAME_PTR f;
+ struct frame *f;
Lisp_Object menu_bar_vector;
int menu_bar_items_used;
GCallback highlight_cb;
} xg_menu_item_cb_data;
-
-#ifdef HAVE_GTK_FILE_SELECTION_NEW
-extern int use_old_gtk_file_dialog;
-#endif
-struct _widget_value;
-
extern struct _widget_value *malloc_widget_value (void);
extern void free_widget_value (struct _widget_value *);
-extern int xg_uses_old_file_dialog (void);
+extern bool xg_uses_old_file_dialog (void) ATTRIBUTE_CONST;
-extern char *xg_get_file_name (FRAME_PTR f,
+extern char *xg_get_file_name (struct frame *f,
char *prompt,
char *default_filename,
- int mustmatch_p,
- int only_dir_p);
+ bool mustmatch_p,
+ bool only_dir_p);
-extern char *xg_get_font_name (FRAME_PTR f, const char *);
+extern Lisp_Object xg_get_font (struct frame *f, const char *);
extern GtkWidget *xg_create_widget (const char *type,
const char *name,
- FRAME_PTR f,
+ struct frame *f,
struct _widget_value *val,
GCallback select_cb,
GCallback deactivate_cb,
GCallback highlight_cb);
extern void xg_modify_menubar_widgets (GtkWidget *menubar,
- FRAME_PTR f,
+ struct frame *f,
struct _widget_value *val,
- int deep_p,
+ bool deep_p,
GCallback select_cb,
GCallback deactivate_cb,
GCallback highlight_cb);
-extern int xg_update_frame_menubar (FRAME_PTR f);
+extern void xg_update_frame_menubar (struct frame *f);
-extern int xg_event_is_for_menubar (FRAME_PTR f, XEvent *event);
+extern bool xg_event_is_for_menubar (struct frame *, const XEvent *);
-extern int xg_have_tear_offs (void);
+extern bool xg_have_tear_offs (void);
extern ptrdiff_t xg_get_scroll_id_for_window (Display *dpy, Window wid);
-extern void xg_create_scroll_bar (FRAME_PTR f,
+extern void xg_create_scroll_bar (struct frame *f,
struct scroll_bar *bar,
GCallback scroll_callback,
GCallback end_callback,
const char *scroll_bar_name);
-extern void xg_remove_scroll_bar (FRAME_PTR f, ptrdiff_t scrollbar_id);
+extern void xg_remove_scroll_bar (struct frame *f, ptrdiff_t scrollbar_id);
-extern void xg_update_scrollbar_pos (FRAME_PTR f,
+extern void xg_update_scrollbar_pos (struct frame *f,
ptrdiff_t scrollbar_id,
int top,
int left,
int portion,
int position,
int whole);
-extern int xg_event_is_for_scrollbar (FRAME_PTR f, XEvent *event);
+extern bool xg_event_is_for_scrollbar (struct frame *, const XEvent *);
extern int xg_get_default_scrollbar_width (void);
-extern void update_frame_tool_bar (FRAME_PTR f);
-extern void free_frame_tool_bar (FRAME_PTR f);
-extern int xg_change_toolbar_position (FRAME_PTR f, Lisp_Object pos);
+extern void update_frame_tool_bar (struct frame *f);
+extern void free_frame_tool_bar (struct frame *f);
+extern void xg_change_toolbar_position (struct frame *f, Lisp_Object pos);
-extern void xg_frame_resized (FRAME_PTR f,
+extern void xg_frame_resized (struct frame *f,
int pixelwidth,
int pixelheight);
-extern void xg_frame_set_char_size (FRAME_PTR f, int cols, int rows);
+extern void xg_frame_set_char_size (struct frame *f, int width, int height);
extern GtkWidget * xg_win_to_widget (Display *dpy, Window wdesc);
extern void xg_display_open (char *display_name, Display **dpy);
extern void xg_display_close (Display *dpy);
extern GdkCursor * xg_create_default_cursor (Display *dpy);
-extern int xg_create_frame_widgets (FRAME_PTR f);
-extern void xg_free_frame_widgets (FRAME_PTR f);
-extern void x_wm_set_size_hint (FRAME_PTR f,
- long flags,
- int user_position);
-extern void xg_set_background_color (FRAME_PTR f, unsigned long bg);
-extern int xg_check_special_colors (struct frame *f,
- const char *color_name,
- XColor *color);
-
-extern void xg_set_frame_icon (FRAME_PTR f,
+extern bool xg_create_frame_widgets (struct frame *f);
+extern void xg_free_frame_widgets (struct frame *f);
+extern void xg_set_background_color (struct frame *f, unsigned long bg);
+extern bool xg_check_special_colors (struct frame *f,
+ const char *color_name,
+ XColor *color);
+
+extern void xg_set_frame_icon (struct frame *f,
Pixmap icon_pixmap,
Pixmap icon_mask);
-extern int xg_prepare_tooltip (FRAME_PTR f,
- Lisp_Object string,
- int *width,
- int *height);
-extern void xg_show_tooltip (FRAME_PTR f, int root_x, int root_y);
-extern int xg_hide_tooltip (FRAME_PTR f);
+extern bool xg_prepare_tooltip (struct frame *f,
+ Lisp_Object string,
+ int *width,
+ int *height);
+extern void xg_show_tooltip (struct frame *f, int root_x, int root_y);
+extern bool xg_hide_tooltip (struct frame *f);
/* Mark all callback data that are Lisp_object:s during GC. */
/* Setting scrollbar values invokes the callback. Use this variable
to indicate that the callback should do nothing. */
-extern int xg_ignore_gtk_scrollbar;
+extern bool xg_ignore_gtk_scrollbar;
#endif /* USE_GTK */
#endif /* GTKUTIL_H */