Mercurial > hg > xemacs-beta
diff src/gtk-glue.c @ 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 | db7068430402 |
children | e813cf16c015 |
line wrap: on
line diff
--- a/src/gtk-glue.c Mon Feb 01 01:05:28 2010 -0600 +++ b/src/gtk-glue.c Mon Feb 01 02:15:28 2010 -0600 @@ -25,6 +25,7 @@ GtkType GTK_TYPE_OBJECT_LIST = 0; GtkType GTK_TYPE_GDK_GC = 0; +#include "console-gtk.h" #include "objects-gtk-impl.h" static GtkType @@ -86,7 +87,7 @@ temp = XCDR (temp); } - GTK_VALUE_POINTER(*arg) = strings; + GTK_VALUE_POINTER (*arg) = strings; } else if (arg->type == GTK_TYPE_OBJECT_LIST) { @@ -107,11 +108,11 @@ temp = XCDR (temp); } - GTK_VALUE_POINTER(*arg) = objects; + GTK_VALUE_POINTER (*arg) = objects; } else { - ABORT(); + ABORT (); } } @@ -148,7 +149,7 @@ } else { - ABORT(); + ABORT (); } } return (rval); @@ -182,41 +183,42 @@ temp = XCDR (temp); \ } \ \ - GTK_VALUE_POINTER(*arg) = array; \ + GTK_VALUE_POINTER (*arg) = array; \ } while (0); if (arg->type == GTK_TYPE_STRING_ARRAY) { - FROB(gchar *, CHECK_STRING, (gchar*) XSTRING_DATA); + FROB (gchar *, CHECK_STRING, (gchar*) XSTRING_DATA); } else if (arg->type == GTK_TYPE_FLOAT_ARRAY) { - FROB(gfloat, CHECK_FLOAT, extract_float); + FROB (gfloat, CHECK_FLOAT, extract_float); } else if (arg->type == GTK_TYPE_INT_ARRAY) { - FROB(gint, CHECK_INT, XINT); + FROB (gint, CHECK_INT, XINT); } else { - ABORT(); + ABORT (); } #undef FROB } -extern GdkGC *gtk_get_gc (struct device *d, Lisp_Object font, Lisp_Object fg, Lisp_Object bg, - Lisp_Object bg_pmap, Lisp_Object lwidth); - static GdkGC * face_to_gc (Lisp_Object face) { Lisp_Object device = Fselected_device (Qnil); return (gtk_get_gc (XDEVICE (device), - Fspecifier_instance (Fget (face, Qfont, Qnil), device, Qnil, Qnil), - Fspecifier_instance (Fget (face, Qforeground, Qnil), device, Qnil, Qnil), - Fspecifier_instance (Fget (face, Qbackground, Qnil), device, Qnil, Qnil), - Fspecifier_instance (Fget (face, Qbackground_pixmap, Qnil), device, Qnil, Qnil), + Fspecifier_instance (Fget (face, Qfont, Qnil), + device, Qnil, Qnil), + Fspecifier_instance (Fget (face, Qforeground, Qnil), + device, Qnil, Qnil), + Fspecifier_instance (Fget (face, Qbackground, Qnil), + device, Qnil, Qnil), + Fspecifier_instance (Fget (face, Qbackground_pixmap, + Qnil), device, Qnil, Qnil), Qnil)); } @@ -227,17 +229,24 @@ GtkStyle *style = gtk_style_new (); int i; - Lisp_Object font = Fspecifier_instance (Fget (face, Qfont, Qnil), device, Qnil, Qnil); - Lisp_Object fg = Fspecifier_instance (Fget (face, Qforeground, Qnil), device, Qnil, Qnil); - Lisp_Object bg = Fspecifier_instance (Fget (face, Qbackground, Qnil), device, Qnil, Qnil); - Lisp_Object pm = Fspecifier_instance (Fget (face, Qbackground_pixmap, Qnil), device, Qnil, Qnil); + Lisp_Object font = Fspecifier_instance (Fget (face, Qfont, Qnil), + device, Qnil, Qnil); + Lisp_Object fg = Fspecifier_instance (Fget (face, Qforeground, Qnil), + device, Qnil, Qnil); + Lisp_Object bg = Fspecifier_instance (Fget (face, Qbackground, Qnil), + device, Qnil, Qnil); + Lisp_Object pm = Fspecifier_instance (Fget (face, Qbackground_pixmap, + Qnil), device, Qnil, Qnil); - for (i = 0; i < 5; i++) style->fg[i] = * COLOR_INSTANCE_GTK_COLOR (XCOLOR_INSTANCE (fg)); - for (i = 0; i < 5; i++) style->bg[i] = * COLOR_INSTANCE_GTK_COLOR (XCOLOR_INSTANCE (bg)); + for (i = 0; i < 5; i++) + style->fg[i] = *COLOR_INSTANCE_GTK_COLOR (XCOLOR_INSTANCE (fg)); + for (i = 0; i < 5; i++) + style->bg[i] = *COLOR_INSTANCE_GTK_COLOR (XCOLOR_INSTANCE (bg)); if (IMAGE_INSTANCEP (pm)) { - for (i = 0; i < 5; i++) style->bg_pixmap[i] = XIMAGE_INSTANCE_GTK_PIXMAP (pm); + for (i = 0; i < 5; i++) + style->bg_pixmap[i] = XIMAGE_INSTANCE_GTK_PIXMAP (pm); } style->font = FONT_INSTANCE_GTK_FONT (XFONT_INSTANCE (font)); @@ -246,7 +255,7 @@ } static Lisp_Object -gdk_event_to_emacs_event(GdkEvent *ev) +gdk_event_to_emacs_event (GdkEvent *ev) { Lisp_Object event = Qnil;