aboutsummaryrefslogtreecommitdiffstats
path: root/libgnomecanvas/gnome-canvas.h
diff options
context:
space:
mode:
authorMatthew Barnes <mbarnes@redhat.com>2010-01-14 01:50:49 +0800
committerMatthew Barnes <mbarnes@redhat.com>2010-06-15 00:55:49 +0800
commitfd8b55edaa88906b588aa07d9eadcacd34a7a774 (patch)
tree14fe95f503fefe738465ff4a734671afec0efb57 /libgnomecanvas/gnome-canvas.h
parente8a1662875e3e957d96d4f60cb8b5664ee4f74b3 (diff)
downloadgsoc2013-evolution-fd8b55edaa88906b588aa07d9eadcacd34a7a774.tar
gsoc2013-evolution-fd8b55edaa88906b588aa07d9eadcacd34a7a774.tar.gz
gsoc2013-evolution-fd8b55edaa88906b588aa07d9eadcacd34a7a774.tar.bz2
gsoc2013-evolution-fd8b55edaa88906b588aa07d9eadcacd34a7a774.tar.lz
gsoc2013-evolution-fd8b55edaa88906b588aa07d9eadcacd34a7a774.tar.xz
gsoc2013-evolution-fd8b55edaa88906b588aa07d9eadcacd34a7a774.tar.zst
gsoc2013-evolution-fd8b55edaa88906b588aa07d9eadcacd34a7a774.zip
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.
Diffstat (limited to 'libgnomecanvas/gnome-canvas.h')
-rw-r--r--libgnomecanvas/gnome-canvas.h26
1 files changed, 15 insertions, 11 deletions
diff --git a/libgnomecanvas/gnome-canvas.h b/libgnomecanvas/gnome-canvas.h
index a9c70be4f5..559bd9c8fb 100644
--- a/libgnomecanvas/gnome-canvas.h
+++ b/libgnomecanvas/gnome-canvas.h
@@ -90,17 +90,17 @@ typedef struct _GnomeCanvasGroupClass GnomeCanvasGroupClass;
*/
/* Object flags for items */
-enum {
- GNOME_CANVAS_ITEM_REALIZED = 1 << 4,
- GNOME_CANVAS_ITEM_MAPPED = 1 << 5,
- GNOME_CANVAS_ITEM_ALWAYS_REDRAW = 1 << 6,
- GNOME_CANVAS_ITEM_VISIBLE = 1 << 7,
- GNOME_CANVAS_ITEM_NEED_UPDATE = 1 << 8,
- GNOME_CANVAS_ITEM_NEED_AFFINE = 1 << 9,
- GNOME_CANVAS_ITEM_NEED_CLIP = 1 << 10,
- GNOME_CANVAS_ITEM_NEED_VIS = 1 << 11,
- GNOME_CANVAS_ITEM_AFFINE_FULL = 1 << 12
-};
+typedef enum {
+ GNOME_CANVAS_ITEM_REALIZED = 1 << 0,
+ GNOME_CANVAS_ITEM_MAPPED = 1 << 1,
+ GNOME_CANVAS_ITEM_ALWAYS_REDRAW = 1 << 2,
+ GNOME_CANVAS_ITEM_VISIBLE = 1 << 3,
+ GNOME_CANVAS_ITEM_NEED_UPDATE = 1 << 4,
+ GNOME_CANVAS_ITEM_NEED_AFFINE = 1 << 5,
+ GNOME_CANVAS_ITEM_NEED_CLIP = 1 << 6,
+ GNOME_CANVAS_ITEM_NEED_VIS = 1 << 7,
+ GNOME_CANVAS_ITEM_AFFINE_FULL = 1 << 8
+} GnomeCanvasItemFlags;
/* Update flags for items */
enum {
@@ -161,6 +161,10 @@ struct _GnomeCanvasItem {
/* Bounding box for this item (in canvas coordinates) */
double x1, y1, x2, y2;
+
+ /* XXX GtkObject flags are sealed now, so we have to provide
+ * our own. This breaks ABI compatibility with upstream. */
+ GnomeCanvasItemFlags flags;
};
struct _GnomeCanvasItemClass {