Fix all remaining GTK3 issues.

Work around the issue of GnomeCanvasItem amending its own flags to
GtkObject::flags (which is sealed) by giving it its own flags field.
This breaks libgnomecanvas ABI and API, but I see no other way.

This commit didn't work the first time because gnome-pilot libraries
were still pulling in the system-wide libgnomecanvas, and that was
interfereing with our bundled version which has a different ABI.
But gnome-pilot integration was dropped in the previous commit, so
everything is now using the bundled libgnomecanvas.
This commit is contained in:
Matthew Barnes
2010-01-13 12:50:49 -05:00
parent 333897772f
commit c2c89fcb8c
20 changed files with 508 additions and 240 deletions

View File

@ -730,14 +730,14 @@ e_reflow_set_property (GObject *object, guint prop_id, const GValue *value, GPar
break;
case PROP_MINIMUM_WIDTH:
reflow->minimum_width = g_value_get_double (value);
if (GNOME_CANVAS_ITEM_REALIZED & GTK_OBJECT_FLAGS(object))
if (item->flags & GNOME_CANVAS_ITEM_REALIZED)
set_empty(reflow);
e_canvas_item_request_reflow(item);
break;
case PROP_EMPTY_MESSAGE:
g_free(reflow->empty_message);
reflow->empty_message = g_strdup(g_value_get_string (value));
if (GNOME_CANVAS_ITEM_REALIZED & GTK_OBJECT_FLAGS(object))
if (item->flags & GNOME_CANVAS_ITEM_REALIZED)
set_empty(reflow);
break;
case PROP_MODEL:
@ -1382,7 +1382,7 @@ e_reflow_reflow( GnomeCanvasItem *item, gint flags )
gint next_column;
gint i;
if (!(GTK_OBJECT_FLAGS (reflow) & GNOME_CANVAS_ITEM_REALIZED))
if (!(item->flags & GNOME_CANVAS_ITEM_REALIZED))
return;
if (reflow->need_reflow_columns) {