[gbdfed] had to sacrifice a goat to get this building
Tom Callaway
spot at fedoraproject.org
Thu Aug 19 19:52:59 UTC 2010
commit ab3c694b1f482768a4c1a7fa3338416f095b0c45
Author: Tom "spot" Callaway <tcallawa at redhat.com>
Date: Thu Aug 19 15:53:02 2010 -0400
had to sacrifice a goat to get this building
gbdfed-1.5-gtkfix.patch | 586 +++++++++++++++++++++++++++++++++++++++++++++++
gbdfed.spec | 11 +-
2 files changed, 596 insertions(+), 1 deletions(-)
---
diff --git a/gbdfed-1.5-gtkfix.patch b/gbdfed-1.5-gtkfix.patch
new file mode 100644
index 0000000..7ff8870
--- /dev/null
+++ b/gbdfed-1.5-gtkfix.patch
@@ -0,0 +1,586 @@
+diff -up gbdfed-1.5/fontgrid.c.gtkfix gbdfed-1.5/fontgrid.c
+--- gbdfed-1.5/fontgrid.c.gtkfix 2010-08-19 13:55:19.395351001 -0400
++++ gbdfed-1.5/fontgrid.c 2010-08-19 15:35:13.828351001 -0400
+@@ -219,7 +219,7 @@ static GdkPoint encoding_digits[19*6];
+ /*
+ * A macro for getting the current foreground GC.
+ */
+-#define WIDGET_FG_GC(w) ((w)->style->fg_gc[GTK_WIDGET_STATE(w)])
++#define WIDGET_FG_GC(w) ((w)->style->fg_gc[gtk_widget_get_state(w)])
+
+ #define HMARGINS(fw) ((fw)->hmargin << 1)
+ #define VMARGINS(fw) ((fw)->vmargin << 1)
+@@ -581,7 +581,7 @@ fontgrid_actual_size(GtkWidget *widget,
+ */
+ fontgrid_set_rows_cols(fw, actual);
+
+- if (GTK_WIDGET_REALIZED(widget))
++ if (gtk_widget_get_realized(widget))
+ gdk_window_move_resize(widget->window, actual->x, actual->y,
+ actual->width, actual->height);
+ }
+@@ -598,7 +598,7 @@ fontgrid_realize(GtkWidget *widget)
+ g_return_if_fail(IS_FONTGRID(widget));
+
+ fw = FONTGRID(widget);
+- GTK_WIDGET_SET_FLAGS(widget, GTK_REALIZED);
++ gtk_widget_set_realized(widget, TRUE);
+
+ attributes.window_type = GDK_WINDOW_CHILD;
+ attributes.x = widget->allocation.x;
+@@ -632,8 +632,8 @@ fontgrid_realize(GtkWidget *widget)
+ * Create the GC used to display selected cells.
+ */
+ values.foreground.pixel =
+- widget->style->fg[GTK_WIDGET_STATE(widget)].pixel ^
+- widget->style->bg[GTK_WIDGET_STATE(widget)].pixel;
++ widget->style->fg[gtk_widget_get_state(widget)].pixel ^
++ widget->style->bg[gtk_widget_get_state(widget)].pixel;
+ (void) memset((char *) &values.background, 0, sizeof(GdkColor));
+ values.function = GDK_XOR;
+ fw->xor_gc = gdk_gc_new_with_values(widget->window, &values,
+@@ -788,9 +788,9 @@ fontgrid_make_rgb_image(Fontgrid *fw, bd
+ /*
+ * Figure out the background color.
+ */
+- bg[0] = (guchar) GTK_WIDGET(fw)->style->bg[GTK_WIDGET_STATE(fw)].red;
+- bg[1] = (guchar) GTK_WIDGET(fw)->style->bg[GTK_WIDGET_STATE(fw)].green;
+- bg[2] = (guchar) GTK_WIDGET(fw)->style->bg[GTK_WIDGET_STATE(fw)].blue;
++ bg[0] = (guchar) GTK_WIDGET(fw)->style->bg[gtk_widget_get_state(GTK_WIDGET(fw))].red;
++ bg[1] = (guchar) GTK_WIDGET(fw)->style->bg[gtk_widget_get_state(GTK_WIDGET(fw))].green;
++ bg[2] = (guchar) GTK_WIDGET(fw)->style->bg[gtk_widget_get_state(GTK_WIDGET(fw))].blue;
+
+ switch (fw->bpp) {
+ case 1: masks = bdf_onebpp; di = 7; break;
+@@ -848,7 +848,7 @@ fontgrid_draw_encoding(GtkWidget *w, Gdk
+ gint i, j, d;
+ GdkPoint *dp;
+
+- if (!GTK_WIDGET_REALIZED(w))
++ if (!gtk_widget_get_realized(w))
+ return;
+
+ dp = encoding_digits;
+@@ -898,7 +898,7 @@ fontgrid_draw_cells(GtkWidget *widget, g
+ GdkRectangle rect;
+ gchar nbuf[16];
+
+- if (!GTK_WIDGET_REALIZED(widget) || (labels == FALSE && glyphs == FALSE))
++ if (!gtk_widget_get_realized(widget) || (labels == FALSE && glyphs == FALSE))
+ return;
+
+ fw = FONTGRID(widget);
+@@ -941,7 +941,7 @@ fontgrid_draw_cells(GtkWidget *widget, g
+
+ gp = glyph;
+
+- gc = widget->style->fg_gc[GTK_WIDGET_STATE(widget)];
++ gc = widget->style->fg_gc[gtk_widget_get_state(widget)];
+
+ for (ng = 0, i = start; i <= end; i++) {
+ /*
+@@ -1118,7 +1118,7 @@ fontgrid_draw(GtkWidget *widget, GdkRegi
+
+ fw = FONTGRID(widget);
+
+- gc = widget->style->fg_gc[GTK_WIDGET_STATE(widget)];
++ gc = widget->style->fg_gc[gtk_widget_get_state(widget)];
+
+ gw = fw->cell_width * fw->cell_cols;
+ gh = fw->cell_height * fw->cell_rows;
+@@ -1258,15 +1258,15 @@ fontgrid_draw_focus(GtkWidget *widget, G
+ "focus-line-width", &fwidth,
+ "focus-padding", &fpad, NULL);
+
+- gc = widget->style->bg_gc[GTK_WIDGET_STATE(widget)];
++ gc = widget->style->bg_gc[gtk_widget_get_state(widget)];
+
+ x = (widget->style->xthickness + fwidth + fpad) - 1;
+ y = (widget->style->ythickness + fwidth + fpad) - 1;
+ wd = (widget->allocation.width - (x * 2));
+ ht = (widget->allocation.height - (y * 2));
+
+- if (GTK_WIDGET_HAS_FOCUS(widget))
+- gtk_paint_focus(widget->style, widget->window, GTK_WIDGET_STATE(widget),
++ if (gtk_widget_has_focus(widget))
++ gtk_paint_focus(widget->style, widget->window, gtk_widget_get_state(widget),
+ area, widget, "fontgrid", x, y, wd, ht);
+ else {
+ gdk_gc_set_clip_rectangle(gc, area);
+@@ -1281,9 +1281,9 @@ fontgrid_expose(GtkWidget *widget, GdkEv
+ /*
+ * Paint the shadow first.
+ */
+- if (GTK_WIDGET_DRAWABLE(widget))
++ if (gtk_widget_is_drawable(widget))
+ gtk_paint_shadow(widget->style, widget->window,
+- GTK_WIDGET_STATE(widget), GTK_SHADOW_OUT,
++ gtk_widget_get_state(widget), GTK_SHADOW_OUT,
+ &event->area, widget, "fontgrid",
+ 0, 0,
+ widget->allocation.width,
+@@ -1303,7 +1303,8 @@ fontgrid_focus_in(GtkWidget *widget, Gdk
+ g_return_val_if_fail(IS_FONTGRID(widget), FALSE);
+ g_return_val_if_fail(event != NULL, FALSE);
+
+- GTK_WIDGET_SET_FLAGS(widget, GTK_HAS_FOCUS);
++ gtk_widget_set_can_focus(widget, TRUE);
++ gtk_widget_grab_focus(widget);
+ fontgrid_draw_focus(widget, 0);
+
+ return FALSE;
+@@ -1316,7 +1317,7 @@ fontgrid_focus_out(GtkWidget *widget, Gd
+ g_return_val_if_fail(IS_FONTGRID(widget), FALSE);
+ g_return_val_if_fail(event != NULL, FALSE);
+
+- GTK_WIDGET_UNSET_FLAGS(widget, GTK_HAS_FOCUS);
++ gtk_widget_set_can_focus(widget, FALSE);
+ fontgrid_draw_focus(widget, 0);
+
+ return FALSE;
+@@ -1439,8 +1440,9 @@ start_selection(GtkWidget *widget, GdkEv
+ /*
+ * Deal with the focus issue first.
+ */
+- if (!GTK_WIDGET_HAS_FOCUS(widget)) {
+- GTK_WIDGET_SET_FLAGS(widget, GTK_HAS_FOCUS);
++ if (!gtk_widget_has_focus(widget)) {
++ gtk_widget_set_can_focus(widget, TRUE);
++ gtk_widget_grab_focus(widget);
+ (void) fontgrid_draw_focus(widget, NULL);
+ }
+
+@@ -1554,8 +1556,9 @@ extend_selection(GtkWidget *widget, gint
+ /*
+ * Deal with the focus issue first.
+ */
+- if (!GTK_WIDGET_HAS_FOCUS(widget)) {
+- GTK_WIDGET_SET_FLAGS(widget, GTK_HAS_FOCUS);
++ if (!gtk_widget_has_focus(widget)) {
++ gtk_widget_set_can_focus(widget, TRUE);
++ gtk_widget_grab_focus(widget);
+ (void) fontgrid_draw_focus(widget, NULL);
+ }
+
+@@ -2455,7 +2458,7 @@ fontgrid_init(GTypeInstance *obj, gpoint
+ GdkScreen *screen;
+ gint fwidth, fpad;
+
+- GTK_WIDGET_SET_FLAGS(fw, GTK_CAN_FOCUS);
++ gtk_widget_set_can_focus(GTK_WIDGET(fw), TRUE);
+
+ gtk_widget_style_get(GTK_WIDGET(fw),
+ "focus-line-width", &fwidth,
+@@ -3751,11 +3754,11 @@ fontgrid_translate_glyphs(Fontgrid *fw,
+ if (bdf_translate_glyphs(fw->font, dx, dy, start, end, 0, 0,
+ fw->unencoded)) {
+ gtk_widget_queue_resize(w);
+- if (GTK_WIDGET_REALIZED(w))
++ if (gtk_widget_get_realized(w))
+ gdk_window_clear(w->window);
+
+ gtk_widget_queue_resize(w);
+- if (GTK_WIDGET_REALIZED(w))
++ if (gtk_widget_get_realized(w))
+ gdk_window_clear(w->window);
+
+ minfo.reason = FONTGRID_GLYPHS_MODIFIED;
+@@ -3786,7 +3789,7 @@ fontgrid_rotate_glyphs(Fontgrid *fw, gin
+ if (bdf_rotate_glyphs(fw->font, degrees, start, end, 0, 0,
+ fw->unencoded)) {
+ gtk_widget_queue_resize(w);
+- if (GTK_WIDGET_REALIZED(w))
++ if (gtk_widget_get_realized(w))
+ gdk_window_clear(w->window);
+
+ minfo.reason = FONTGRID_GLYPHS_MODIFIED;
+@@ -3817,7 +3820,7 @@ fontgrid_shear_glyphs(Fontgrid *fw, gint
+ if (bdf_shear_glyphs(fw->font, degrees, start, end, 0, 0,
+ fw->unencoded)) {
+ gtk_widget_queue_resize(w);
+- if (GTK_WIDGET_REALIZED(w))
++ if (gtk_widget_get_realized(w))
+ gdk_window_clear(w->window);
+
+ minfo.reason = FONTGRID_GLYPHS_MODIFIED;
+@@ -3851,7 +3854,7 @@ fontgrid_embolden_glyphs(Fontgrid *fw, g
+ fw->unencoded, &resize)) {
+ if (resize) {
+ gtk_widget_queue_resize(w);
+- if (GTK_WIDGET_REALIZED(w))
++ if (gtk_widget_get_realized(w))
+ gdk_window_clear(w->window);
+ } else
+ /*
+@@ -4345,7 +4348,7 @@ fontgrid_paste_selection(Fontgrid *fw, F
+ FontgridSelectionInfo sinfo;
+
+ g_return_if_fail(fw != 0);
+- g_return_if_fail(GTK_WIDGET_REALIZED(w));
++ g_return_if_fail(gtk_widget_get_realized(w));
+
+ if ((win = gdk_selection_owner_get(FONTGRID_CLIPBOARD)) == 0) {
+ gdk_selection_owner_set(w->window, FONTGRID_CLIPBOARD,
+diff -up gbdfed-1.5/gectrl.c.gtkfix gbdfed-1.5/gectrl.c
+--- gbdfed-1.5/gectrl.c.gtkfix 2010-08-19 13:56:20.355351081 -0400
++++ gbdfed-1.5/gectrl.c 2010-08-19 14:02:48.878351001 -0400
+@@ -556,7 +556,7 @@ gecontrol_actual_size(GtkWidget *widget,
+
+ gecontrol_position_buttons(widget);
+
+- if (GTK_WIDGET_REALIZED(widget))
++ if (gtk_widget_get_realized(widget))
+ gdk_window_move_resize(widget->window, actual->x, actual->y,
+ actual->width, actual->height);
+ }
+@@ -700,7 +700,7 @@ gecontrol_button_normal(GEControl *ge, g
+ v = (GEC_BUTTON_SIZE >> 1) - (BMAP_DIM >> 1);
+ }
+
+- gdk_draw_pixbuf(w->window, w->style->fg_gc[GTK_WIDGET_STATE(w)],
++ gdk_draw_pixbuf(w->window, w->style->fg_gc[gtk_widget_get_state(w)],
+ ge->buttons[button].image, 0, 0,
+ ge->buttons[button].x + v, ge->buttons[button].y + v,
+ BMAP_DIM, BMAP_DIM, GDK_RGB_DITHER_NONE, 0, 0);
+@@ -741,7 +741,7 @@ gecontrol_button_prelight(GEControl *ge,
+ v = (GEC_BUTTON_SIZE >> 1) - (BMAP_DIM >> 1);
+ }
+
+- gdk_draw_pixbuf(w->window, w->style->fg_gc[GTK_WIDGET_STATE(w)],
++ gdk_draw_pixbuf(w->window, w->style->fg_gc[gtk_widget_get_state(w)],
+ ge->buttons[button].image, 0, 0,
+ ge->buttons[button].x + v, ge->buttons[button].y + v,
+ BMAP_DIM, BMAP_DIM, GDK_RGB_DITHER_NONE, 0, 0);
+@@ -782,7 +782,7 @@ gecontrol_button_active(GEControl *ge, g
+ v = (GEC_BUTTON_SIZE >> 1) - (BMAP_DIM >> 1);
+ }
+
+- gdk_draw_pixbuf(w->window, w->style->fg_gc[GTK_WIDGET_STATE(w)],
++ gdk_draw_pixbuf(w->window, w->style->fg_gc[gtk_widget_get_state(w)],
+ ge->buttons[button].image, 0, 0,
+ ge->buttons[button].x + v, ge->buttons[button].y + v,
+ BMAP_DIM, BMAP_DIM, GDK_RGB_DITHER_NONE, 0, 0);
+@@ -850,9 +850,9 @@ gecontrol_make_rgb_glyph(GEControl *ge)
+ * First, get the background color of the widget for the empty
+ * pixels.
+ */
+- bg[0] = (guchar) GTK_WIDGET(ge)->style->bg[GTK_WIDGET_STATE(ge)].red;
+- bg[1] = (guchar) GTK_WIDGET(ge)->style->bg[GTK_WIDGET_STATE(ge)].green;
+- bg[2] = (guchar) GTK_WIDGET(ge)->style->bg[GTK_WIDGET_STATE(ge)].blue;
++ bg[0] = (guchar) GTK_WIDGET(ge)->style->bg[gtk_widget_get_state(ge)].red;
++ bg[1] = (guchar) GTK_WIDGET(ge)->style->bg[gtk_widget_get_state(ge)].green;
++ bg[2] = (guchar) GTK_WIDGET(ge)->style->bg[gtk_widget_get_state(ge)].blue;
+
+ im = ge->gimage;
+
+@@ -911,7 +911,7 @@ gecontrol_highlight_selected_spot(GECont
+ gint x, y;
+ GEControlClass *gec = GECONTROL_GET_CLASS(ge);
+
+- if (!GTK_WIDGET_REALIZED(ge) || ge->gimage == 0 || ge->gimage->bpp == 1)
++ if (!gtk_widget_get_realized(ge) || ge->gimage == 0 || ge->gimage->bpp == 1)
+ return;
+
+ if (ge->gimage->bpp != 8) {
+@@ -981,13 +981,13 @@ gecontrol_draw_glyph_image(GEControl *ge
+ {
+ GtkWidget *w = GTK_WIDGET(ge);
+
+- if (ge->gimage == 0 || !GTK_WIDGET_REALIZED(ge))
++ if (ge->gimage == 0 || !gtk_widget_get_realized(ge))
+ return;
+
+ /*
+ * 1. Draw the box around the image.
+ */
+- gdk_draw_rectangle(w->window, w->style->fg_gc[GTK_WIDGET_STATE(w)],
++ gdk_draw_rectangle(w->window, w->style->fg_gc[gtk_widget_get_state(w)],
+ FALSE, ge->gimage->x, ge->gimage->y,
+ ge->gimage->width + 4, ge->gimage->height + 4);
+
+@@ -1002,7 +1002,7 @@ gecontrol_draw_glyph_image(GEControl *ge
+ */
+ gecontrol_make_rgb_glyph(ge);
+ gdk_draw_rgb_image(w->window,
+- w->style->bg_gc[GTK_WIDGET_STATE(w)],
++ w->style->bg_gc[gtk_widget_get_state(w)],
+ ge->gimage->x + 2, ge->gimage->y + 2,
+ ge->gimage->width, ge->gimage->height,
+ GDK_RGB_DITHER_NONE, ge->rgb,
+@@ -1037,8 +1037,8 @@ gecontrol_expose(GtkWidget *w, GdkEventE
+ * Make sure the selection GC has been created.
+ */
+ if (gec->selgc == 0) {
+- gcv.foreground.pixel = w->style->fg[GTK_WIDGET_STATE(w)].pixel;
+- gcv.background.pixel = w->style->bg[GTK_WIDGET_STATE(w)].pixel;
++ gcv.foreground.pixel = w->style->fg[gtk_widget_get_state(w)].pixel;
++ gcv.background.pixel = w->style->bg[gtk_widget_get_state(w)].pixel;
+ gcv.foreground.pixel ^= gcv.background.pixel;
+ gcv.function = GDK_XOR;
+ gec->selgc = gdk_gc_new_with_values(w->window, &gcv,
+@@ -1048,7 +1048,7 @@ gecontrol_expose(GtkWidget *w, GdkEventE
+ gecontrol_make_color_spots(ge, ge->gimage->bpp);
+
+ gdk_draw_gray_image(w->window,
+- w->style->fg_gc[GTK_WIDGET_STATE(w)],
++ w->style->fg_gc[gtk_widget_get_state(w)],
+ ge->spot.x, ge->spot.y,
+ ge->spot.width, ge->spot.height,
+ GDK_RGB_DITHER_NONE, ge->rgb, ge->spot.width);
+diff -up gbdfed-1.5/glyphedit.c.gtkfix gbdfed-1.5/glyphedit.c
+--- gbdfed-1.5/glyphedit.c.gtkfix 2010-08-19 13:57:25.336351001 -0400
++++ gbdfed-1.5/glyphedit.c 2010-08-19 14:07:15.051351000 -0400
+@@ -316,7 +316,7 @@ glyphedit_actual_size(GtkWidget *widget,
+ {
+ widget->allocation = *actual;
+
+- if (GTK_WIDGET_REALIZED(widget))
++ if (gtk_widget_get_realized(widget))
+ gdk_window_move_resize(widget->window, actual->x, actual->y,
+ actual->width, actual->height);
+ }
+@@ -335,15 +335,15 @@ glyphedit_draw_focus(GtkWidget *widget,
+ "focus-line-width", &fwidth,
+ "focus-padding", &fpad, NULL);
+
+- gc = widget->style->bg_gc[GTK_WIDGET_STATE(widget)];
++ gc = widget->style->bg_gc[gtk_widget_get_state(widget)];
+
+ x = (widget->style->xthickness + fwidth + fpad) - 1;
+ y = (widget->style->ythickness + fwidth + fpad) - 1;
+ wd = (widget->allocation.width - (x * 2));
+ ht = (widget->allocation.height - (y * 2));
+
+- if (GTK_WIDGET_HAS_FOCUS(widget))
+- gtk_paint_focus(widget->style, widget->window, GTK_WIDGET_STATE(widget),
++ if (gtk_widget_has_focus(widget))
++ gtk_paint_focus(widget->style, widget->window, gtk_widget_get_state(widget),
+ area, widget, "glyphedit", x, y, wd, ht);
+ else {
+ gdk_gc_set_clip_rectangle(gc, area);
+@@ -360,7 +360,7 @@ glyphedit_draw_pixel(Glyphedit *gw, gint
+ guchar *masks, *bmap;
+ GdkRectangle pix;
+
+- if (!GTK_WIDGET_REALIZED(gw) || gw->grid == 0)
++ if (!gtk_widget_get_realized(gw) || gw->grid == 0)
+ return;
+
+ gwc = GLYPHEDIT_GET_CLASS(gw);
+@@ -433,7 +433,7 @@ glyphedit_draw_glyph(Glyphedit *gw)
+ gint16 x, y;
+ gboolean sel;
+
+- if (!GTK_WIDGET_REALIZED(gw) || gw->grid == 0)
++ if (!gtk_widget_get_realized(gw) || gw->grid == 0)
+ return;
+
+ for (y = 0; y < gw->grid->grid_height; y++) {
+@@ -451,7 +451,7 @@ glyphedit_draw_font_bbx(Glyphedit *gw)
+ gint16 xoff, yoff, fxoff, fyoff, psize;
+ GdkRectangle frame;
+
+- if (!GTK_WIDGET_REALIZED(gw))
++ if (!gtk_widget_get_realized(gw))
+ return;
+
+ gwc = GLYPHEDIT_GET_CLASS(gw);
+@@ -618,9 +618,9 @@ glyphedit_create_gcs(GtkWidget *widget,
+ if (gwc->gridgc != 0)
+ g_object_unref(G_OBJECT(gwc->gridgc));
+ gcv.foreground.pixel =
+- widget->style->fg[GTK_WIDGET_STATE(widget)].pixel;
++ widget->style->fg[gtk_widget_get_state(widget)].pixel;
+ gcv.background.pixel =
+- widget->style->bg[GTK_WIDGET_STATE(widget)].pixel;
++ widget->style->bg[gtk_widget_get_state(widget)].pixel;
+ gcv.function = GDK_COPY;
+ gcv.line_style = GDK_LINE_ON_OFF_DASH;
+ gwc->gridgc = gdk_gc_new_with_values(widget->window, &gcv,
+@@ -654,9 +654,9 @@ glyphedit_create_gcs(GtkWidget *widget,
+ g_object_unref(G_OBJECT(gwc->selgc));
+
+ gcv.foreground.pixel =
+- widget->style->fg[GTK_WIDGET_STATE(widget)].pixel;
++ widget->style->fg[gtk_widget_get_state(widget)].pixel;
+ gcv.background.pixel =
+- widget->style->bg[GTK_WIDGET_STATE(widget)].pixel;
++ widget->style->bg[gtk_widget_get_state(widget)].pixel;
+ gcv.foreground.pixel ^= gcv.background.pixel;
+ gcv.function = GDK_XOR;
+ gwc->selgc = gdk_gc_new_with_values(widget->window, &gcv, gcm);
+@@ -667,9 +667,9 @@ glyphedit_create_gcs(GtkWidget *widget,
+ g_object_unref(G_OBJECT(gwc->pixgc));
+
+ gcv.foreground.pixel =
+- widget->style->fg[GTK_WIDGET_STATE(widget)].pixel;
++ widget->style->fg[gtk_widget_get_state(widget)].pixel;
+ gcv.background.pixel =
+- widget->style->bg[GTK_WIDGET_STATE(widget)].pixel;
++ widget->style->bg[gtk_widget_get_state(widget)].pixel;
+ gcv.function = GDK_COPY;
+ gwc->pixgc = gdk_gc_new_with_values(widget->window, &gcv, gcm);
+ }
+@@ -738,9 +738,9 @@ glyphedit_expose(GtkWidget *widget, GdkE
+ /*
+ * Paint the shadow first.
+ */
+- if (GTK_WIDGET_DRAWABLE(widget))
++ if (gtk_widget_is_drawable(widget))
+ gtk_paint_shadow(widget->style, widget->window,
+- GTK_WIDGET_STATE(widget), GTK_SHADOW_OUT,
++ gtk_widget_get_state(widget), GTK_SHADOW_OUT,
+ &event->area, widget, "glyphedit",
+ 0, 0,
+ widget->allocation.width,
+@@ -1050,7 +1050,7 @@ glyphedit_set_metrics(Glyphedit *gw, bdf
+ if (bdf_grid_resize(gw->grid, metrics)) {
+ glyphedit_signal_glyph_change(gw);
+ gtk_widget_queue_resize(GTK_WIDGET(gw));
+- } else if (GTK_WIDGET_REALIZED(gw))
++ } else if (gtk_widget_get_realized(gw))
+ /*
+ * The size didn't change, but we need to redraw if the widget
+ * has been realized.
+@@ -1553,7 +1553,7 @@ glyphedit_own_clipboard(Glyphedit *gw)
+ GdkWindow *win;
+
+ w = GTK_WIDGET(gw);
+- if (!GTK_WIDGET_REALIZED(w) || gw->owns_clipboard == TRUE)
++ if (!gtk_widget_get_realized(w) || gw->owns_clipboard == TRUE)
+ return;
+
+ win = gdk_selection_owner_get(GLYPHEDIT_CLIPBOARD);
+@@ -2177,7 +2177,7 @@ glyphedit_button_release(GtkWidget *w, G
+ /*
+ * Button releases on a widget without the focus is ignored.
+ */
+- if (!GTK_WIDGET_HAS_FOCUS(w))
++ if (!gtk_widget_has_focus(w))
+ return FALSE;
+
+ gw = GLYPHEDIT(w);
+@@ -2253,7 +2253,7 @@ glyphedit_motion_notify(GtkWidget *w, Gd
+ * If the event is a simple motion event with no button being pressed,
+ * then simply return at this point.
+ */
+- if (!GTK_WIDGET_HAS_FOCUS(w) ||
++ if (!gtk_widget_has_focus(w) ||
+ !(event->state & (GDK_BUTTON1_MASK|GDK_BUTTON2_MASK|GDK_BUTTON3_MASK)))
+ return FALSE;
+
+diff -up gbdfed-1.5/glyphtest.c.gtkfix gbdfed-1.5/glyphtest.c
+--- gbdfed-1.5/glyphtest.c.gtkfix 2010-08-19 13:58:05.797351002 -0400
++++ gbdfed-1.5/glyphtest.c 2010-08-19 14:07:28.722350971 -0400
+@@ -229,7 +229,7 @@ glyphtest_actual_size(GtkWidget *widget,
+ {
+ widget->allocation = *actual;
+
+- if (GTK_WIDGET_REALIZED(widget))
++ if (gtk_widget_get_realized(widget))
+ gdk_window_move_resize(widget->window, actual->x, actual->y,
+ actual->width, actual->height);
+ }
+@@ -248,15 +248,15 @@ glyphtest_draw_focus(GtkWidget *widget,
+ "focus-line-width", &fwidth,
+ "focus-padding", &fpad, NULL);
+
+- gc = widget->style->bg_gc[GTK_WIDGET_STATE(widget)];
++ gc = widget->style->bg_gc[gtk_widget_get_state(widget)];
+
+ x = (widget->style->xthickness + fwidth + fpad) - 1;
+ y = (widget->style->ythickness + fwidth + fpad) - 1;
+ wd = (widget->allocation.width - (x * 2));
+ ht = (widget->allocation.height - (y * 2));
+
+- if (GTK_WIDGET_HAS_FOCUS(widget))
+- gtk_paint_focus(widget->style, widget->window, GTK_WIDGET_STATE(widget),
++ if (gtk_widget_has_focus(widget))
++ gtk_paint_focus(widget->style, widget->window, gtk_widget_get_state(widget),
+ area, widget, "glyphtest", x, y, wd, ht);
+ else {
+ gdk_gc_set_clip_rectangle(gc, area);
+@@ -323,7 +323,7 @@ _glyphtest_draw_glyph(Glyphtest *gw, bdf
+
+ w = GTK_WIDGET(gw);
+
+- if (!GTK_WIDGET_REALIZED(w))
++ if (!gtk_widget_get_realized(w))
+ return;
+
+ ry = gw->line.cpoint.y;
+@@ -348,7 +348,7 @@ _glyphtest_redraw_glyphs(Glyphtest *gw)
+
+ w = GTK_WIDGET(gw);
+
+- if (!GTK_WIDGET_REALIZED(w))
++ if (!gtk_widget_get_realized(w))
+ return;
+
+ lp = &gw->line;
+@@ -393,7 +393,7 @@ glyphtest_draw(GtkWidget *widget, GdkRec
+ GdkPoint s, e;
+ GdkRectangle clear;
+
+- if (!GTK_WIDGET_REALIZED(widget))
++ if (!gtk_widget_get_realized(widget))
+ return;
+
+ gw = GLYPHTEST(widget);
+@@ -421,7 +421,7 @@ glyphtest_draw(GtkWidget *widget, GdkRec
+ s.y = e.y = gw->line.cpoint.y;
+
+ gdk_draw_line(widget->window,
+- widget->style->fg_gc[GTK_WIDGET_STATE(widget)],
++ widget->style->fg_gc[gtk_widget_get_state(widget)],
+ s.x, s.y, e.x, e.y);
+ }
+ }
+@@ -432,9 +432,9 @@ glyphtest_expose(GtkWidget *widget, GdkE
+ /*
+ * Paint the shadow first.
+ */
+- if (GTK_WIDGET_DRAWABLE(widget))
++ if (gtk_widget_is_drawable(widget))
+ gtk_paint_shadow(widget->style, widget->window,
+- GTK_WIDGET_STATE(widget), GTK_SHADOW_OUT,
++ gtk_widget_get_state(widget), GTK_SHADOW_OUT,
+ &event->area,
+ widget, "glyphtest",
+ 0, 0,
+diff -up gbdfed-1.5/grayswatch.c.gtkfix gbdfed-1.5/grayswatch.c
+--- gbdfed-1.5/grayswatch.c.gtkfix 2010-08-19 14:03:07.490351020 -0400
++++ gbdfed-1.5/grayswatch.c 2010-08-19 14:07:48.277350978 -0400
+@@ -74,9 +74,9 @@ value_changed(GtkSpinButton *b, gpointer
+
+ memset(gs->image, v, gs->image_size);
+
+- if (GTK_WIDGET_DRAWABLE(sw))
++ if (gtk_widget_is_drawable(sw))
+ gdk_draw_gray_image(sw->window,
+- sw->style->fg_gc[GTK_WIDGET_STATE(sw)],
++ sw->style->fg_gc[gtk_widget_get_state(sw)],
+ GTK_CONTAINER(gs)->border_width,
+ GTK_CONTAINER(gs)->border_width,
+ sw->allocation.width, sw->allocation.height,
+@@ -124,7 +124,7 @@ grayswatch_expose(GtkWidget *widget, Gdk
+
+ if (gs->image_size > 0)
+ gdk_draw_gray_image(widget->window,
+- widget->style->fg_gc[GTK_WIDGET_STATE(widget)],
++ widget->style->fg_gc[gtk_widget_get_state(widget)],
+ GTK_CONTAINER(gs)->border_width,
+ GTK_CONTAINER(gs)->border_width,
+ widget->allocation.width,
+diff -up gbdfed-1.5/labcon.c.gtkfix gbdfed-1.5/labcon.c
+--- gbdfed-1.5/labcon.c.gtkfix 2010-08-19 14:03:16.643351008 -0400
++++ gbdfed-1.5/labcon.c 2010-08-19 14:03:21.099351002 -0400
+@@ -240,7 +240,7 @@ draw_pixbuf(GtkWidget *w, GdkEventExpose
+
+ x = (w->allocation.width >> 1) - (wd >> 1);
+ y = (w->allocation.height >> 1) - (ht >> 1);
+- gdk_draw_pixbuf(w->window, w->style->fg_gc[GTK_WIDGET_STATE(w)],
++ gdk_draw_pixbuf(w->window, w->style->fg_gc[gtk_widget_get_state(w)],
+ p, 0, 0, x, y, wd, ht, GDK_RGB_DITHER_NONE, 0, 0);
+
+ return FALSE;
diff --git a/gbdfed.spec b/gbdfed.spec
index c3b66eb..2027fed 100644
--- a/gbdfed.spec
+++ b/gbdfed.spec
@@ -1,7 +1,7 @@
Name: gbdfed
Summary: Bitmap Font Editor
Version: 1.5
-Release: 2%{?dist}
+Release: 3%{?dist}
License: MIT
Group: Applications/System
Source0: http://www.math.nmsu.edu/~mleisher/Software/gbdfed/%{name}-%{version}.tbz2
@@ -11,6 +11,8 @@ Source2: gbdfed.desktop
Patch0: gbdfed-1.5-getline.patch
# Fix implicit DSO issue with libX11
Patch1: gbdfed-1.5-implicit-DSO-libX11.patch
+# Fix some of the gtk issues
+Patch2: gbdfed-1.5-gtkfix.patch
URL: http://www.math.nmsu.edu/~mleisher/Software/gbdfed/
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
BuildRequires: freetype-devel, pango-devel, libX11-devel, libICE-devel, gtk2-devel
@@ -26,6 +28,10 @@ editing font properties. The editor works natively with BDF fonts.
%setup -q
%patch0 -p1 -b .getline
%patch1 -p1 -b .DSO
+%patch2 -p1 -b .gtkfix
+
+# This is incredibly hackish, and will likely not work when these deprecated bits are removed outright.
+sed "s:-D.*_DISABLE_DEPRECATED::" -i Makefile.in
%build
autoconf
@@ -54,6 +60,9 @@ rm -rf %{buildroot}
%{_mandir}/man1/gbdfed*
%changelog
+* Thu Aug 19 2010 Tom "spot" Callaway <tcallawa at redhat.com> - 1.5-3
+- coax this beast to life for one last build
+
* Wed Feb 10 2010 Tom "spot" Callaway <tcallawa at redhat.com> - 1.5-2
- Fix implicit DSO issue with libX11
More information about the scm-commits
mailing list