Re: Build break with latest GTK+ 3
- From: Damon Chaplin <damon karuna eclipse co uk>
- To: Murray Cumming <murrayc murrayc com>
- Cc: goocanvas <goocanvas-list gnome org>, Benjamin Otte <otte gnome org>
- Subject: Re: Build break with latest GTK+ 3
- Date: Thu, 02 Sep 2010 11:35:02 +0100
On Thu, 2010-09-02 at 11:03 +0200, Murray Cumming wrote:
> On Tue, 2010-08-31 at 12:28 +0200, Murray Cumming wrote:
> > git master of goocanvas currently doesn't build against git master of
> > GTK+, which has removed GdkGC, apparently in favor of using cairo_t.
> >
> > goocanvas.c: In function ‘goo_canvas_expose_event’:
> > goocanvas.c:2695: error: ‘GtkStyle’ has no member named ‘base_gc’.
>
> Luckily that is the only code in goocanvas affected by the change:
>
> /* Clear the background. */
> if (canvas->clear_background)
> {
> gdk_draw_rectangle (canvas->canvas_window,
> gtk_widget_get_style (widget)->base_gc[gtk_widget_get_state
> (widget)], TRUE,
> event->area.x, event->area.y,
> event->area.width, event->area.height);
> }
>
> cr = goo_canvas_create_cairo_context (canvas);
It looks fairly easy to fix. We need to use something like this instead
(and move the goo_canvas_create_cairo_context() call above the code):
GdkColor *bg;
bg = gtk_widget_get_style (widget)->base[gtk_widget_get_state(widget)];
gdk_cairo_set_source_color (cr, bg);
cairo_rectangle (cr, event->area.x, event->area.y,
event->area.width, event->area.height);
cairo_fill (cr);
Or just comment it out for now.
I can't get GTK+ to build right now so I can't fix it immediately.
Damon
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]