comparison src/console-gtk.h @ 4908:b3ce27ca7647

various fixes related to gtk, redisplay-xlike-inc.c -------------------- ChangeLog entries follow: -------------------- src/ChangeLog addition: 2010-02-01 Ben Wing <ben@xemacs.org> * compiler.h: Create a USED() macro to force unused-var warnings to go away, in certain cases where it's inconvenient to do otherwise (e.g. when THIS_IS_GTK in redisplay-xlike-inc.c). * console-x.h: Remove unneeded decls, make some static. * redisplay-xlike-inc.c: * console-xlike-inc.h: New file. Include defns from redisplay-xlike-inc.c that may be useful in other XLIKE files. Correct the handling of colors and font-style setting functions in the xlike defns. Lots of fixes in the GTK-specific defns. * depend: Regenerate. * event-xlike-inc.c: * event-xlike-inc.c (USE_UNICODE_MAP): * event-xlike-inc.c (endif): * gccache-gtk.c: * gtk-glue.c (xemacs_list_to_gtklist): * gtk-glue.c (xemacs_gtklist_to_list): * gtk-glue.c (FROB): * gtk-glue.c (face_to_gc): * gtk-glue.c (face_to_style): * gtk-glue.c (gdk_event_to_emacs_event): * gtk-xemacs.h (struct _GtkXEmacs): * gtk-xemacs.h (struct _GtkXEmacsClass): * objects-xlike-inc.c: Cosmetic, comment fixes. * glyphs.c (pixmap_to_lisp_data): Unused var fixes. * gtk-glue.c: * gccache-gtk.c: * gtk-xemacs.c: * gtk-xemacs.h: * objects-xlike-inc.c: * ui-gtk.c: * ui-gtk.h: * xgccache.c: * xgccache.c (GC_CACHE_SIZE): * xgccache.h: Misc include-file fixes. * objects-xlike-inc.c (XFUN): * objects-xlike-inc.c (xlistfonts_checking_charset): Combine some ifdeffed stuff using defs in console-xlike-inc.h. * redisplay-gtk.c: * redisplay-gtk.c (THIS_IS_GTK): * redisplay-gtk.c (XLIKE_bevel_area): * redisplay-gtk.c (XLIKE_ring_bell): * redisplay-gtk.c (gdk_draw_text_image): Fix numerous compile problems. Delete gtk_output_shadows(), which mostly duplicates generic bevel_modeline(). Fix up gtk_bevel_modeline() into XLIKE_bevel_area() and make use of the style var properly to set the appropriate GTK constant. * redisplay-x.c: * redisplay-x.c (XLIKE_window_output_begin): * redisplay-x.c (XLIKE_window_output_end): * redisplay-x.c (XLIKE_bevel_area): * redisplay-x.c (x_output_shadows): * redisplay-x.c (XLIKE_ring_bell): Make x_output_shadows be static. Change the defn of various functions to look like XLIKE_foo() so it matches the calling convention elsewhere. * redisplay-xlike-inc.c: * redisplay-xlike-inc.c (NEED_GCCACHE_H): * redisplay-xlike-inc.c (XLIKE_text_width): * redisplay-xlike-inc.c (XLIKE_get_gc): * redisplay-xlike-inc.c (XLIKE_text_width_single_run): * redisplay-xlike-inc.c (XFT_FROB_LISP_COLOR): * redisplay-xlike-inc.c (XLIKE_output_xlike_pixmap): * redisplay-xlike-inc.c (XLIKE_output_pixmap): * redisplay-xlike-inc.c (XLIKE_output_vertical_divider): * redisplay-xlike-inc.c (XLIKE_flash): Lots of header fixes. Lots of stuff moved to console-xlike-inc.h. Use XFUN() to generate function names instead of directly calling XLIKE_PASTE(). Remove unnecessary prototypes. Unify calls to text_width funs. Make XLIKE_get_gc non-static since it's called from gtk. Change the color-function calls and fill-style-setting calls to match the changes in console-xlike-inc.h. Use USED() to avoid some warnings. * symsinit.h: Sort the prototypes, and add a fun `sort-symsinit' in a comment that does the sorting (using sort-regexp-fields). * symsinit.h (init_number): * sysgtk.h: New file, wraps the various GTK headers. * sysgdkx.h: New file, wraps <gtk/gdkx.h>. Keep this separate to * event-gtk.h: Delete. Combine stuff into console-gtk.h. help isolate X-specific code from GTK. * device-gtk.c: * event-gtk.c: * console-gtk.h: * frame-gtk.c: * gccache-gtk.c: * gccache-gtk.h: * glyphs-gtk.c (gtk_colorize_image_instance): * glyphs-gtk.h: * gtk-xemacs.h: * objects-gtk.c: * objects-gtk.c (MAX_FONT_COUNT): * ui-gtk.h: Use sysgtk.h or sysgdkx.h instead of directly including GTK headers. Don't include event-gtk.h.
author Ben Wing <ben@xemacs.org>
date Mon, 01 Feb 2010 02:15:28 -0600
parents 95fee4a1420e
children 8af6a32b170d
comparison
equal deleted inserted replaced
4907:9e7f5a77cc84 4908:b3ce27ca7647
34 #define _XEMACS_CONSOLE_GTK_H_ 34 #define _XEMACS_CONSOLE_GTK_H_
35 35
36 #ifdef HAVE_GTK 36 #ifdef HAVE_GTK
37 37
38 #include "console.h" 38 #include "console.h"
39 #include <gtk/gtk.h> 39 #include "sysgtk.h"
40 40
41 /* Variables associated with the X display frame this emacs is using. */ 41 /* Variables associated with the X display frame this emacs is using. */
42 42
43 extern Lisp_Object Vx_gc_pointer_shape; 43 extern Lisp_Object Vx_gc_pointer_shape;
44 extern Lisp_Object Vx_scrollbar_pointer_shape; 44 extern Lisp_Object Vx_scrollbar_pointer_shape;
62 void gtk_output_string (struct window *w, struct display_line *dl, 62 void gtk_output_string (struct window *w, struct display_line *dl,
63 Ichar_dynarr *buf, int xpos, int xoffset, 63 Ichar_dynarr *buf, int xpos, int xoffset,
64 int start_pixpos, int width, face_index findex, 64 int start_pixpos, int width, face_index findex,
65 int cursor, int cursor_start, int cursor_width, 65 int cursor, int cursor_start, int cursor_width,
66 int cursor_height); 66 int cursor_height);
67 void gtk_output_shadows (struct frame *f, int x, int y, int width,
68 int height, int shadow_thickness);
69 GdkGC *gtk_get_gc (struct device *d, Lisp_Object font, Lisp_Object fg, Lisp_Object bg, 67 GdkGC *gtk_get_gc (struct device *d, Lisp_Object font, Lisp_Object fg, Lisp_Object bg,
70 Lisp_Object bg_pmap, Lisp_Object lwidth); 68 Lisp_Object bg_pmap, Lisp_Object lwidth);
71 69
72 int gtk_initialize_frame_menubar (struct frame *f); 70 int gtk_initialize_frame_menubar (struct frame *f);
73 void gtk_init_modifier_mapping (struct device *d); 71 void gtk_init_modifier_mapping (struct device *d);
97 95
98 extern void gcpro_popup_callbacks (GUI_ID id, Lisp_Object data); 96 extern void gcpro_popup_callbacks (GUI_ID id, Lisp_Object data);
99 extern void ungcpro_popup_callbacks (GUI_ID id); 97 extern void ungcpro_popup_callbacks (GUI_ID id);
100 extern Lisp_Object get_gcpro_popup_callbacks (GUI_ID id); 98 extern Lisp_Object get_gcpro_popup_callbacks (GUI_ID id);
101 99
100 int gtk_event_to_emacs_event (struct frame *frame,
101 GdkEvent *gdk_event,
102 struct Lisp_Event *emacs_event);
103
104 gint emacs_gtk_key_event_handler(GtkWidget *widget, GdkEventKey *event);
105 gint emacs_gtk_button_event_handler(GtkWidget *widget, GdkEventButton *event);
106 gint emacs_gtk_motion_event_handler (GtkWidget *widget, GdkEventMotion *event);
107
108 gboolean emacs_shell_event_handler (GtkWidget *wid /* unused */,
109 GdkEvent *event,
110 gpointer closure);
111
102 #endif /* HAVE_GTK */ 112 #endif /* HAVE_GTK */
103 #endif /* _XEMACS_DEVICE_X_H_ */ 113 #endif /* _XEMACS_DEVICE_X_H_ */