add goocanvas bindings, patch by Roberto Majadas
authorJuerg Billeter <j@bitron.ch>
Sun, 2 Mar 2008 12:06:40 +0000 (12:06 +0000)
committerJürg Billeter <juergbi@src.gnome.org>
Sun, 2 Mar 2008 12:06:40 +0000 (12:06 +0000)
2008-03-02  Juerg Billeter  <j@bitron.ch>

* vapi/Makefile.am, vapi/goocanvas.deps, vapi/goocanvas.vapi,
  vapi/packages/goocanvas/: add goocanvas bindings,
  patch by Roberto Majadas

svn path=/trunk/; revision=1085

ChangeLog
vapi/Makefile.am
vapi/goocanvas.deps [new file with mode: 0644]
vapi/goocanvas.vapi [new file with mode: 0644]
vapi/packages/goocanvas/goocanvas.deps [new file with mode: 0644]
vapi/packages/goocanvas/goocanvas.files [new file with mode: 0644]
vapi/packages/goocanvas/goocanvas.gi [new file with mode: 0644]
vapi/packages/goocanvas/goocanvas.metadata [new file with mode: 0644]
vapi/packages/goocanvas/goocanvas.namespace [new file with mode: 0644]

index f95decc..b66cb60 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,11 @@
 2008-03-02  Jürg Billeter  <j@bitron.ch>
 
+       * vapi/Makefile.am, vapi/goocanvas.deps, vapi/goocanvas.vapi,
+         vapi/packages/goocanvas/: add goocanvas bindings,
+         patch by Roberto Majadas
+
+2008-03-02  Jürg Billeter  <j@bitron.ch>
+
        * vala/valaintegertype.vala: allow implicit conversion from 0 to
          enum and flags types
 
index 97f9c0f..3fe0c3a 100644 (file)
@@ -28,6 +28,8 @@ dist_vapi_DATA = \
        gnome-desktop-2.0.deps \
        gnome-desktop-2.0.vapi \
        gnome-vfs-2.0.vapi \
+       goocanvas.deps \
+       goocanvas.vapi \
        gstreamer-0.10.vapi \
        gstreamer-audio-0.10.deps \
        gstreamer-audio-0.10.vapi \
diff --git a/vapi/goocanvas.deps b/vapi/goocanvas.deps
new file mode 100644 (file)
index 0000000..f0cf8af
--- /dev/null
@@ -0,0 +1,6 @@
+atk
+cairo
+pango
+gdk-2.0
+gtk+-2.0
+gdk-pixbuf-2.0
diff --git a/vapi/goocanvas.vapi b/vapi/goocanvas.vapi
new file mode 100644 (file)
index 0000000..f3559ec
--- /dev/null
@@ -0,0 +1,855 @@
+/* goocanvas.vapi generated by lt-vapigen, do not modify. */
+
+[CCode (cprefix = "Goo", lower_case_cprefix = "goo_")]
+namespace Goo {
+       [CCode (cprefix = "CAIRO_ANTIALIAS_", cheader_filename = "goocanvas.h")]
+       public enum CairoAntialias {
+               DEFAULT,
+               NONE,
+               GRAY,
+               SUBPIXEL,
+       }
+       [CCode (cprefix = "CAIRO_FILL_RULE_", cheader_filename = "goocanvas.h")]
+       public enum CairoFillRule {
+               WINDING,
+               EVEN_ODD,
+       }
+       [CCode (cprefix = "CAIRO_HINT_METRICS_", cheader_filename = "goocanvas.h")]
+       public enum CairoHintMetrics {
+               DEFAULT,
+               OFF,
+               ON,
+       }
+       [CCode (cprefix = "CAIRO_LINE_CAP_", cheader_filename = "goocanvas.h")]
+       public enum CairoLineCap {
+               BUTT,
+               ROUND,
+               SQUARE,
+       }
+       [CCode (cprefix = "CAIRO_LINE_JOIN_", cheader_filename = "goocanvas.h")]
+       public enum CairoLineJoin {
+               MITER,
+               ROUND,
+               BEVEL,
+       }
+       [CCode (cprefix = "CAIRO_OPERATOR_", cheader_filename = "goocanvas.h")]
+       public enum CairoOperator {
+               CLEAR,
+               SOURCE,
+               OVER,
+               IN,
+               OUT,
+               ATOP,
+               DEST,
+               DEST_OVER,
+               DEST_IN,
+               DEST_OUT,
+               DEST_ATOP,
+               XOR,
+               ADD,
+               SATURATE,
+       }
+       [CCode (cprefix = "GOO_CANVAS_ANIMATE_", cheader_filename = "goocanvas.h")]
+       public enum CanvasAnimateType {
+               FREEZE,
+               RESET,
+               RESTART,
+               BOUNCE,
+       }
+       [CCode (cprefix = "GOO_CANVAS_ITEM_", cheader_filename = "goocanvas.h")]
+       public enum CanvasItemVisibility {
+               HIDDEN,
+               INVISIBLE,
+               VISIBLE,
+               VISIBLE_ABOVE_THRESHOLD,
+       }
+       [CCode (cprefix = "GOO_CANVAS_PATH_", cheader_filename = "goocanvas.h")]
+       public enum CanvasPathCommandType {
+               MOVE_TO,
+               CLOSE_PATH,
+               LINE_TO,
+               HORIZONTAL_LINE_TO,
+               VERTICAL_LINE_TO,
+               CURVE_TO,
+               SMOOTH_CURVE_TO,
+               QUADRATIC_CURVE_TO,
+               SMOOTH_QUADRATIC_CURVE_TO,
+               ELLIPTICAL_ARC,
+       }
+       [CCode (cprefix = "GOO_CANVAS_EVENTS_", cheader_filename = "goocanvas.h")]
+       [Flags]
+       public enum CanvasPointerEvents {
+               VISIBLE_MASK,
+               PAINTED_MASK,
+               FILL_MASK,
+               STROKE_MASK,
+               NONE,
+               VISIBLE_PAINTED,
+               VISIBLE_FILL,
+               VISIBLE_STROKE,
+               VISIBLE,
+               PAINTED,
+               FILL,
+               STROKE,
+               ALL,
+       }
+       [CCode (cheader_filename = "goocanvas.h")]
+       public class CanvasEllipseData {
+               public double center_x;
+               public double center_y;
+               public double radius_x;
+               public double radius_y;
+       }
+       [CCode (cheader_filename = "goocanvas.h")]
+       public class CanvasImageData {
+               public weak Cairo.Pattern pattern;
+               public double x;
+               public double y;
+               public double width;
+               public double height;
+       }
+       [CCode (cheader_filename = "goocanvas.h")]
+       public class CanvasItemSimpleData {
+               public weak Goo.CanvasStyle style;
+               public Cairo.Matrix transform;
+               public weak GLib.Array clip_path_commands;
+               public weak string tooltip;
+               public double visibility_threshold;
+               public uint visibility;
+               public uint pointer_events;
+               public uint can_focus;
+               public uint own_style;
+               public uint clip_fill_rule;
+               public uint cache_setting;
+               public uint has_tooltip;
+       }
+       [CCode (ref_function = "goo_canvas_line_dash_ref", unref_function = "goo_canvas_line_dash_unref", cheader_filename = "goocanvas.h")]
+       public class CanvasLineDash {
+               public int ref_count;
+               public int num_dashes;
+               public double dashes;
+               public double dash_offset;
+               public CanvasLineDash (int num_dashes);
+               [CCode (cname = "goo_canvas_line_dash_newv")]
+               public CanvasLineDash.newv (int num_dashes, double dashes);
+       }
+       [CCode (cheader_filename = "goocanvas.h")]
+       public class CanvasPathData {
+               public weak GLib.Array path_commands;
+       }
+       [CCode (cheader_filename = "goocanvas.h")]
+       public class CanvasPolylineArrowData {
+               public double arrow_width;
+               public double arrow_length;
+               public double arrow_tip_length;
+               [NoArrayLength]
+               public weak double[] line_start;
+               [NoArrayLength]
+               public weak double[] line_end;
+               [NoArrayLength]
+               public weak double[] start_arrow_coords;
+               [NoArrayLength]
+               public weak double[] end_arrow_coords;
+       }
+       [CCode (cheader_filename = "goocanvas.h")]
+       public class CanvasPolylineData {
+               public double coords;
+               public weak Goo.CanvasPolylineArrowData arrow_data;
+               public uint num_points;
+               public uint close_path;
+               public uint start_arrow;
+               public uint end_arrow;
+               public uint reconfigure_arrows;
+       }
+       [CCode (cheader_filename = "goocanvas.h")]
+       public class CanvasRectData {
+               public double x;
+               public double y;
+               public double width;
+               public double height;
+               public double radius_x;
+               public double radius_y;
+       }
+       [CCode (cheader_filename = "goocanvas.h")]
+       public class CanvasStyleProperty {
+               public GLib.Quark id;
+               public GLib.Value value;
+       }
+       [CCode (cheader_filename = "goocanvas.h")]
+       public class CanvasTableData {
+               public double width;
+               public double height;
+               [NoArrayLength]
+               public weak Goo.CanvasTableDimension[] dimensions;
+               public double border_width;
+               public weak GLib.Array children;
+               public weak Goo.CanvasTableLayoutData layout_data;
+       }
+       [CCode (cheader_filename = "goocanvas.h")]
+       public class CanvasTableDimension {
+               public int size;
+               public double default_spacing;
+               public double spacings;
+               public uint homogeneous;
+       }
+       [CCode (cheader_filename = "goocanvas.h")]
+       public class CanvasTableLayoutData {
+       }
+       [CCode (cheader_filename = "goocanvas.h")]
+       public class CanvasTextData {
+               public weak string text;
+               public double x;
+               public double y;
+               public double width;
+               public uint use_markup;
+               public uint anchor;
+               public uint alignment;
+               public uint ellipsize;
+               public uint wrap;
+       }
+       [CCode (cheader_filename = "goocanvas.h")]
+       public class CairoLineDash : GLib.Boxed {
+       }
+       [CCode (copy_function = "goo_cairo_matrix_copy", cheader_filename = "goocanvas.h")]
+       public class CairoMatrix : GLib.Boxed {
+               public static Cairo.Matrix copy (Cairo.Matrix matrix);
+       }
+       [CCode (cheader_filename = "goocanvas.h")]
+       public class CairoPattern : GLib.Boxed {
+       }
+       [CCode (cheader_filename = "goocanvas.h")]
+       public class CanvasBounds : GLib.Boxed {
+               public double x1;
+               public double y1;
+               public double x2;
+               public double y2;
+       }
+       [CCode (ref_function = "goo_canvas_points_ref", unref_function = "goo_canvas_points_unref", cheader_filename = "goocanvas.h")]
+       public class CanvasPoints : GLib.Boxed {
+               public double coords;
+               public int num_points;
+               public int ref_count;
+               public CanvasPoints (int num_points);
+       }
+       [CCode (cheader_filename = "goocanvas.h")]
+       public class Canvas : Gtk.Container, Atk.Implementor, Gtk.Buildable {
+               public weak Goo.CanvasItemModel root_item_model;
+               public weak Goo.CanvasItem root_item;
+               public weak Goo.CanvasBounds bounds;
+               public uint idle_id;
+               public uint need_update;
+               public uint need_entire_subtree_update;
+               public weak Goo.CanvasItem pointer_item;
+               public weak Goo.CanvasItem pointer_grab_item;
+               public weak Goo.CanvasItem pointer_grab_initial_item;
+               public uint pointer_grab_button;
+               public weak Goo.CanvasItem focused_item;
+               public weak Goo.CanvasItem keyboard_grab_item;
+               public weak Gdk.EventCrossing crossing_event;
+               public weak Gdk.Window canvas_window;
+               public int canvas_x_offset;
+               public int canvas_y_offset;
+               public weak Gtk.Adjustment hadjustment;
+               public weak Gtk.Adjustment vadjustment;
+               public int freeze_count;
+               public weak Gdk.Window tmp_window;
+               public weak GLib.HashTable model_to_item;
+               public double device_to_pixels_x;
+               public double device_to_pixels_y;
+               public weak GLib.List widget_items;
+               public void convert_from_item_space (Goo.CanvasItem item, double x, double y);
+               public void convert_from_pixels (double x, double y);
+               public void convert_to_item_space (Goo.CanvasItem item, double x, double y);
+               public void convert_to_pixels (double x, double y);
+               public weak Cairo.Context create_cairo_context ();
+               public static void create_path (GLib.Array commands, Cairo.Context cr);
+               public void get_bounds (double left, double top, double right, double bottom);
+               public double get_default_line_width ();
+               public weak Goo.CanvasItem get_item (Goo.CanvasItemModel model);
+               public weak Goo.CanvasItem get_item_at (double x, double y, bool is_pointer_event);
+               public weak GLib.List get_items_at (double x, double y, bool is_pointer_event);
+               public weak GLib.List get_items_in_area (Goo.CanvasBounds area, bool inside_area, bool allow_overlaps, bool include_containers);
+               public weak Goo.CanvasItem get_root_item ();
+               public weak Goo.CanvasItemModel get_root_item_model ();
+               public double get_scale ();
+               public void grab_focus (Goo.CanvasItem item);
+               public Gdk.GrabStatus keyboard_grab (Goo.CanvasItem item, bool owner_events, uint time);
+               public void keyboard_ungrab (Goo.CanvasItem item, uint time);
+               public static void marshal_BOOLEAN__BOXED (GLib.Closure closure, GLib.Value return_value, uint n_param_values, GLib.Value param_values, pointer invocation_hint, pointer marshal_data);
+               public static void marshal_BOOLEAN__OBJECT_BOXED (GLib.Closure closure, GLib.Value return_value, uint n_param_values, GLib.Value param_values, pointer invocation_hint, pointer marshal_data);
+               public static void marshal_VOID__INT_INT (GLib.Closure closure, GLib.Value return_value, uint n_param_values, GLib.Value param_values, pointer invocation_hint, pointer marshal_data);
+               public static void marshal_VOID__OBJECT_OBJECT (GLib.Closure closure, GLib.Value return_value, uint n_param_values, GLib.Value param_values, pointer invocation_hint, pointer marshal_data);
+               public Canvas ();
+               public static weak GLib.Array parse_path_data (string path_data);
+               public Gdk.GrabStatus pointer_grab (Goo.CanvasItem item, Gdk.EventMask event_mask, Gdk.Cursor cursor, uint time);
+               public void pointer_ungrab (Goo.CanvasItem item, uint time);
+               public void register_widget_item (Goo.CanvasWidget witem);
+               public void render (Cairo.Context cr, Goo.CanvasBounds bounds, double scale);
+               public void request_redraw (Goo.CanvasBounds bounds);
+               public void request_update ();
+               public void scroll_to (double left, double top);
+               public void set_bounds (double left, double top, double right, double bottom);
+               public void set_root_item (Goo.CanvasItem item);
+               public void set_root_item_model (Goo.CanvasItemModel model);
+               public void set_scale (double scale);
+               public void unregister_item (Goo.CanvasItemModel model);
+               public void unregister_widget_item (Goo.CanvasWidget witem);
+               public void update ();
+               public virtual weak Goo.CanvasItem create_item (Goo.CanvasItemModel model);
+               [NoAccessorMethod]
+               public weak Gtk.AnchorType anchor { get; set; }
+               [NoAccessorMethod]
+               public weak bool automatic_bounds { get; set; }
+               [NoAccessorMethod]
+               public weak string background_color { set; }
+               [NoAccessorMethod]
+               public weak uint background_color_rgb { set; }
+               [NoAccessorMethod]
+               public weak bool bounds_from_origin { get; set; }
+               [NoAccessorMethod]
+               public weak double bounds_padding { get; set; }
+               [NoAccessorMethod]
+               public weak bool integer_layout { get; set; }
+               [NoAccessorMethod]
+               public weak double resolution_x { get; set; }
+               [NoAccessorMethod]
+               public weak double resolution_y { get; set; }
+               public weak double scale { get; set; }
+               [NoAccessorMethod]
+               public weak double scale_x { get; set; }
+               [NoAccessorMethod]
+               public weak double scale_y { get; set; }
+               [NoAccessorMethod]
+               public weak Gtk.Unit units { get; set; }
+               [NoAccessorMethod]
+               public weak double x1 { get; set; }
+               [NoAccessorMethod]
+               public weak double x2 { get; set; }
+               [NoAccessorMethod]
+               public weak double y1 { get; set; }
+               [NoAccessorMethod]
+               public weak double y2 { get; set; }
+               public signal void item_created (Goo.CanvasItem item, Goo.CanvasItemModel model);
+               public signal void set_scroll_adjustments (Gtk.Adjustment hadjustment, Gtk.Adjustment vadjustment);
+       }
+       [CCode (cheader_filename = "goocanvas.h")]
+       public class CanvasEllipse : Goo.CanvasItemSimple, Goo.CanvasItem {
+               public weak Goo.CanvasEllipseData ellipse_data;
+               public CanvasEllipse (Goo.CanvasItem parent, double center_x, double center_y, double radius_x, double radius_y);
+               [NoAccessorMethod]
+               public weak double center_x { get; set; }
+               [NoAccessorMethod]
+               public weak double center_y { get; set; }
+               [NoAccessorMethod]
+               public weak double radius_x { get; set; }
+               [NoAccessorMethod]
+               public weak double radius_y { get; set; }
+       }
+       [CCode (cheader_filename = "goocanvas.h")]
+       public class CanvasEllipseModel : Goo.CanvasItemModelSimple, Goo.CanvasItemModel {
+               public weak Goo.CanvasEllipseData ellipse_data;
+               public CanvasEllipseModel (Goo.CanvasItemModel parent, double center_x, double center_y, double radius_x, double radius_y);
+               [NoAccessorMethod]
+               public weak double center_x { get; set; }
+               [NoAccessorMethod]
+               public weak double center_y { get; set; }
+               [NoAccessorMethod]
+               public weak double radius_x { get; set; }
+               [NoAccessorMethod]
+               public weak double radius_y { get; set; }
+       }
+       [CCode (cheader_filename = "goocanvas.h")]
+       public class CanvasGroup : Goo.CanvasItemSimple, Goo.CanvasItem {
+               public weak GLib.PtrArray items;
+               public CanvasGroup (Goo.CanvasItem parent);
+       }
+       [CCode (cheader_filename = "goocanvas.h")]
+       public class CanvasGroupModel : Goo.CanvasItemModelSimple, Goo.CanvasItemModel {
+               public weak GLib.PtrArray children;
+               public CanvasGroupModel (Goo.CanvasItemModel parent);
+       }
+       [CCode (cheader_filename = "goocanvas.h")]
+       public class CanvasImage : Goo.CanvasItemSimple, Goo.CanvasItem {
+               public weak Goo.CanvasImageData image_data;
+               public CanvasImage (Goo.CanvasItem parent, Gdk.Pixbuf pixbuf, double x, double y);
+               [NoAccessorMethod]
+               public weak double height { get; set; }
+               [NoAccessorMethod]
+               public weak Goo.CairoPattern pattern { get; set; }
+               [NoAccessorMethod]
+               public weak Gdk.Pixbuf pixbuf { set; }
+               [NoAccessorMethod]
+               public weak double width { get; set; }
+               [NoAccessorMethod]
+               public weak double x { get; set; }
+               [NoAccessorMethod]
+               public weak double y { get; set; }
+       }
+       [CCode (cheader_filename = "goocanvas.h")]
+       public class CanvasImageModel : Goo.CanvasItemModelSimple, Goo.CanvasItemModel {
+               public weak Goo.CanvasImageData image_data;
+               public CanvasImageModel (Goo.CanvasItemModel parent, Gdk.Pixbuf pixbuf, double x, double y);
+               [NoAccessorMethod]
+               public weak double height { get; set; }
+               [NoAccessorMethod]
+               public weak Goo.CairoPattern pattern { get; set; }
+               [NoAccessorMethod]
+               public weak Gdk.Pixbuf pixbuf { set; }
+               [NoAccessorMethod]
+               public weak double width { get; set; }
+               [NoAccessorMethod]
+               public weak double x { get; set; }
+               [NoAccessorMethod]
+               public weak double y { get; set; }
+       }
+       [CCode (cheader_filename = "goocanvas.h")]
+       public class CanvasItemModelSimple : GLib.Object, Goo.CanvasItemModel {
+               public weak Goo.CanvasItemModel parent;
+               public weak Goo.CanvasItemSimpleData simple_data;
+               public weak string title;
+               public weak string description;
+               [NoAccessorMethod]
+               public weak Goo.CairoAntialias antialias { get; set; }
+               [NoAccessorMethod]
+               public weak Goo.CairoFillRule clip_fill_rule { get; set; }
+               [NoAccessorMethod]
+               public weak string clip_path { set; }
+               [NoAccessorMethod]
+               public weak string fill_color { set; }
+               [NoAccessorMethod]
+               public weak uint fill_color_rgba { set; }
+               [NoAccessorMethod]
+               public weak Goo.CairoPattern fill_pattern { get; set; }
+               [NoAccessorMethod]
+               public weak Gdk.Pixbuf fill_pixbuf { set; }
+               [NoAccessorMethod]
+               public weak Goo.CairoFillRule fill_rule { get; set; }
+               [NoAccessorMethod]
+               public weak string font { get; set; }
+               [NoAccessorMethod]
+               public weak Pango.FontDescription font_desc { get; set; }
+               [NoAccessorMethod]
+               public weak Goo.CairoHintMetrics hint_metrics { get; set; }
+               [NoAccessorMethod]
+               public weak Goo.CairoLineCap line_cap { get; set; }
+               [NoAccessorMethod]
+               public weak Goo.CairoLineDash line_dash { get; set; }
+               [NoAccessorMethod]
+               public weak Goo.CairoLineJoin line_join { get; set; }
+               [NoAccessorMethod]
+               public weak double line_join_miter_limit { get; set; }
+               [NoAccessorMethod]
+               public weak double line_width { get; set; }
+               [NoAccessorMethod]
+               public weak Goo.CairoOperator operator { get; set; }
+               [NoAccessorMethod]
+               public weak string stroke_color { set; }
+               [NoAccessorMethod]
+               public weak uint stroke_color_rgba { set; }
+               [NoAccessorMethod]
+               public weak Goo.CairoPattern stroke_pattern { get; set; }
+               [NoAccessorMethod]
+               public weak Gdk.Pixbuf stroke_pixbuf { set; }
+       }
+       [CCode (cheader_filename = "goocanvas.h")]
+       public class CanvasItemSimple : GLib.Object, Goo.CanvasItem {
+               public weak Goo.Canvas canvas;
+               public weak Goo.CanvasItem parent;
+               public weak Goo.CanvasItemModelSimple model;
+               public weak Goo.CanvasItemSimpleData simple_data;
+               public weak Goo.CanvasBounds bounds;
+               public uint need_update;
+               public uint need_entire_subtree_update;
+               public void changed (bool recompute_bounds);
+               public bool check_in_path (double x, double y, Cairo.Context cr, Goo.CanvasPointerEvents pointer_events);
+               public void check_style ();
+               public double get_line_width ();
+               public void get_path_bounds (Cairo.Context cr, Goo.CanvasBounds bounds);
+               public void paint_path (Cairo.Context cr);
+               public void set_model (Goo.CanvasItemModel model);
+               public void user_bounds_to_device (Cairo.Context cr, Goo.CanvasBounds bounds);
+               public void user_bounds_to_parent (Cairo.Context cr, Goo.CanvasBounds bounds);
+               [NoWrapper]
+               public virtual void simple_create_path (Cairo.Context cr);
+               [NoWrapper]
+               public virtual bool simple_is_item_at (double x, double y, Cairo.Context cr, bool is_pointer_event);
+               [NoWrapper]
+               public virtual void simple_paint (Cairo.Context cr, Goo.CanvasBounds bounds);
+               [NoWrapper]
+               public virtual void simple_update (Cairo.Context cr);
+               [NoAccessorMethod]
+               public weak Goo.CairoAntialias antialias { get; set; }
+               [NoAccessorMethod]
+               public weak Goo.CairoFillRule clip_fill_rule { get; set; }
+               [NoAccessorMethod]
+               public weak string clip_path { set; }
+               [NoAccessorMethod]
+               public weak string fill_color { set; }
+               [NoAccessorMethod]
+               public weak uint fill_color_rgba { set; }
+               [NoAccessorMethod]
+               public weak Goo.CairoPattern fill_pattern { get; set; }
+               [NoAccessorMethod]
+               public weak Gdk.Pixbuf fill_pixbuf { set; }
+               [NoAccessorMethod]
+               public weak Goo.CairoFillRule fill_rule { get; set; }
+               [NoAccessorMethod]
+               public weak string font { get; set; }
+               [NoAccessorMethod]
+               public weak Pango.FontDescription font_desc { get; set; }
+               [NoAccessorMethod]
+               public weak Goo.CairoHintMetrics hint_metrics { get; set; }
+               [NoAccessorMethod]
+               public weak Goo.CairoLineCap line_cap { get; set; }
+               [NoAccessorMethod]
+               public weak Goo.CairoLineDash line_dash { get; set; }
+               [NoAccessorMethod]
+               public weak Goo.CairoLineJoin line_join { get; set; }
+               [NoAccessorMethod]
+               public weak double line_join_miter_limit { get; set; }
+               [NoAccessorMethod]
+               public weak double line_width { get; set; }
+               [NoAccessorMethod]
+               public weak Goo.CairoOperator operator { get; set; }
+               [NoAccessorMethod]
+               public weak string stroke_color { set; }
+               [NoAccessorMethod]
+               public weak uint stroke_color_rgba { set; }
+               [NoAccessorMethod]
+               public weak Goo.CairoPattern stroke_pattern { get; set; }
+               [NoAccessorMethod]
+               public weak Gdk.Pixbuf stroke_pixbuf { set; }
+       }
+       [CCode (cheader_filename = "goocanvas.h")]
+       public class CanvasPath : Goo.CanvasItemSimple, Goo.CanvasItem {
+               public weak Goo.CanvasPathData path_data;
+               public CanvasPath (Goo.CanvasItem parent, string path_data);
+               [NoAccessorMethod]
+               public weak string data { set; }
+       }
+       [CCode (cheader_filename = "goocanvas.h")]
+       public class CanvasPathModel : Goo.CanvasItemModelSimple, Goo.CanvasItemModel {
+               public weak Goo.CanvasPathData path_data;
+               public CanvasPathModel (Goo.CanvasItemModel parent, string path_data);
+               [NoAccessorMethod]
+               public weak string data { set; }
+       }
+       [CCode (cheader_filename = "goocanvas.h")]
+       public class CanvasPolyline : Goo.CanvasItemSimple, Goo.CanvasItem {
+               public weak Goo.CanvasPolylineData polyline_data;
+               public CanvasPolyline (Goo.CanvasItem parent, bool close_path, int num_points);
+               public CanvasPolyline.line (Goo.CanvasItem parent, double x1, double y1, double x2, double y2);
+               [NoAccessorMethod]
+               public weak double arrow_length { get; set; }
+               [NoAccessorMethod]
+               public weak double arrow_tip_length { get; set; }
+               [NoAccessorMethod]
+               public weak double arrow_width { get; set; }
+               [NoAccessorMethod]
+               public weak bool close_path { get; set; }
+               [NoAccessorMethod]
+               public weak bool end_arrow { get; set; }
+               [NoAccessorMethod]
+               public weak Goo.CanvasPoints points { get; set; }
+               [NoAccessorMethod]
+               public weak bool start_arrow { get; set; }
+       }
+       [CCode (cheader_filename = "goocanvas.h")]
+       public class CanvasPolylineModel : Goo.CanvasItemModelSimple, Goo.CanvasItemModel {
+               public weak Goo.CanvasPolylineData polyline_data;
+               public CanvasPolylineModel (Goo.CanvasItemModel parent, bool close_path, int num_points);
+               public CanvasPolylineModel.line (Goo.CanvasItemModel parent, double x1, double y1, double x2, double y2);
+               [NoAccessorMethod]
+               public weak double arrow_length { get; set; }
+               [NoAccessorMethod]
+               public weak double arrow_tip_length { get; set; }
+               [NoAccessorMethod]
+               public weak double arrow_width { get; set; }
+               [NoAccessorMethod]
+               public weak bool close_path { get; set; }
+               [NoAccessorMethod]
+               public weak bool end_arrow { get; set; }
+               [NoAccessorMethod]
+               public weak Goo.CanvasPoints points { get; set; }
+               [NoAccessorMethod]
+               public weak bool start_arrow { get; set; }
+       }
+       [CCode (cheader_filename = "goocanvas.h")]
+       public class CanvasRect : Goo.CanvasItemSimple, Goo.CanvasItem {
+               public weak Goo.CanvasRectData rect_data;
+               public CanvasRect (Goo.CanvasItem parent, double x, double y, double width, double height);
+               [NoAccessorMethod]
+               public weak double height { get; set; }
+               [NoAccessorMethod]
+               public weak double radius_x { get; set; }
+               [NoAccessorMethod]
+               public weak double radius_y { get; set; }
+               [NoAccessorMethod]
+               public weak double width { get; set; }
+               [NoAccessorMethod]
+               public weak double x { get; set; }
+               [NoAccessorMethod]
+               public weak double y { get; set; }
+       }
+       [CCode (cheader_filename = "goocanvas.h")]
+       public class CanvasRectModel : Goo.CanvasItemModelSimple, Goo.CanvasItemModel {
+               public weak Goo.CanvasRectData rect_data;
+               public CanvasRectModel (Goo.CanvasItemModel parent, double x, double y, double width, double height);
+               [NoAccessorMethod]
+               public weak double height { get; set; }
+               [NoAccessorMethod]
+               public weak double radius_x { get; set; }
+               [NoAccessorMethod]
+               public weak double radius_y { get; set; }
+               [NoAccessorMethod]
+               public weak double width { get; set; }
+               [NoAccessorMethod]
+               public weak double x { get; set; }
+               [NoAccessorMethod]
+               public weak double y { get; set; }
+       }
+       [CCode (cheader_filename = "goocanvas.h")]
+       public class CanvasStyle : GLib.Object {
+               public weak Goo.CanvasStyle parent;
+               public weak GLib.Array properties;
+               public weak Goo.CanvasStyle copy ();
+               public weak Goo.CanvasStyle get_parent ();
+               public GLib.Value get_property (GLib.Quark property_id);
+               public CanvasStyle ();
+               public bool set_fill_options (Cairo.Context cr);
+               public void set_parent (Goo.CanvasStyle parent);
+               public void set_property (GLib.Quark property_id, GLib.Value value);
+               public bool set_stroke_options (Cairo.Context cr);
+       }
+       [CCode (cheader_filename = "goocanvas.h")]
+       public class CanvasTable : Goo.CanvasGroup, Goo.CanvasItem {
+               public weak Goo.CanvasTableData table_data;
+               public CanvasTable (Goo.CanvasItem parent);
+               [NoAccessorMethod]
+               public weak double column_spacing { get; set; }
+               [NoAccessorMethod]
+               public weak double height { get; set; }
+               [NoAccessorMethod]
+               public weak bool homogeneous_columns { get; set; }
+               [NoAccessorMethod]
+               public weak bool homogeneous_rows { get; set; }
+               [NoAccessorMethod]
+               public weak double row_spacing { get; set; }
+               [NoAccessorMethod]
+               public weak double width { get; set; }
+       }
+       [CCode (cheader_filename = "goocanvas.h")]
+       public class CanvasTableModel : Goo.CanvasGroupModel, Goo.CanvasItemModel {
+               public weak Goo.CanvasTableData table_data;
+               public CanvasTableModel (Goo.CanvasItemModel parent);
+               [NoAccessorMethod]
+               public weak double column_spacing { get; set; }
+               [NoAccessorMethod]
+               public weak double height { get; set; }
+               [NoAccessorMethod]
+               public weak bool homogeneous_columns { get; set; }
+               [NoAccessorMethod]
+               public weak bool homogeneous_rows { get; set; }
+               [NoAccessorMethod]
+               public weak double row_spacing { get; set; }
+               [NoAccessorMethod]
+               public weak double width { get; set; }
+       }
+       [CCode (cheader_filename = "goocanvas.h")]
+       public class CanvasText : Goo.CanvasItemSimple, Goo.CanvasItem {
+               public weak Goo.CanvasTextData text_data;
+               public double layout_width;
+               public CanvasText (Goo.CanvasItem parent, string str, double x, double y, double width, Gtk.AnchorType anchor);
+               [NoAccessorMethod]
+               public weak Pango.Alignment alignment { get; set; }
+               [NoAccessorMethod]
+               public weak Gtk.AnchorType anchor { get; set; }
+               [NoAccessorMethod]
+               public weak Pango.EllipsizeMode ellipsize { get; set; }
+               [NoAccessorMethod]
+               public weak string text { get; set; }
+               [NoAccessorMethod]
+               public weak bool use_markup { get; set; }
+               [NoAccessorMethod]
+               public weak double width { get; set; }
+               [NoAccessorMethod]
+               public weak Pango.WrapMode wrap { get; set; }
+               [NoAccessorMethod]
+               public weak double x { get; set; }
+               [NoAccessorMethod]
+               public weak double y { get; set; }
+       }
+       [CCode (cheader_filename = "goocanvas.h")]
+       public class CanvasTextModel : Goo.CanvasItemModelSimple, Goo.CanvasItemModel {
+               public weak Goo.CanvasTextData text_data;
+               public CanvasTextModel (Goo.CanvasItemModel parent, string str, double x, double y, double width, Gtk.AnchorType anchor);
+               [NoAccessorMethod]
+               public weak Pango.Alignment alignment { get; set; }
+               [NoAccessorMethod]
+               public weak Gtk.AnchorType anchor { get; set; }
+               [NoAccessorMethod]
+               public weak Pango.EllipsizeMode ellipsize { get; set; }
+               [NoAccessorMethod]
+               public weak string text { get; set; }
+               [NoAccessorMethod]
+               public weak bool use_markup { get; set; }
+               [NoAccessorMethod]
+               public weak double width { get; set; }
+               [NoAccessorMethod]
+               public weak Pango.WrapMode wrap { get; set; }
+               [NoAccessorMethod]
+               public weak double x { get; set; }
+               [NoAccessorMethod]
+               public weak double y { get; set; }
+       }
+       [CCode (cheader_filename = "goocanvas.h")]
+       public class CanvasWidget : Goo.CanvasItemSimple, Goo.CanvasItem {
+               public CanvasWidget (Goo.CanvasItem parent, Gtk.Widget widget, double x, double y, double width, double height);
+               [NoAccessorMethod]
+               public weak Gtk.AnchorType anchor { get; set; }
+               [NoAccessorMethod]
+               public weak double height { get; set; }
+               [NoAccessorMethod]
+               public weak Gtk.Widget widget { get; set; }
+               [NoAccessorMethod]
+               public weak double width { get; set; }
+               [NoAccessorMethod]
+               public weak double x { get; set; }
+               [NoAccessorMethod]
+               public weak double y { get; set; }
+       }
+       [CCode (cheader_filename = "goocanvas.h")]
+       public class CanvasPathCommand {
+               public pointer simple;
+               public pointer curve;
+               public pointer arc;
+       }
+       [CCode (cheader_filename = "goocanvas.h")]
+       public interface CanvasItem : GLib.Object {
+               public void animate (double x, double y, double scale, double degrees, bool absolute, int duration, int step_time, Goo.CanvasAnimateType type);
+               public static weak GLib.ParamSpec class_find_child_property (GLib.ObjectClass iclass, string property_name);
+               public static void class_install_child_property (GLib.ObjectClass iclass, uint property_id, GLib.ParamSpec pspec);
+               public static weak GLib.ParamSpec class_list_child_properties (GLib.ObjectClass iclass, uint n_properties);
+               public void ensure_updated ();
+               public int find_child (Goo.CanvasItem child);
+               public void get_child_properties (Goo.CanvasItem child);
+               public void get_child_properties_valist (Goo.CanvasItem child, pointer var_args);
+               public bool is_container ();
+               public void lower (Goo.CanvasItem below);
+               public void raise (Goo.CanvasItem above);
+               public void remove ();
+               public void rotate (double degrees, double cx, double cy);
+               public void scale (double sx, double sy);
+               public void set_child_properties (Goo.CanvasItem child);
+               public void set_child_properties_valist (Goo.CanvasItem child, pointer var_args);
+               public void set_simple_transform (double x, double y, double scale, double rotation);
+               public void skew_x (double degrees, double cx, double cy);
+               public void skew_y (double degrees, double cx, double cy);
+               public void stop_animation ();
+               public void translate (double tx, double ty);
+               public abstract void add_child (Goo.CanvasItem child, int position);
+               public abstract void allocate_area (Cairo.Context cr, Goo.CanvasBounds requested_area, Goo.CanvasBounds allocated_area, double x_offset, double y_offset);
+               public abstract void get_bounds (Goo.CanvasBounds bounds);
+               public abstract weak Goo.Canvas get_canvas ();
+               public abstract weak Goo.CanvasItem get_child (int child_num);
+               [NoWrapper]
+               public abstract void get_child_property (Goo.CanvasItem child, uint property_id, GLib.Value value, GLib.ParamSpec pspec);
+               public abstract weak GLib.List get_items_at (double x, double y, Cairo.Context cr, bool is_pointer_event, bool parent_is_visible, GLib.List found_items);
+               public abstract weak Goo.CanvasItemModel get_model ();
+               public abstract int get_n_children ();
+               public abstract weak Goo.CanvasItem get_parent ();
+               public abstract bool get_requested_area (Cairo.Context cr, Goo.CanvasBounds requested_area);
+               public abstract double get_requested_height (Cairo.Context cr, double width);
+               public abstract weak Goo.CanvasStyle get_style ();
+               public abstract bool get_transform (Cairo.Matrix transform);
+               public abstract bool get_transform_for_child (Goo.CanvasItem child, Cairo.Matrix transform);
+               public abstract bool is_visible ();
+               public abstract void move_child (int old_position, int new_position);
+               public abstract void paint (Cairo.Context cr, Goo.CanvasBounds bounds, double scale);
+               [NoWrapper]
+               public abstract bool query_tooltip (double x, double y, bool keyboard_tooltip, pointer tooltip);
+               public abstract void remove_child (int child_num);
+               public abstract void request_update ();
+               public abstract void set_canvas (Goo.Canvas canvas);
+               [NoWrapper]
+               public abstract void set_child_property (Goo.CanvasItem child, uint property_id, GLib.Value value, GLib.ParamSpec pspec);
+               public abstract void set_model (Goo.CanvasItemModel model);
+               public abstract void set_parent (Goo.CanvasItem parent);
+               public abstract void set_style (Goo.CanvasStyle style);
+               public abstract void set_transform (Cairo.Matrix transform);
+               public abstract void update (bool entire_tree, Cairo.Context cr, Goo.CanvasBounds bounds);
+               public weak bool can_focus { get; set; }
+               public weak string description { get; set; }
+               public weak Goo.CanvasItem parent { get; set; }
+               public weak Goo.CanvasPointerEvents pointer_events { get; set; }
+               public weak string title { get; set; }
+               public weak Goo.CairoMatrix transform { get; set; }
+               public weak Goo.CanvasItemVisibility visibility { get; set; }
+               public weak double visibility_threshold { get; set; }
+               public signal bool button_press_event (Goo.CanvasItem target, Gdk.Event event);
+               public signal bool button_release_event (Goo.CanvasItem target, Gdk.Event event);
+               public signal void child_notify (GLib.ParamSpec pspec);
+               public signal bool enter_notify_event (Goo.CanvasItem target, Gdk.Event event);
+               public signal bool focus_in_event (Goo.CanvasItem target, Gdk.Event event);
+               public signal bool focus_out_event (Goo.CanvasItem target, Gdk.Event event);
+               public signal bool grab_broken_event (Goo.CanvasItem target, Gdk.Event event);
+               public signal bool key_press_event (Goo.CanvasItem target, Gdk.Event event);
+               public signal bool key_release_event (Goo.CanvasItem target, Gdk.Event event);
+               public signal bool leave_notify_event (Goo.CanvasItem target, Gdk.Event event);
+               public signal bool motion_notify_event (Goo.CanvasItem target, Gdk.Event event);
+       }
+       [CCode (cheader_filename = "goocanvas.h")]
+       public interface CanvasItemModel : GLib.Object {
+               public void animate (double x, double y, double scale, double degrees, bool absolute, int duration, int step_time, Goo.CanvasAnimateType type);
+               public static weak GLib.ParamSpec class_find_child_property (GLib.ObjectClass mclass, string property_name);
+               public static void class_install_child_property (GLib.ObjectClass mclass, uint property_id, GLib.ParamSpec pspec);
+               public static weak GLib.ParamSpec class_list_child_properties (GLib.ObjectClass mclass, uint n_properties);
+               public int find_child (Goo.CanvasItemModel child);
+               public void get_child_properties (Goo.CanvasItemModel child);
+               public void get_child_properties_valist (Goo.CanvasItemModel child, pointer var_args);
+               public bool is_container ();
+               public void lower (Goo.CanvasItemModel below);
+               public void raise (Goo.CanvasItemModel above);
+               public void remove ();
+               public void rotate (double degrees, double cx, double cy);
+               public void scale (double sx, double sy);
+               public void set_child_properties (Goo.CanvasItemModel child);
+               public void set_child_properties_valist (Goo.CanvasItemModel child, pointer var_args);
+               public void set_simple_transform (double x, double y, double scale, double rotation);
+               public void skew_x (double degrees, double cx, double cy);
+               public void skew_y (double degrees, double cx, double cy);
+               public void stop_animation ();
+               public void translate (double tx, double ty);
+               public abstract void add_child (Goo.CanvasItemModel child, int position);
+               [NoWrapper]
+               public abstract weak Goo.CanvasItem create_item (Goo.Canvas canvas);
+               public abstract weak Goo.CanvasItemModel get_child (int child_num);
+               [NoWrapper]
+               public abstract void get_child_property (Goo.CanvasItemModel child, uint property_id, GLib.Value value, GLib.ParamSpec pspec);
+               public abstract int get_n_children ();
+               public abstract weak Goo.CanvasItemModel get_parent ();
+               public abstract weak Goo.CanvasStyle get_style ();
+               public abstract bool get_transform (Cairo.Matrix transform);
+               public abstract void move_child (int old_position, int new_position);
+               public abstract void remove_child (int child_num);
+               [NoWrapper]
+               public abstract void set_child_property (Goo.CanvasItemModel child, uint property_id, GLib.Value value, GLib.ParamSpec pspec);
+               public abstract void set_parent (Goo.CanvasItemModel parent);
+               public abstract void set_style (Goo.CanvasStyle style);
+               public abstract void set_transform (Cairo.Matrix transform);
+               public weak bool can_focus { get; set; }
+               public weak string description { get; set; }
+               public weak Goo.CanvasItemModel parent { get; set; }
+               public weak Goo.CanvasPointerEvents pointer_events { get; set; }
+               public weak string title { get; set; }
+               public weak Goo.CairoMatrix transform { get; set; }
+               public weak Goo.CanvasItemVisibility visibility { get; set; }
+               public weak double visibility_threshold { get; set; }
+               public signal void changed (bool recompute_bounds);
+               public signal void child_added (int child_num);
+               public signal void child_moved (int old_child_num, int new_child_num);
+               public signal void child_notify (GLib.ParamSpec pspec);
+               public signal void child_removed (int child_num);
+       }
+       public const int NUM_ARROW_POINTS;
+}
diff --git a/vapi/packages/goocanvas/goocanvas.deps b/vapi/packages/goocanvas/goocanvas.deps
new file mode 100644 (file)
index 0000000..f0cf8af
--- /dev/null
@@ -0,0 +1,6 @@
+atk
+cairo
+pango
+gdk-2.0
+gtk+-2.0
+gdk-pixbuf-2.0
diff --git a/vapi/packages/goocanvas/goocanvas.files b/vapi/packages/goocanvas/goocanvas.files
new file mode 100644 (file)
index 0000000..24363cc
--- /dev/null
@@ -0,0 +1,2 @@
+include/goocanvas-1.0
+lib/libgoocanvas.so
diff --git a/vapi/packages/goocanvas/goocanvas.gi b/vapi/packages/goocanvas/goocanvas.gi
new file mode 100644 (file)
index 0000000..60352af
--- /dev/null
@@ -0,0 +1,2269 @@
+<?xml version="1.0"?>
+<api version="1.0">
+       <namespace name="Goo">
+               <struct name="GooCanvasEllipseData">
+                       <field name="center_x" type="gdouble"/>
+                       <field name="center_y" type="gdouble"/>
+                       <field name="radius_x" type="gdouble"/>
+                       <field name="radius_y" type="gdouble"/>
+               </struct>
+               <struct name="GooCanvasImageData">
+                       <field name="pattern" type="cairo_pattern_t*"/>
+                       <field name="x" type="gdouble"/>
+                       <field name="y" type="gdouble"/>
+                       <field name="width" type="gdouble"/>
+                       <field name="height" type="gdouble"/>
+               </struct>
+               <struct name="GooCanvasItemSimpleData">
+                       <field name="style" type="GooCanvasStyle*"/>
+                       <field name="transform" type="cairo_matrix_t*"/>
+                       <field name="clip_path_commands" type="GArray*"/>
+                       <field name="tooltip" type="gchar*"/>
+                       <field name="visibility_threshold" type="gdouble"/>
+                       <field name="visibility" type="guint"/>
+                       <field name="pointer_events" type="guint"/>
+                       <field name="can_focus" type="guint"/>
+                       <field name="own_style" type="guint"/>
+                       <field name="clip_fill_rule" type="guint"/>
+                       <field name="cache_setting" type="guint"/>
+                       <field name="has_tooltip" type="guint"/>
+               </struct>
+               <struct name="GooCanvasLineDash">
+                       <method name="new" symbol="goo_canvas_line_dash_new">
+                               <return-type type="GooCanvasLineDash*"/>
+                               <parameters>
+                                       <parameter name="num_dashes" type="gint"/>
+                               </parameters>
+                       </method>
+                       <method name="newv" symbol="goo_canvas_line_dash_newv">
+                               <return-type type="GooCanvasLineDash*"/>
+                               <parameters>
+                                       <parameter name="num_dashes" type="gint"/>
+                                       <parameter name="dashes" type="double*"/>
+                               </parameters>
+                       </method>
+                       <method name="ref" symbol="goo_canvas_line_dash_ref">
+                               <return-type type="GooCanvasLineDash*"/>
+                               <parameters>
+                                       <parameter name="dash" type="GooCanvasLineDash*"/>
+                               </parameters>
+                       </method>
+                       <method name="unref" symbol="goo_canvas_line_dash_unref">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="dash" type="GooCanvasLineDash*"/>
+                               </parameters>
+                       </method>
+                       <field name="ref_count" type="int"/>
+                       <field name="num_dashes" type="int"/>
+                       <field name="dashes" type="double*"/>
+                       <field name="dash_offset" type="double"/>
+               </struct>
+               <struct name="GooCanvasPathData">
+                       <field name="path_commands" type="GArray*"/>
+               </struct>
+               <struct name="GooCanvasPolylineArrowData">
+                       <field name="arrow_width" type="gdouble"/>
+                       <field name="arrow_length" type="gdouble"/>
+                       <field name="arrow_tip_length" type="gdouble"/>
+                       <field name="line_start" type="gdouble[]"/>
+                       <field name="line_end" type="gdouble[]"/>
+                       <field name="start_arrow_coords" type="gdouble[]"/>
+                       <field name="end_arrow_coords" type="gdouble[]"/>
+               </struct>
+               <struct name="GooCanvasPolylineData">
+                       <field name="coords" type="gdouble*"/>
+                       <field name="arrow_data" type="GooCanvasPolylineArrowData*"/>
+                       <field name="num_points" type="guint"/>
+                       <field name="close_path" type="guint"/>
+                       <field name="start_arrow" type="guint"/>
+                       <field name="end_arrow" type="guint"/>
+                       <field name="reconfigure_arrows" type="guint"/>
+               </struct>
+               <struct name="GooCanvasRectData">
+                       <field name="x" type="gdouble"/>
+                       <field name="y" type="gdouble"/>
+                       <field name="width" type="gdouble"/>
+                       <field name="height" type="gdouble"/>
+                       <field name="radius_x" type="gdouble"/>
+                       <field name="radius_y" type="gdouble"/>
+               </struct>
+               <struct name="GooCanvasStyleProperty">
+                       <field name="id" type="GQuark"/>
+                       <field name="value" type="GValue"/>
+               </struct>
+               <struct name="GooCanvasTableData">
+                       <field name="width" type="gdouble"/>
+                       <field name="height" type="gdouble"/>
+                       <field name="dimensions" type="GooCanvasTableDimension[]"/>
+                       <field name="border_width" type="gdouble"/>
+                       <field name="children" type="GArray*"/>
+                       <field name="layout_data" type="GooCanvasTableLayoutData*"/>
+               </struct>
+               <struct name="GooCanvasTableDimension">
+                       <field name="size" type="gint"/>
+                       <field name="default_spacing" type="gdouble"/>
+                       <field name="spacings" type="gdouble*"/>
+                       <field name="homogeneous" type="guint"/>
+               </struct>
+               <struct name="GooCanvasTableLayoutData">
+               </struct>
+               <struct name="GooCanvasTextData">
+                       <field name="text" type="gchar*"/>
+                       <field name="x" type="gdouble"/>
+                       <field name="y" type="gdouble"/>
+                       <field name="width" type="gdouble"/>
+                       <field name="use_markup" type="guint"/>
+                       <field name="anchor" type="guint"/>
+                       <field name="alignment" type="guint"/>
+                       <field name="ellipsize" type="guint"/>
+                       <field name="wrap" type="guint"/>
+               </struct>
+               <boxed name="GooCairoLineDash" type-name="GooCairoLineDash" get-type="goo_canvas_line_dash_get_type">
+               </boxed>
+               <boxed name="GooCairoMatrix" type-name="GooCairoMatrix" get-type="goo_cairo_matrix_get_type">
+                       <method name="copy" symbol="goo_cairo_matrix_copy">
+                               <return-type type="cairo_matrix_t*"/>
+                               <parameters>
+                                       <parameter name="matrix" type="cairo_matrix_t*"/>
+                               </parameters>
+                       </method>
+                       <method name="free" symbol="goo_cairo_matrix_free">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="matrix" type="cairo_matrix_t*"/>
+                               </parameters>
+                       </method>
+               </boxed>
+               <boxed name="GooCairoPattern" type-name="GooCairoPattern" get-type="goo_cairo_pattern_get_type">
+               </boxed>
+               <boxed name="GooCanvasBounds" type-name="GooCanvasBounds" get-type="goo_canvas_bounds_get_type">
+                       <field name="x1" type="gdouble"/>
+                       <field name="y1" type="gdouble"/>
+                       <field name="x2" type="gdouble"/>
+                       <field name="y2" type="gdouble"/>
+               </boxed>
+               <boxed name="GooCanvasPoints" type-name="GooCanvasPoints" get-type="goo_canvas_points_get_type">
+                       <constructor name="new" symbol="goo_canvas_points_new">
+                               <return-type type="GooCanvasPoints*"/>
+                               <parameters>
+                                       <parameter name="num_points" type="int"/>
+                               </parameters>
+                       </constructor>
+                       <method name="ref" symbol="goo_canvas_points_ref">
+                               <return-type type="GooCanvasPoints*"/>
+                               <parameters>
+                                       <parameter name="points" type="GooCanvasPoints*"/>
+                               </parameters>
+                       </method>
+                       <method name="unref" symbol="goo_canvas_points_unref">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="points" type="GooCanvasPoints*"/>
+                               </parameters>
+                       </method>
+                       <field name="coords" type="double*"/>
+                       <field name="num_points" type="int"/>
+                       <field name="ref_count" type="int"/>
+               </boxed>
+               <enum name="GooCairoAntialias">
+                       <member name="CAIRO_ANTIALIAS_DEFAULT" value="0"/>
+                       <member name="CAIRO_ANTIALIAS_NONE" value="1"/>
+                       <member name="CAIRO_ANTIALIAS_GRAY" value="2"/>
+                       <member name="CAIRO_ANTIALIAS_SUBPIXEL" value="3"/>
+               </enum>
+               <enum name="GooCairoFillRule">
+                       <member name="CAIRO_FILL_RULE_WINDING" value="0"/>
+                       <member name="CAIRO_FILL_RULE_EVEN_ODD" value="1"/>
+               </enum>
+               <enum name="GooCairoHintMetrics">
+                       <member name="CAIRO_HINT_METRICS_DEFAULT" value="0"/>
+                       <member name="CAIRO_HINT_METRICS_OFF" value="1"/>
+                       <member name="CAIRO_HINT_METRICS_ON" value="2"/>
+               </enum>
+               <enum name="GooCairoLineCap">
+                       <member name="CAIRO_LINE_CAP_BUTT" value="0"/>
+                       <member name="CAIRO_LINE_CAP_ROUND" value="1"/>
+                       <member name="CAIRO_LINE_CAP_SQUARE" value="2"/>
+               </enum>
+               <enum name="GooCairoLineJoin">
+                       <member name="CAIRO_LINE_JOIN_MITER" value="0"/>
+                       <member name="CAIRO_LINE_JOIN_ROUND" value="1"/>
+                       <member name="CAIRO_LINE_JOIN_BEVEL" value="2"/>
+               </enum>
+               <enum name="GooCairoOperator">
+                       <member name="CAIRO_OPERATOR_CLEAR" value="0"/>
+                       <member name="CAIRO_OPERATOR_SOURCE" value="1"/>
+                       <member name="CAIRO_OPERATOR_OVER" value="2"/>
+                       <member name="CAIRO_OPERATOR_IN" value="3"/>
+                       <member name="CAIRO_OPERATOR_OUT" value="4"/>
+                       <member name="CAIRO_OPERATOR_ATOP" value="5"/>
+                       <member name="CAIRO_OPERATOR_DEST" value="6"/>
+                       <member name="CAIRO_OPERATOR_DEST_OVER" value="7"/>
+                       <member name="CAIRO_OPERATOR_DEST_IN" value="8"/>
+                       <member name="CAIRO_OPERATOR_DEST_OUT" value="9"/>
+                       <member name="CAIRO_OPERATOR_DEST_ATOP" value="10"/>
+                       <member name="CAIRO_OPERATOR_XOR" value="11"/>
+                       <member name="CAIRO_OPERATOR_ADD" value="12"/>
+                       <member name="CAIRO_OPERATOR_SATURATE" value="13"/>
+               </enum>
+               <enum name="GooCanvasAnimateType">
+                       <member name="GOO_CANVAS_ANIMATE_FREEZE" value="0"/>
+                       <member name="GOO_CANVAS_ANIMATE_RESET" value="1"/>
+                       <member name="GOO_CANVAS_ANIMATE_RESTART" value="2"/>
+                       <member name="GOO_CANVAS_ANIMATE_BOUNCE" value="3"/>
+               </enum>
+               <enum name="GooCanvasItemVisibility">
+                       <member name="GOO_CANVAS_ITEM_HIDDEN" value="0"/>
+                       <member name="GOO_CANVAS_ITEM_INVISIBLE" value="1"/>
+                       <member name="GOO_CANVAS_ITEM_VISIBLE" value="2"/>
+                       <member name="GOO_CANVAS_ITEM_VISIBLE_ABOVE_THRESHOLD" value="3"/>
+               </enum>
+               <enum name="GooCanvasPathCommandType">
+                       <member name="GOO_CANVAS_PATH_MOVE_TO" value="0"/>
+                       <member name="GOO_CANVAS_PATH_CLOSE_PATH" value="1"/>
+                       <member name="GOO_CANVAS_PATH_LINE_TO" value="2"/>
+                       <member name="GOO_CANVAS_PATH_HORIZONTAL_LINE_TO" value="3"/>
+                       <member name="GOO_CANVAS_PATH_VERTICAL_LINE_TO" value="4"/>
+                       <member name="GOO_CANVAS_PATH_CURVE_TO" value="5"/>
+                       <member name="GOO_CANVAS_PATH_SMOOTH_CURVE_TO" value="6"/>
+                       <member name="GOO_CANVAS_PATH_QUADRATIC_CURVE_TO" value="7"/>
+                       <member name="GOO_CANVAS_PATH_SMOOTH_QUADRATIC_CURVE_TO" value="8"/>
+                       <member name="GOO_CANVAS_PATH_ELLIPTICAL_ARC" value="9"/>
+               </enum>
+               <flags name="GooCanvasPointerEvents">
+                       <member name="GOO_CANVAS_EVENTS_VISIBLE_MASK" value="1"/>
+                       <member name="GOO_CANVAS_EVENTS_PAINTED_MASK" value="2"/>
+                       <member name="GOO_CANVAS_EVENTS_FILL_MASK" value="4"/>
+                       <member name="GOO_CANVAS_EVENTS_STROKE_MASK" value="8"/>
+                       <member name="GOO_CANVAS_EVENTS_NONE" value="0"/>
+                       <member name="GOO_CANVAS_EVENTS_VISIBLE_PAINTED" value="15"/>
+                       <member name="GOO_CANVAS_EVENTS_VISIBLE_FILL" value="5"/>
+                       <member name="GOO_CANVAS_EVENTS_VISIBLE_STROKE" value="9"/>
+                       <member name="GOO_CANVAS_EVENTS_VISIBLE" value="13"/>
+                       <member name="GOO_CANVAS_EVENTS_PAINTED" value="14"/>
+                       <member name="GOO_CANVAS_EVENTS_FILL" value="4"/>
+                       <member name="GOO_CANVAS_EVENTS_STROKE" value="8"/>
+                       <member name="GOO_CANVAS_EVENTS_ALL" value="12"/>
+               </flags>
+               <object name="GooCanvas" parent="GtkContainer" type-name="GooCanvas" get-type="goo_canvas_get_type">
+                       <implements>
+                               <interface name="AtkImplementor"/>
+                               <interface name="GtkBuildable"/>
+                       </implements>
+                       <method name="convert_from_item_space" symbol="goo_canvas_convert_from_item_space">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="canvas" type="GooCanvas*"/>
+                                       <parameter name="item" type="GooCanvasItem*"/>
+                                       <parameter name="x" type="gdouble*"/>
+                                       <parameter name="y" type="gdouble*"/>
+                               </parameters>
+                       </method>
+                       <method name="convert_from_pixels" symbol="goo_canvas_convert_from_pixels">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="canvas" type="GooCanvas*"/>
+                                       <parameter name="x" type="gdouble*"/>
+                                       <parameter name="y" type="gdouble*"/>
+                               </parameters>
+                       </method>
+                       <method name="convert_to_item_space" symbol="goo_canvas_convert_to_item_space">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="canvas" type="GooCanvas*"/>
+                                       <parameter name="item" type="GooCanvasItem*"/>
+                                       <parameter name="x" type="gdouble*"/>
+                                       <parameter name="y" type="gdouble*"/>
+                               </parameters>
+                       </method>
+                       <method name="convert_to_pixels" symbol="goo_canvas_convert_to_pixels">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="canvas" type="GooCanvas*"/>
+                                       <parameter name="x" type="gdouble*"/>
+                                       <parameter name="y" type="gdouble*"/>
+                               </parameters>
+                       </method>
+                       <method name="create_cairo_context" symbol="goo_canvas_create_cairo_context">
+                               <return-type type="cairo_t*"/>
+                               <parameters>
+                                       <parameter name="canvas" type="GooCanvas*"/>
+                               </parameters>
+                       </method>
+                       <method name="create_item" symbol="goo_canvas_create_item">
+                               <return-type type="GooCanvasItem*"/>
+                               <parameters>
+                                       <parameter name="canvas" type="GooCanvas*"/>
+                                       <parameter name="model" type="GooCanvasItemModel*"/>
+                               </parameters>
+                       </method>
+                       <method name="create_path" symbol="goo_canvas_create_path">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="commands" type="GArray*"/>
+                                       <parameter name="cr" type="cairo_t*"/>
+                               </parameters>
+                       </method>
+                       <method name="get_bounds" symbol="goo_canvas_get_bounds">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="canvas" type="GooCanvas*"/>
+                                       <parameter name="left" type="gdouble*"/>
+                                       <parameter name="top" type="gdouble*"/>
+                                       <parameter name="right" type="gdouble*"/>
+                                       <parameter name="bottom" type="gdouble*"/>
+                               </parameters>
+                       </method>
+                       <method name="get_default_line_width" symbol="goo_canvas_get_default_line_width">
+                               <return-type type="gdouble"/>
+                               <parameters>
+                                       <parameter name="canvas" type="GooCanvas*"/>
+                               </parameters>
+                       </method>
+                       <method name="get_item" symbol="goo_canvas_get_item">
+                               <return-type type="GooCanvasItem*"/>
+                               <parameters>
+                                       <parameter name="canvas" type="GooCanvas*"/>
+                                       <parameter name="model" type="GooCanvasItemModel*"/>
+                               </parameters>
+                       </method>
+                       <method name="get_item_at" symbol="goo_canvas_get_item_at">
+                               <return-type type="GooCanvasItem*"/>
+                               <parameters>
+                                       <parameter name="canvas" type="GooCanvas*"/>
+                                       <parameter name="x" type="gdouble"/>
+                                       <parameter name="y" type="gdouble"/>
+                                       <parameter name="is_pointer_event" type="gboolean"/>
+                               </parameters>
+                       </method>
+                       <method name="get_items_at" symbol="goo_canvas_get_items_at">
+                               <return-type type="GList*"/>
+                               <parameters>
+                                       <parameter name="canvas" type="GooCanvas*"/>
+                                       <parameter name="x" type="gdouble"/>
+                                       <parameter name="y" type="gdouble"/>
+                                       <parameter name="is_pointer_event" type="gboolean"/>
+                               </parameters>
+                       </method>
+                       <method name="get_items_in_area" symbol="goo_canvas_get_items_in_area">
+                               <return-type type="GList*"/>
+                               <parameters>
+                                       <parameter name="canvas" type="GooCanvas*"/>
+                                       <parameter name="area" type="GooCanvasBounds*"/>
+                                       <parameter name="inside_area" type="gboolean"/>
+                                       <parameter name="allow_overlaps" type="gboolean"/>
+                                       <parameter name="include_containers" type="gboolean"/>
+                               </parameters>
+                       </method>
+                       <method name="get_root_item" symbol="goo_canvas_get_root_item">
+                               <return-type type="GooCanvasItem*"/>
+                               <parameters>
+                                       <parameter name="canvas" type="GooCanvas*"/>
+                               </parameters>
+                       </method>
+                       <method name="get_root_item_model" symbol="goo_canvas_get_root_item_model">
+                               <return-type type="GooCanvasItemModel*"/>
+                               <parameters>
+                                       <parameter name="canvas" type="GooCanvas*"/>
+                               </parameters>
+                       </method>
+                       <method name="get_scale" symbol="goo_canvas_get_scale">
+                               <return-type type="gdouble"/>
+                               <parameters>
+                                       <parameter name="canvas" type="GooCanvas*"/>
+                               </parameters>
+                       </method>
+                       <method name="grab_focus" symbol="goo_canvas_grab_focus">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="canvas" type="GooCanvas*"/>
+                                       <parameter name="item" type="GooCanvasItem*"/>
+                               </parameters>
+                       </method>
+                       <method name="keyboard_grab" symbol="goo_canvas_keyboard_grab">
+                               <return-type type="GdkGrabStatus"/>
+                               <parameters>
+                                       <parameter name="canvas" type="GooCanvas*"/>
+                                       <parameter name="item" type="GooCanvasItem*"/>
+                                       <parameter name="owner_events" type="gboolean"/>
+                                       <parameter name="time" type="guint32"/>
+                               </parameters>
+                       </method>
+                       <method name="keyboard_ungrab" symbol="goo_canvas_keyboard_ungrab">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="canvas" type="GooCanvas*"/>
+                                       <parameter name="item" type="GooCanvasItem*"/>
+                                       <parameter name="time" type="guint32"/>
+                               </parameters>
+                       </method>
+                       <method name="marshal_BOOLEAN__BOXED" symbol="goo_canvas_marshal_BOOLEAN__BOXED">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="closure" type="GClosure*"/>
+                                       <parameter name="return_value" type="GValue*"/>
+                                       <parameter name="n_param_values" type="guint"/>
+                                       <parameter name="param_values" type="GValue*"/>
+                                       <parameter name="invocation_hint" type="gpointer"/>
+                                       <parameter name="marshal_data" type="gpointer"/>
+                               </parameters>
+                       </method>
+                       <method name="marshal_BOOLEAN__OBJECT_BOXED" symbol="goo_canvas_marshal_BOOLEAN__OBJECT_BOXED">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="closure" type="GClosure*"/>
+                                       <parameter name="return_value" type="GValue*"/>
+                                       <parameter name="n_param_values" type="guint"/>
+                                       <parameter name="param_values" type="GValue*"/>
+                                       <parameter name="invocation_hint" type="gpointer"/>
+                                       <parameter name="marshal_data" type="gpointer"/>
+                               </parameters>
+                       </method>
+                       <method name="marshal_VOID__INT_INT" symbol="goo_canvas_marshal_VOID__INT_INT">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="closure" type="GClosure*"/>
+                                       <parameter name="return_value" type="GValue*"/>
+                                       <parameter name="n_param_values" type="guint"/>
+                                       <parameter name="param_values" type="GValue*"/>
+                                       <parameter name="invocation_hint" type="gpointer"/>
+                                       <parameter name="marshal_data" type="gpointer"/>
+                               </parameters>
+                       </method>
+                       <method name="marshal_VOID__OBJECT_OBJECT" symbol="goo_canvas_marshal_VOID__OBJECT_OBJECT">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="closure" type="GClosure*"/>
+                                       <parameter name="return_value" type="GValue*"/>
+                                       <parameter name="n_param_values" type="guint"/>
+                                       <parameter name="param_values" type="GValue*"/>
+                                       <parameter name="invocation_hint" type="gpointer"/>
+                                       <parameter name="marshal_data" type="gpointer"/>
+                               </parameters>
+                       </method>
+                       <constructor name="new" symbol="goo_canvas_new">
+                               <return-type type="GtkWidget*"/>
+                       </constructor>
+                       <method name="parse_path_data" symbol="goo_canvas_parse_path_data">
+                               <return-type type="GArray*"/>
+                               <parameters>
+                                       <parameter name="path_data" type="gchar*"/>
+                               </parameters>
+                       </method>
+                       <method name="pointer_grab" symbol="goo_canvas_pointer_grab">
+                               <return-type type="GdkGrabStatus"/>
+                               <parameters>
+                                       <parameter name="canvas" type="GooCanvas*"/>
+                                       <parameter name="item" type="GooCanvasItem*"/>
+                                       <parameter name="event_mask" type="GdkEventMask"/>
+                                       <parameter name="cursor" type="GdkCursor*"/>
+                                       <parameter name="time" type="guint32"/>
+                               </parameters>
+                       </method>
+                       <method name="pointer_ungrab" symbol="goo_canvas_pointer_ungrab">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="canvas" type="GooCanvas*"/>
+                                       <parameter name="item" type="GooCanvasItem*"/>
+                                       <parameter name="time" type="guint32"/>
+                               </parameters>
+                       </method>
+                       <method name="register_widget_item" symbol="goo_canvas_register_widget_item">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="canvas" type="GooCanvas*"/>
+                                       <parameter name="witem" type="GooCanvasWidget*"/>
+                               </parameters>
+                       </method>
+                       <method name="render" symbol="goo_canvas_render">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="canvas" type="GooCanvas*"/>
+                                       <parameter name="cr" type="cairo_t*"/>
+                                       <parameter name="bounds" type="GooCanvasBounds*"/>
+                                       <parameter name="scale" type="gdouble"/>
+                               </parameters>
+                       </method>
+                       <method name="request_redraw" symbol="goo_canvas_request_redraw">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="canvas" type="GooCanvas*"/>
+                                       <parameter name="bounds" type="GooCanvasBounds*"/>
+                               </parameters>
+                       </method>
+                       <method name="request_update" symbol="goo_canvas_request_update">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="canvas" type="GooCanvas*"/>
+                               </parameters>
+                       </method>
+                       <method name="scroll_to" symbol="goo_canvas_scroll_to">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="canvas" type="GooCanvas*"/>
+                                       <parameter name="left" type="gdouble"/>
+                                       <parameter name="top" type="gdouble"/>
+                               </parameters>
+                       </method>
+                       <method name="set_bounds" symbol="goo_canvas_set_bounds">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="canvas" type="GooCanvas*"/>
+                                       <parameter name="left" type="gdouble"/>
+                                       <parameter name="top" type="gdouble"/>
+                                       <parameter name="right" type="gdouble"/>
+                                       <parameter name="bottom" type="gdouble"/>
+                               </parameters>
+                       </method>
+                       <method name="set_root_item" symbol="goo_canvas_set_root_item">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="canvas" type="GooCanvas*"/>
+                                       <parameter name="item" type="GooCanvasItem*"/>
+                               </parameters>
+                       </method>
+                       <method name="set_root_item_model" symbol="goo_canvas_set_root_item_model">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="canvas" type="GooCanvas*"/>
+                                       <parameter name="model" type="GooCanvasItemModel*"/>
+                               </parameters>
+                       </method>
+                       <method name="set_scale" symbol="goo_canvas_set_scale">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="canvas" type="GooCanvas*"/>
+                                       <parameter name="scale" type="gdouble"/>
+                               </parameters>
+                       </method>
+                       <method name="unregister_item" symbol="goo_canvas_unregister_item">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="canvas" type="GooCanvas*"/>
+                                       <parameter name="model" type="GooCanvasItemModel*"/>
+                               </parameters>
+                       </method>
+                       <method name="unregister_widget_item" symbol="goo_canvas_unregister_widget_item">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="canvas" type="GooCanvas*"/>
+                                       <parameter name="witem" type="GooCanvasWidget*"/>
+                               </parameters>
+                       </method>
+                       <method name="update" symbol="goo_canvas_update">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="canvas" type="GooCanvas*"/>
+                               </parameters>
+                       </method>
+                       <property name="anchor" type="GtkAnchorType" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="automatic-bounds" type="gboolean" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="background-color" type="char*" readable="0" writable="1" construct="0" construct-only="0"/>
+                       <property name="background-color-rgb" type="guint" readable="0" writable="1" construct="0" construct-only="0"/>
+                       <property name="bounds-from-origin" type="gboolean" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="bounds-padding" type="gdouble" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="integer-layout" type="gboolean" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="resolution-x" type="gdouble" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="resolution-y" type="gdouble" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="scale" type="gdouble" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="scale-x" type="gdouble" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="scale-y" type="gdouble" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="units" type="GtkUnit" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="x1" type="gdouble" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="x2" type="gdouble" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="y1" type="gdouble" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="y2" type="gdouble" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <signal name="item-created" when="LAST">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="canvas" type="GooCanvas*"/>
+                                       <parameter name="item" type="GooCanvasItem*"/>
+                                       <parameter name="model" type="GooCanvasItemModel*"/>
+                               </parameters>
+                       </signal>
+                       <signal name="set-scroll-adjustments" when="LAST">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="canvas" type="GooCanvas*"/>
+                                       <parameter name="hadjustment" type="GtkAdjustment*"/>
+                                       <parameter name="vadjustment" type="GtkAdjustment*"/>
+                               </parameters>
+                       </signal>
+                       <vfunc name="create_item">
+                               <return-type type="GooCanvasItem*"/>
+                               <parameters>
+                                       <parameter name="canvas" type="GooCanvas*"/>
+                                       <parameter name="model" type="GooCanvasItemModel*"/>
+                               </parameters>
+                       </vfunc>
+                       <field name="root_item_model" type="GooCanvasItemModel*"/>
+                       <field name="root_item" type="GooCanvasItem*"/>
+                       <field name="bounds" type="GooCanvasBounds"/>
+                       <field name="scale_x" type="gdouble"/>
+                       <field name="scale_y" type="gdouble"/>
+                       <field name="scale" type="gdouble"/>
+                       <field name="anchor" type="GtkAnchorType"/>
+                       <field name="idle_id" type="guint"/>
+                       <field name="need_update" type="guint"/>
+                       <field name="need_entire_subtree_update" type="guint"/>
+                       <field name="integer_layout" type="guint"/>
+                       <field name="automatic_bounds" type="guint"/>
+                       <field name="bounds_from_origin" type="guint"/>
+                       <field name="bounds_padding" type="gdouble"/>
+                       <field name="pointer_item" type="GooCanvasItem*"/>
+                       <field name="pointer_grab_item" type="GooCanvasItem*"/>
+                       <field name="pointer_grab_initial_item" type="GooCanvasItem*"/>
+                       <field name="pointer_grab_button" type="guint"/>
+                       <field name="focused_item" type="GooCanvasItem*"/>
+                       <field name="keyboard_grab_item" type="GooCanvasItem*"/>
+                       <field name="crossing_event" type="GdkEventCrossing"/>
+                       <field name="canvas_window" type="GdkWindow*"/>
+                       <field name="canvas_x_offset" type="gint"/>
+                       <field name="canvas_y_offset" type="gint"/>
+                       <field name="hadjustment" type="GtkAdjustment*"/>
+                       <field name="vadjustment" type="GtkAdjustment*"/>
+                       <field name="freeze_count" type="gint"/>
+                       <field name="tmp_window" type="GdkWindow*"/>
+                       <field name="model_to_item" type="GHashTable*"/>
+                       <field name="units" type="GtkUnit"/>
+                       <field name="resolution_x" type="gdouble"/>
+                       <field name="resolution_y" type="gdouble"/>
+                       <field name="device_to_pixels_x" type="gdouble"/>
+                       <field name="device_to_pixels_y" type="gdouble"/>
+                       <field name="widget_items" type="GList*"/>
+               </object>
+               <object name="GooCanvasEllipse" parent="GooCanvasItemSimple" type-name="GooCanvasEllipse" get-type="goo_canvas_ellipse_get_type">
+                       <implements>
+                               <interface name="GooCanvasItem"/>
+                       </implements>
+                       <constructor name="new" symbol="goo_canvas_ellipse_new">
+                               <return-type type="GooCanvasItem*"/>
+                               <parameters>
+                                       <parameter name="parent" type="GooCanvasItem*"/>
+                                       <parameter name="center_x" type="gdouble"/>
+                                       <parameter name="center_y" type="gdouble"/>
+                                       <parameter name="radius_x" type="gdouble"/>
+                                       <parameter name="radius_y" type="gdouble"/>
+                               </parameters>
+                       </constructor>
+                       <property name="center-x" type="gdouble" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="center-y" type="gdouble" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="radius-x" type="gdouble" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="radius-y" type="gdouble" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <field name="ellipse_data" type="GooCanvasEllipseData*"/>
+               </object>
+               <object name="GooCanvasEllipseModel" parent="GooCanvasItemModelSimple" type-name="GooCanvasEllipseModel" get-type="goo_canvas_ellipse_model_get_type">
+                       <implements>
+                               <interface name="GooCanvasItemModel"/>
+                       </implements>
+                       <constructor name="new" symbol="goo_canvas_ellipse_model_new">
+                               <return-type type="GooCanvasItemModel*"/>
+                               <parameters>
+                                       <parameter name="parent" type="GooCanvasItemModel*"/>
+                                       <parameter name="center_x" type="gdouble"/>
+                                       <parameter name="center_y" type="gdouble"/>
+                                       <parameter name="radius_x" type="gdouble"/>
+                                       <parameter name="radius_y" type="gdouble"/>
+                               </parameters>
+                       </constructor>
+                       <property name="center-x" type="gdouble" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="center-y" type="gdouble" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="radius-x" type="gdouble" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="radius-y" type="gdouble" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <field name="ellipse_data" type="GooCanvasEllipseData"/>
+               </object>
+               <object name="GooCanvasGroup" parent="GooCanvasItemSimple" type-name="GooCanvasGroup" get-type="goo_canvas_group_get_type">
+                       <implements>
+                               <interface name="GooCanvasItem"/>
+                       </implements>
+                       <constructor name="new" symbol="goo_canvas_group_new">
+                               <return-type type="GooCanvasItem*"/>
+                               <parameters>
+                                       <parameter name="parent" type="GooCanvasItem*"/>
+                               </parameters>
+                       </constructor>
+                       <field name="items" type="GPtrArray*"/>
+               </object>
+               <object name="GooCanvasGroupModel" parent="GooCanvasItemModelSimple" type-name="GooCanvasGroupModel" get-type="goo_canvas_group_model_get_type">
+                       <implements>
+                               <interface name="GooCanvasItemModel"/>
+                       </implements>
+                       <constructor name="new" symbol="goo_canvas_group_model_new">
+                               <return-type type="GooCanvasItemModel*"/>
+                               <parameters>
+                                       <parameter name="parent" type="GooCanvasItemModel*"/>
+                               </parameters>
+                       </constructor>
+                       <field name="children" type="GPtrArray*"/>
+               </object>
+               <object name="GooCanvasImage" parent="GooCanvasItemSimple" type-name="GooCanvasImage" get-type="goo_canvas_image_get_type">
+                       <implements>
+                               <interface name="GooCanvasItem"/>
+                       </implements>
+                       <constructor name="new" symbol="goo_canvas_image_new">
+                               <return-type type="GooCanvasItem*"/>
+                               <parameters>
+                                       <parameter name="parent" type="GooCanvasItem*"/>
+                                       <parameter name="pixbuf" type="GdkPixbuf*"/>
+                                       <parameter name="x" type="gdouble"/>
+                                       <parameter name="y" type="gdouble"/>
+                               </parameters>
+                       </constructor>
+                       <property name="height" type="gdouble" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="pattern" type="GooCairoPattern*" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="pixbuf" type="GdkPixbuf*" readable="0" writable="1" construct="0" construct-only="0"/>
+                       <property name="width" type="gdouble" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="x" type="gdouble" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="y" type="gdouble" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <field name="image_data" type="GooCanvasImageData*"/>
+               </object>
+               <object name="GooCanvasImageModel" parent="GooCanvasItemModelSimple" type-name="GooCanvasImageModel" get-type="goo_canvas_image_model_get_type">
+                       <implements>
+                               <interface name="GooCanvasItemModel"/>
+                       </implements>
+                       <constructor name="new" symbol="goo_canvas_image_model_new">
+                               <return-type type="GooCanvasItemModel*"/>
+                               <parameters>
+                                       <parameter name="parent" type="GooCanvasItemModel*"/>
+                                       <parameter name="pixbuf" type="GdkPixbuf*"/>
+                                       <parameter name="x" type="gdouble"/>
+                                       <parameter name="y" type="gdouble"/>
+                               </parameters>
+                       </constructor>
+                       <property name="height" type="gdouble" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="pattern" type="GooCairoPattern*" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="pixbuf" type="GdkPixbuf*" readable="0" writable="1" construct="0" construct-only="0"/>
+                       <property name="width" type="gdouble" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="x" type="gdouble" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="y" type="gdouble" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <field name="image_data" type="GooCanvasImageData"/>
+               </object>
+               <object name="GooCanvasItemModelSimple" parent="GObject" type-name="GooCanvasItemModelSimple" get-type="goo_canvas_item_model_simple_get_type">
+                       <implements>
+                               <interface name="GooCanvasItemModel"/>
+                       </implements>
+                       <property name="antialias" type="GooCairoAntialias" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="clip-fill-rule" type="GooCairoFillRule" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="clip-path" type="char*" readable="0" writable="1" construct="0" construct-only="0"/>
+                       <property name="fill-color" type="char*" readable="0" writable="1" construct="0" construct-only="0"/>
+                       <property name="fill-color-rgba" type="guint" readable="0" writable="1" construct="0" construct-only="0"/>
+                       <property name="fill-pattern" type="GooCairoPattern*" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="fill-pixbuf" type="GdkPixbuf*" readable="0" writable="1" construct="0" construct-only="0"/>
+                       <property name="fill-rule" type="GooCairoFillRule" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="font" type="char*" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="font-desc" type="PangoFontDescription*" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="hint-metrics" type="GooCairoHintMetrics" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="line-cap" type="GooCairoLineCap" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="line-dash" type="GooCairoLineDash*" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="line-join" type="GooCairoLineJoin" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="line-join-miter-limit" type="gdouble" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="line-width" type="gdouble" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="operator" type="GooCairoOperator" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="stroke-color" type="char*" readable="0" writable="1" construct="0" construct-only="0"/>
+                       <property name="stroke-color-rgba" type="guint" readable="0" writable="1" construct="0" construct-only="0"/>
+                       <property name="stroke-pattern" type="GooCairoPattern*" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="stroke-pixbuf" type="GdkPixbuf*" readable="0" writable="1" construct="0" construct-only="0"/>
+                       <field name="parent" type="GooCanvasItemModel*"/>
+                       <field name="simple_data" type="GooCanvasItemSimpleData"/>
+                       <field name="title" type="gchar*"/>
+                       <field name="description" type="gchar*"/>
+               </object>
+               <object name="GooCanvasItemSimple" parent="GObject" type-name="GooCanvasItemSimple" get-type="goo_canvas_item_simple_get_type">
+                       <implements>
+                               <interface name="GooCanvasItem"/>
+                       </implements>
+                       <method name="changed" symbol="goo_canvas_item_simple_changed">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="item" type="GooCanvasItemSimple*"/>
+                                       <parameter name="recompute_bounds" type="gboolean"/>
+                               </parameters>
+                       </method>
+                       <method name="check_in_path" symbol="goo_canvas_item_simple_check_in_path">
+                               <return-type type="gboolean"/>
+                               <parameters>
+                                       <parameter name="item" type="GooCanvasItemSimple*"/>
+                                       <parameter name="x" type="gdouble"/>
+                                       <parameter name="y" type="gdouble"/>
+                                       <parameter name="cr" type="cairo_t*"/>
+                                       <parameter name="pointer_events" type="GooCanvasPointerEvents"/>
+                               </parameters>
+                       </method>
+                       <method name="check_style" symbol="goo_canvas_item_simple_check_style">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="item" type="GooCanvasItemSimple*"/>
+                               </parameters>
+                       </method>
+                       <method name="get_line_width" symbol="goo_canvas_item_simple_get_line_width">
+                               <return-type type="gdouble"/>
+                               <parameters>
+                                       <parameter name="item" type="GooCanvasItemSimple*"/>
+                               </parameters>
+                       </method>
+                       <method name="get_path_bounds" symbol="goo_canvas_item_simple_get_path_bounds">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="item" type="GooCanvasItemSimple*"/>
+                                       <parameter name="cr" type="cairo_t*"/>
+                                       <parameter name="bounds" type="GooCanvasBounds*"/>
+                               </parameters>
+                       </method>
+                       <method name="paint_path" symbol="goo_canvas_item_simple_paint_path">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="item" type="GooCanvasItemSimple*"/>
+                                       <parameter name="cr" type="cairo_t*"/>
+                               </parameters>
+                       </method>
+                       <method name="set_model" symbol="goo_canvas_item_simple_set_model">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="item" type="GooCanvasItemSimple*"/>
+                                       <parameter name="model" type="GooCanvasItemModel*"/>
+                               </parameters>
+                       </method>
+                       <method name="user_bounds_to_device" symbol="goo_canvas_item_simple_user_bounds_to_device">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="item" type="GooCanvasItemSimple*"/>
+                                       <parameter name="cr" type="cairo_t*"/>
+                                       <parameter name="bounds" type="GooCanvasBounds*"/>
+                               </parameters>
+                       </method>
+                       <method name="user_bounds_to_parent" symbol="goo_canvas_item_simple_user_bounds_to_parent">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="item" type="GooCanvasItemSimple*"/>
+                                       <parameter name="cr" type="cairo_t*"/>
+                                       <parameter name="bounds" type="GooCanvasBounds*"/>
+                               </parameters>
+                       </method>
+                       <property name="antialias" type="GooCairoAntialias" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="clip-fill-rule" type="GooCairoFillRule" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="clip-path" type="char*" readable="0" writable="1" construct="0" construct-only="0"/>
+                       <property name="fill-color" type="char*" readable="0" writable="1" construct="0" construct-only="0"/>
+                       <property name="fill-color-rgba" type="guint" readable="0" writable="1" construct="0" construct-only="0"/>
+                       <property name="fill-pattern" type="GooCairoPattern*" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="fill-pixbuf" type="GdkPixbuf*" readable="0" writable="1" construct="0" construct-only="0"/>
+                       <property name="fill-rule" type="GooCairoFillRule" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="font" type="char*" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="font-desc" type="PangoFontDescription*" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="hint-metrics" type="GooCairoHintMetrics" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="line-cap" type="GooCairoLineCap" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="line-dash" type="GooCairoLineDash*" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="line-join" type="GooCairoLineJoin" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="line-join-miter-limit" type="gdouble" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="line-width" type="gdouble" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="operator" type="GooCairoOperator" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="stroke-color" type="char*" readable="0" writable="1" construct="0" construct-only="0"/>
+                       <property name="stroke-color-rgba" type="guint" readable="0" writable="1" construct="0" construct-only="0"/>
+                       <property name="stroke-pattern" type="GooCairoPattern*" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="stroke-pixbuf" type="GdkPixbuf*" readable="0" writable="1" construct="0" construct-only="0"/>
+                       <vfunc name="simple_create_path">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="simple" type="GooCanvasItemSimple*"/>
+                                       <parameter name="cr" type="cairo_t*"/>
+                               </parameters>
+                       </vfunc>
+                       <vfunc name="simple_is_item_at">
+                               <return-type type="gboolean"/>
+                               <parameters>
+                                       <parameter name="simple" type="GooCanvasItemSimple*"/>
+                                       <parameter name="x" type="gdouble"/>
+                                       <parameter name="y" type="gdouble"/>
+                                       <parameter name="cr" type="cairo_t*"/>
+                                       <parameter name="is_pointer_event" type="gboolean"/>
+                               </parameters>
+                       </vfunc>
+                       <vfunc name="simple_paint">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="simple" type="GooCanvasItemSimple*"/>
+                                       <parameter name="cr" type="cairo_t*"/>
+                                       <parameter name="bounds" type="GooCanvasBounds*"/>
+                               </parameters>
+                       </vfunc>
+                       <vfunc name="simple_update">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="simple" type="GooCanvasItemSimple*"/>
+                                       <parameter name="cr" type="cairo_t*"/>
+                               </parameters>
+                       </vfunc>
+                       <field name="canvas" type="GooCanvas*"/>
+                       <field name="parent" type="GooCanvasItem*"/>
+                       <field name="model" type="GooCanvasItemModelSimple*"/>
+                       <field name="simple_data" type="GooCanvasItemSimpleData*"/>
+                       <field name="bounds" type="GooCanvasBounds"/>
+                       <field name="need_update" type="guint"/>
+                       <field name="need_entire_subtree_update" type="guint"/>
+               </object>
+               <object name="GooCanvasPath" parent="GooCanvasItemSimple" type-name="GooCanvasPath" get-type="goo_canvas_path_get_type">
+                       <implements>
+                               <interface name="GooCanvasItem"/>
+                       </implements>
+                       <constructor name="new" symbol="goo_canvas_path_new">
+                               <return-type type="GooCanvasItem*"/>
+                               <parameters>
+                                       <parameter name="parent" type="GooCanvasItem*"/>
+                                       <parameter name="path_data" type="gchar*"/>
+                               </parameters>
+                       </constructor>
+                       <property name="data" type="char*" readable="0" writable="1" construct="0" construct-only="0"/>
+                       <field name="path_data" type="GooCanvasPathData*"/>
+               </object>
+               <object name="GooCanvasPathModel" parent="GooCanvasItemModelSimple" type-name="GooCanvasPathModel" get-type="goo_canvas_path_model_get_type">
+                       <implements>
+                               <interface name="GooCanvasItemModel"/>
+                       </implements>
+                       <constructor name="new" symbol="goo_canvas_path_model_new">
+                               <return-type type="GooCanvasItemModel*"/>
+                               <parameters>
+                                       <parameter name="parent" type="GooCanvasItemModel*"/>
+                                       <parameter name="path_data" type="gchar*"/>
+                               </parameters>
+                       </constructor>
+                       <property name="data" type="char*" readable="0" writable="1" construct="0" construct-only="0"/>
+                       <field name="path_data" type="GooCanvasPathData"/>
+               </object>
+               <object name="GooCanvasPolyline" parent="GooCanvasItemSimple" type-name="GooCanvasPolyline" get-type="goo_canvas_polyline_get_type">
+                       <implements>
+                               <interface name="GooCanvasItem"/>
+                       </implements>
+                       <constructor name="new" symbol="goo_canvas_polyline_new">
+                               <return-type type="GooCanvasItem*"/>
+                               <parameters>
+                                       <parameter name="parent" type="GooCanvasItem*"/>
+                                       <parameter name="close_path" type="gboolean"/>
+                                       <parameter name="num_points" type="gint"/>
+                               </parameters>
+                       </constructor>
+                       <constructor name="new_line" symbol="goo_canvas_polyline_new_line">
+                               <return-type type="GooCanvasItem*"/>
+                               <parameters>
+                                       <parameter name="parent" type="GooCanvasItem*"/>
+                                       <parameter name="x1" type="gdouble"/>
+                                       <parameter name="y1" type="gdouble"/>
+                                       <parameter name="x2" type="gdouble"/>
+                                       <parameter name="y2" type="gdouble"/>
+                               </parameters>
+                       </constructor>
+                       <property name="arrow-length" type="gdouble" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="arrow-tip-length" type="gdouble" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="arrow-width" type="gdouble" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="close-path" type="gboolean" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="end-arrow" type="gboolean" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="points" type="GooCanvasPoints*" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="start-arrow" type="gboolean" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <field name="polyline_data" type="GooCanvasPolylineData*"/>
+               </object>
+               <object name="GooCanvasPolylineModel" parent="GooCanvasItemModelSimple" type-name="GooCanvasPolylineModel" get-type="goo_canvas_polyline_model_get_type">
+                       <implements>
+                               <interface name="GooCanvasItemModel"/>
+                       </implements>
+                       <constructor name="new" symbol="goo_canvas_polyline_model_new">
+                               <return-type type="GooCanvasItemModel*"/>
+                               <parameters>
+                                       <parameter name="parent" type="GooCanvasItemModel*"/>
+                                       <parameter name="close_path" type="gboolean"/>
+                                       <parameter name="num_points" type="gint"/>
+                               </parameters>
+                       </constructor>
+                       <constructor name="new_line" symbol="goo_canvas_polyline_model_new_line">
+                               <return-type type="GooCanvasItemModel*"/>
+                               <parameters>
+                                       <parameter name="parent" type="GooCanvasItemModel*"/>
+                                       <parameter name="x1" type="gdouble"/>
+                                       <parameter name="y1" type="gdouble"/>
+                                       <parameter name="x2" type="gdouble"/>
+                                       <parameter name="y2" type="gdouble"/>
+                               </parameters>
+                       </constructor>
+                       <property name="arrow-length" type="gdouble" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="arrow-tip-length" type="gdouble" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="arrow-width" type="gdouble" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="close-path" type="gboolean" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="end-arrow" type="gboolean" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="points" type="GooCanvasPoints*" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="start-arrow" type="gboolean" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <field name="polyline_data" type="GooCanvasPolylineData"/>
+               </object>
+               <object name="GooCanvasRect" parent="GooCanvasItemSimple" type-name="GooCanvasRect" get-type="goo_canvas_rect_get_type">
+                       <implements>
+                               <interface name="GooCanvasItem"/>
+                       </implements>
+                       <constructor name="new" symbol="goo_canvas_rect_new">
+                               <return-type type="GooCanvasItem*"/>
+                               <parameters>
+                                       <parameter name="parent" type="GooCanvasItem*"/>
+                                       <parameter name="x" type="gdouble"/>
+                                       <parameter name="y" type="gdouble"/>
+                                       <parameter name="width" type="gdouble"/>
+                                       <parameter name="height" type="gdouble"/>
+                               </parameters>
+                       </constructor>
+                       <property name="height" type="gdouble" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="radius-x" type="gdouble" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="radius-y" type="gdouble" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="width" type="gdouble" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="x" type="gdouble" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="y" type="gdouble" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <field name="rect_data" type="GooCanvasRectData*"/>
+               </object>
+               <object name="GooCanvasRectModel" parent="GooCanvasItemModelSimple" type-name="GooCanvasRectModel" get-type="goo_canvas_rect_model_get_type">
+                       <implements>
+                               <interface name="GooCanvasItemModel"/>
+                       </implements>
+                       <constructor name="new" symbol="goo_canvas_rect_model_new">
+                               <return-type type="GooCanvasItemModel*"/>
+                               <parameters>
+                                       <parameter name="parent" type="GooCanvasItemModel*"/>
+                                       <parameter name="x" type="gdouble"/>
+                                       <parameter name="y" type="gdouble"/>
+                                       <parameter name="width" type="gdouble"/>
+                                       <parameter name="height" type="gdouble"/>
+                               </parameters>
+                       </constructor>
+                       <property name="height" type="gdouble" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="radius-x" type="gdouble" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="radius-y" type="gdouble" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="width" type="gdouble" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="x" type="gdouble" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="y" type="gdouble" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <field name="rect_data" type="GooCanvasRectData"/>
+               </object>
+               <object name="GooCanvasStyle" parent="GObject" type-name="GooCanvasStyle" get-type="goo_canvas_style_get_type">
+                       <method name="copy" symbol="goo_canvas_style_copy">
+                               <return-type type="GooCanvasStyle*"/>
+                               <parameters>
+                                       <parameter name="style" type="GooCanvasStyle*"/>
+                               </parameters>
+                       </method>
+                       <method name="get_parent" symbol="goo_canvas_style_get_parent">
+                               <return-type type="GooCanvasStyle*"/>
+                               <parameters>
+                                       <parameter name="style" type="GooCanvasStyle*"/>
+                               </parameters>
+                       </method>
+                       <method name="get_property" symbol="goo_canvas_style_get_property">
+                               <return-type type="GValue*"/>
+                               <parameters>
+                                       <parameter name="style" type="GooCanvasStyle*"/>
+                                       <parameter name="property_id" type="GQuark"/>
+                               </parameters>
+                       </method>
+                       <constructor name="new" symbol="goo_canvas_style_new">
+                               <return-type type="GooCanvasStyle*"/>
+                       </constructor>
+                       <method name="set_fill_options" symbol="goo_canvas_style_set_fill_options">
+                               <return-type type="gboolean"/>
+                               <parameters>
+                                       <parameter name="style" type="GooCanvasStyle*"/>
+                                       <parameter name="cr" type="cairo_t*"/>
+                               </parameters>
+                       </method>
+                       <method name="set_parent" symbol="goo_canvas_style_set_parent">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="style" type="GooCanvasStyle*"/>
+                                       <parameter name="parent" type="GooCanvasStyle*"/>
+                               </parameters>
+                       </method>
+                       <method name="set_property" symbol="goo_canvas_style_set_property">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="style" type="GooCanvasStyle*"/>
+                                       <parameter name="property_id" type="GQuark"/>
+                                       <parameter name="value" type="GValue*"/>
+                               </parameters>
+                       </method>
+                       <method name="set_stroke_options" symbol="goo_canvas_style_set_stroke_options">
+                               <return-type type="gboolean"/>
+                               <parameters>
+                                       <parameter name="style" type="GooCanvasStyle*"/>
+                                       <parameter name="cr" type="cairo_t*"/>
+                               </parameters>
+                       </method>
+                       <field name="parent" type="GooCanvasStyle*"/>
+                       <field name="properties" type="GArray*"/>
+               </object>
+               <object name="GooCanvasTable" parent="GooCanvasGroup" type-name="GooCanvasTable" get-type="goo_canvas_table_get_type">
+                       <implements>
+                               <interface name="GooCanvasItem"/>
+                       </implements>
+                       <constructor name="new" symbol="goo_canvas_table_new">
+                               <return-type type="GooCanvasItem*"/>
+                               <parameters>
+                                       <parameter name="parent" type="GooCanvasItem*"/>
+                               </parameters>
+                       </constructor>
+                       <property name="column-spacing" type="gdouble" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="height" type="gdouble" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="homogeneous-columns" type="gboolean" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="homogeneous-rows" type="gboolean" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="row-spacing" type="gdouble" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="width" type="gdouble" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <field name="table_data" type="GooCanvasTableData*"/>
+               </object>
+               <object name="GooCanvasTableModel" parent="GooCanvasGroupModel" type-name="GooCanvasTableModel" get-type="goo_canvas_table_model_get_type">
+                       <implements>
+                               <interface name="GooCanvasItemModel"/>
+                       </implements>
+                       <constructor name="new" symbol="goo_canvas_table_model_new">
+                               <return-type type="GooCanvasItemModel*"/>
+                               <parameters>
+                                       <parameter name="parent" type="GooCanvasItemModel*"/>
+                               </parameters>
+                       </constructor>
+                       <property name="column-spacing" type="gdouble" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="height" type="gdouble" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="homogeneous-columns" type="gboolean" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="homogeneous-rows" type="gboolean" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="row-spacing" type="gdouble" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="width" type="gdouble" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <field name="table_data" type="GooCanvasTableData"/>
+               </object>
+               <object name="GooCanvasText" parent="GooCanvasItemSimple" type-name="GooCanvasText" get-type="goo_canvas_text_get_type">
+                       <implements>
+                               <interface name="GooCanvasItem"/>
+                       </implements>
+                       <constructor name="new" symbol="goo_canvas_text_new">
+                               <return-type type="GooCanvasItem*"/>
+                               <parameters>
+                                       <parameter name="parent" type="GooCanvasItem*"/>
+                                       <parameter name="string" type="char*"/>
+                                       <parameter name="x" type="gdouble"/>
+                                       <parameter name="y" type="gdouble"/>
+                                       <parameter name="width" type="gdouble"/>
+                                       <parameter name="anchor" type="GtkAnchorType"/>
+                               </parameters>
+                       </constructor>
+                       <property name="alignment" type="PangoAlignment" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="anchor" type="GtkAnchorType" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="ellipsize" type="PangoEllipsizeMode" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="text" type="char*" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="use-markup" type="gboolean" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="width" type="gdouble" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="wrap" type="PangoWrapMode" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="x" type="gdouble" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="y" type="gdouble" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <field name="text_data" type="GooCanvasTextData*"/>
+                       <field name="layout_width" type="gdouble"/>
+               </object>
+               <object name="GooCanvasTextModel" parent="GooCanvasItemModelSimple" type-name="GooCanvasTextModel" get-type="goo_canvas_text_model_get_type">
+                       <implements>
+                               <interface name="GooCanvasItemModel"/>
+                       </implements>
+                       <constructor name="new" symbol="goo_canvas_text_model_new">
+                               <return-type type="GooCanvasItemModel*"/>
+                               <parameters>
+                                       <parameter name="parent" type="GooCanvasItemModel*"/>
+                                       <parameter name="string" type="char*"/>
+                                       <parameter name="x" type="gdouble"/>
+                                       <parameter name="y" type="gdouble"/>
+                                       <parameter name="width" type="gdouble"/>
+                                       <parameter name="anchor" type="GtkAnchorType"/>
+                               </parameters>
+                       </constructor>
+                       <property name="alignment" type="PangoAlignment" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="anchor" type="GtkAnchorType" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="ellipsize" type="PangoEllipsizeMode" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="text" type="char*" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="use-markup" type="gboolean" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="width" type="gdouble" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="wrap" type="PangoWrapMode" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="x" type="gdouble" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="y" type="gdouble" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <field name="text_data" type="GooCanvasTextData"/>
+               </object>
+               <object name="GooCanvasWidget" parent="GooCanvasItemSimple" type-name="GooCanvasWidget" get-type="goo_canvas_widget_get_type">
+                       <implements>
+                               <interface name="GooCanvasItem"/>
+                       </implements>
+                       <constructor name="new" symbol="goo_canvas_widget_new">
+                               <return-type type="GooCanvasItem*"/>
+                               <parameters>
+                                       <parameter name="parent" type="GooCanvasItem*"/>
+                                       <parameter name="widget" type="GtkWidget*"/>
+                                       <parameter name="x" type="gdouble"/>
+                                       <parameter name="y" type="gdouble"/>
+                                       <parameter name="width" type="gdouble"/>
+                                       <parameter name="height" type="gdouble"/>
+                               </parameters>
+                       </constructor>
+                       <property name="anchor" type="GtkAnchorType" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="height" type="gdouble" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="widget" type="GtkWidget*" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="width" type="gdouble" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="x" type="gdouble" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="y" type="gdouble" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <field name="widget" type="GtkWidget*"/>
+                       <field name="x" type="gdouble"/>
+                       <field name="y" type="gdouble"/>
+                       <field name="width" type="gdouble"/>
+                       <field name="height" type="gdouble"/>
+                       <field name="anchor" type="GtkAnchorType"/>
+               </object>
+               <interface name="GooCanvasItem" type-name="GooCanvasItem" get-type="goo_canvas_item_get_type">
+                       <requires>
+                               <interface name="GObject"/>
+                       </requires>
+                       <method name="add_child" symbol="goo_canvas_item_add_child">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="item" type="GooCanvasItem*"/>
+                                       <parameter name="child" type="GooCanvasItem*"/>
+                                       <parameter name="position" type="gint"/>
+                               </parameters>
+                       </method>
+                       <method name="allocate_area" symbol="goo_canvas_item_allocate_area">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="item" type="GooCanvasItem*"/>
+                                       <parameter name="cr" type="cairo_t*"/>
+                                       <parameter name="requested_area" type="GooCanvasBounds*"/>
+                                       <parameter name="allocated_area" type="GooCanvasBounds*"/>
+                                       <parameter name="x_offset" type="gdouble"/>
+                                       <parameter name="y_offset" type="gdouble"/>
+                               </parameters>
+                       </method>
+                       <method name="animate" symbol="goo_canvas_item_animate">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="item" type="GooCanvasItem*"/>
+                                       <parameter name="x" type="gdouble"/>
+                                       <parameter name="y" type="gdouble"/>
+                                       <parameter name="scale" type="gdouble"/>
+                                       <parameter name="degrees" type="gdouble"/>
+                                       <parameter name="absolute" type="gboolean"/>
+                                       <parameter name="duration" type="gint"/>
+                                       <parameter name="step_time" type="gint"/>
+                                       <parameter name="type" type="GooCanvasAnimateType"/>
+                               </parameters>
+                       </method>
+                       <method name="class_find_child_property" symbol="goo_canvas_item_class_find_child_property">
+                               <return-type type="GParamSpec*"/>
+                               <parameters>
+                                       <parameter name="iclass" type="GObjectClass*"/>
+                                       <parameter name="property_name" type="gchar*"/>
+                               </parameters>
+                       </method>
+                       <method name="class_install_child_property" symbol="goo_canvas_item_class_install_child_property">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="iclass" type="GObjectClass*"/>
+                                       <parameter name="property_id" type="guint"/>
+                                       <parameter name="pspec" type="GParamSpec*"/>
+                               </parameters>
+                       </method>
+                       <method name="class_list_child_properties" symbol="goo_canvas_item_class_list_child_properties">
+                               <return-type type="GParamSpec**"/>
+                               <parameters>
+                                       <parameter name="iclass" type="GObjectClass*"/>
+                                       <parameter name="n_properties" type="guint*"/>
+                               </parameters>
+                       </method>
+                       <method name="ensure_updated" symbol="goo_canvas_item_ensure_updated">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="item" type="GooCanvasItem*"/>
+                               </parameters>
+                       </method>
+                       <method name="find_child" symbol="goo_canvas_item_find_child">
+                               <return-type type="gint"/>
+                               <parameters>
+                                       <parameter name="item" type="GooCanvasItem*"/>
+                                       <parameter name="child" type="GooCanvasItem*"/>
+                               </parameters>
+                       </method>
+                       <method name="get_bounds" symbol="goo_canvas_item_get_bounds">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="item" type="GooCanvasItem*"/>
+                                       <parameter name="bounds" type="GooCanvasBounds*"/>
+                               </parameters>
+                       </method>
+                       <method name="get_canvas" symbol="goo_canvas_item_get_canvas">
+                               <return-type type="GooCanvas*"/>
+                               <parameters>
+                                       <parameter name="item" type="GooCanvasItem*"/>
+                               </parameters>
+                       </method>
+                       <method name="get_child" symbol="goo_canvas_item_get_child">
+                               <return-type type="GooCanvasItem*"/>
+                               <parameters>
+                                       <parameter name="item" type="GooCanvasItem*"/>
+                                       <parameter name="child_num" type="gint"/>
+                               </parameters>
+                       </method>
+                       <method name="get_child_properties" symbol="goo_canvas_item_get_child_properties">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="item" type="GooCanvasItem*"/>
+                                       <parameter name="child" type="GooCanvasItem*"/>
+                               </parameters>
+                       </method>
+                       <method name="get_child_properties_valist" symbol="goo_canvas_item_get_child_properties_valist">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="item" type="GooCanvasItem*"/>
+                                       <parameter name="child" type="GooCanvasItem*"/>
+                                       <parameter name="var_args" type="va_list"/>
+                               </parameters>
+                       </method>
+                       <method name="get_items_at" symbol="goo_canvas_item_get_items_at">
+                               <return-type type="GList*"/>
+                               <parameters>
+                                       <parameter name="item" type="GooCanvasItem*"/>
+                                       <parameter name="x" type="gdouble"/>
+                                       <parameter name="y" type="gdouble"/>
+                                       <parameter name="cr" type="cairo_t*"/>
+                                       <parameter name="is_pointer_event" type="gboolean"/>
+                                       <parameter name="parent_is_visible" type="gboolean"/>
+                                       <parameter name="found_items" type="GList*"/>
+                               </parameters>
+                       </method>
+                       <method name="get_model" symbol="goo_canvas_item_get_model">
+                               <return-type type="GooCanvasItemModel*"/>
+                               <parameters>
+                                       <parameter name="item" type="GooCanvasItem*"/>
+                               </parameters>
+                       </method>
+                       <method name="get_n_children" symbol="goo_canvas_item_get_n_children">
+                               <return-type type="gint"/>
+                               <parameters>
+                                       <parameter name="item" type="GooCanvasItem*"/>
+                               </parameters>
+                       </method>
+                       <method name="get_parent" symbol="goo_canvas_item_get_parent">
+                               <return-type type="GooCanvasItem*"/>
+                               <parameters>
+                                       <parameter name="item" type="GooCanvasItem*"/>
+                               </parameters>
+                       </method>
+                       <method name="get_requested_area" symbol="goo_canvas_item_get_requested_area">
+                               <return-type type="gboolean"/>
+                               <parameters>
+                                       <parameter name="item" type="GooCanvasItem*"/>
+                                       <parameter name="cr" type="cairo_t*"/>
+                                       <parameter name="requested_area" type="GooCanvasBounds*"/>
+                               </parameters>
+                       </method>
+                       <method name="get_requested_height" symbol="goo_canvas_item_get_requested_height">
+                               <return-type type="gdouble"/>
+                               <parameters>
+                                       <parameter name="item" type="GooCanvasItem*"/>
+                                       <parameter name="cr" type="cairo_t*"/>
+                                       <parameter name="width" type="gdouble"/>
+                               </parameters>
+                       </method>
+                       <method name="get_style" symbol="goo_canvas_item_get_style">
+                               <return-type type="GooCanvasStyle*"/>
+                               <parameters>
+                                       <parameter name="item" type="GooCanvasItem*"/>
+                               </parameters>
+                       </method>
+                       <method name="get_transform" symbol="goo_canvas_item_get_transform">
+                               <return-type type="gboolean"/>
+                               <parameters>
+                                       <parameter name="item" type="GooCanvasItem*"/>
+                                       <parameter name="transform" type="cairo_matrix_t*"/>
+                               </parameters>
+                       </method>
+                       <method name="get_transform_for_child" symbol="goo_canvas_item_get_transform_for_child">
+                               <return-type type="gboolean"/>
+                               <parameters>
+                                       <parameter name="item" type="GooCanvasItem*"/>
+                                       <parameter name="child" type="GooCanvasItem*"/>
+                                       <parameter name="transform" type="cairo_matrix_t*"/>
+                               </parameters>
+                       </method>
+                       <method name="is_container" symbol="goo_canvas_item_is_container">
+                               <return-type type="gboolean"/>
+                               <parameters>
+                                       <parameter name="item" type="GooCanvasItem*"/>
+                               </parameters>
+                       </method>
+                       <method name="is_visible" symbol="goo_canvas_item_is_visible">
+                               <return-type type="gboolean"/>
+                               <parameters>
+                                       <parameter name="item" type="GooCanvasItem*"/>
+                               </parameters>
+                       </method>
+                       <method name="lower" symbol="goo_canvas_item_lower">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="item" type="GooCanvasItem*"/>
+                                       <parameter name="below" type="GooCanvasItem*"/>
+                               </parameters>
+                       </method>
+                       <method name="move_child" symbol="goo_canvas_item_move_child">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="item" type="GooCanvasItem*"/>
+                                       <parameter name="old_position" type="gint"/>
+                                       <parameter name="new_position" type="gint"/>
+                               </parameters>
+                       </method>
+                       <method name="paint" symbol="goo_canvas_item_paint">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="item" type="GooCanvasItem*"/>
+                                       <parameter name="cr" type="cairo_t*"/>
+                                       <parameter name="bounds" type="GooCanvasBounds*"/>
+                                       <parameter name="scale" type="gdouble"/>
+                               </parameters>
+                       </method>
+                       <method name="raise" symbol="goo_canvas_item_raise">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="item" type="GooCanvasItem*"/>
+                                       <parameter name="above" type="GooCanvasItem*"/>
+                               </parameters>
+                       </method>
+                       <method name="remove" symbol="goo_canvas_item_remove">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="item" type="GooCanvasItem*"/>
+                               </parameters>
+                       </method>
+                       <method name="remove_child" symbol="goo_canvas_item_remove_child">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="item" type="GooCanvasItem*"/>
+                                       <parameter name="child_num" type="gint"/>
+                               </parameters>
+                       </method>
+                       <method name="request_update" symbol="goo_canvas_item_request_update">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="item" type="GooCanvasItem*"/>
+                               </parameters>
+                       </method>
+                       <method name="rotate" symbol="goo_canvas_item_rotate">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="item" type="GooCanvasItem*"/>
+                                       <parameter name="degrees" type="gdouble"/>
+                                       <parameter name="cx" type="gdouble"/>
+                                       <parameter name="cy" type="gdouble"/>
+                               </parameters>
+                       </method>
+                       <method name="scale" symbol="goo_canvas_item_scale">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="item" type="GooCanvasItem*"/>
+                                       <parameter name="sx" type="gdouble"/>
+                                       <parameter name="sy" type="gdouble"/>
+                               </parameters>
+                       </method>
+                       <method name="set_canvas" symbol="goo_canvas_item_set_canvas">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="item" type="GooCanvasItem*"/>
+                                       <parameter name="canvas" type="GooCanvas*"/>
+                               </parameters>
+                       </method>
+                       <method name="set_child_properties" symbol="goo_canvas_item_set_child_properties">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="item" type="GooCanvasItem*"/>
+                                       <parameter name="child" type="GooCanvasItem*"/>
+                               </parameters>
+                       </method>
+                       <method name="set_child_properties_valist" symbol="goo_canvas_item_set_child_properties_valist">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="item" type="GooCanvasItem*"/>
+                                       <parameter name="child" type="GooCanvasItem*"/>
+                                       <parameter name="var_args" type="va_list"/>
+                               </parameters>
+                       </method>
+                       <method name="set_model" symbol="goo_canvas_item_set_model">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="item" type="GooCanvasItem*"/>
+                                       <parameter name="model" type="GooCanvasItemModel*"/>
+                               </parameters>
+                       </method>
+                       <method name="set_parent" symbol="goo_canvas_item_set_parent">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="item" type="GooCanvasItem*"/>
+                                       <parameter name="parent" type="GooCanvasItem*"/>
+                               </parameters>
+                       </method>
+                       <method name="set_simple_transform" symbol="goo_canvas_item_set_simple_transform">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="item" type="GooCanvasItem*"/>
+                                       <parameter name="x" type="gdouble"/>
+                                       <parameter name="y" type="gdouble"/>
+                                       <parameter name="scale" type="gdouble"/>
+                                       <parameter name="rotation" type="gdouble"/>
+                               </parameters>
+                       </method>
+                       <method name="set_style" symbol="goo_canvas_item_set_style">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="item" type="GooCanvasItem*"/>
+                                       <parameter name="style" type="GooCanvasStyle*"/>
+                               </parameters>
+                       </method>
+                       <method name="set_transform" symbol="goo_canvas_item_set_transform">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="item" type="GooCanvasItem*"/>
+                                       <parameter name="transform" type="cairo_matrix_t*"/>
+                               </parameters>
+                       </method>
+                       <method name="skew_x" symbol="goo_canvas_item_skew_x">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="item" type="GooCanvasItem*"/>
+                                       <parameter name="degrees" type="gdouble"/>
+                                       <parameter name="cx" type="gdouble"/>
+                                       <parameter name="cy" type="gdouble"/>
+                               </parameters>
+                       </method>
+                       <method name="skew_y" symbol="goo_canvas_item_skew_y">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="item" type="GooCanvasItem*"/>
+                                       <parameter name="degrees" type="gdouble"/>
+                                       <parameter name="cx" type="gdouble"/>
+                                       <parameter name="cy" type="gdouble"/>
+                               </parameters>
+                       </method>
+                       <method name="stop_animation" symbol="goo_canvas_item_stop_animation">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="item" type="GooCanvasItem*"/>
+                               </parameters>
+                       </method>
+                       <method name="translate" symbol="goo_canvas_item_translate">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="item" type="GooCanvasItem*"/>
+                                       <parameter name="tx" type="gdouble"/>
+                                       <parameter name="ty" type="gdouble"/>
+                               </parameters>
+                       </method>
+                       <method name="update" symbol="goo_canvas_item_update">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="item" type="GooCanvasItem*"/>
+                                       <parameter name="entire_tree" type="gboolean"/>
+                                       <parameter name="cr" type="cairo_t*"/>
+                                       <parameter name="bounds" type="GooCanvasBounds*"/>
+                               </parameters>
+                       </method>
+                       <property name="can-focus" type="gboolean" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="description" type="char*" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="parent" type="GooCanvasItem*" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="pointer-events" type="GooCanvasPointerEvents" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="title" type="char*" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="transform" type="GooCairoMatrix*" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="visibility" type="GooCanvasItemVisibility" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="visibility-threshold" type="gdouble" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <signal name="button-press-event" when="LAST">
+                               <return-type type="gboolean"/>
+                               <parameters>
+                                       <parameter name="item" type="GooCanvasItem*"/>
+                                       <parameter name="target" type="GooCanvasItem*"/>
+                                       <parameter name="event" type="GdkEvent*"/>
+                               </parameters>
+                       </signal>
+                       <signal name="button-release-event" when="LAST">
+                               <return-type type="gboolean"/>
+                               <parameters>
+                                       <parameter name="item" type="GooCanvasItem*"/>
+                                       <parameter name="target" type="GooCanvasItem*"/>
+                                       <parameter name="event" type="GdkEvent*"/>
+                               </parameters>
+                       </signal>
+                       <signal name="child-notify" when="FIRST">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="item" type="GooCanvasItem*"/>
+                                       <parameter name="pspec" type="GParamSpec*"/>
+                               </parameters>
+                       </signal>
+                       <signal name="enter-notify-event" when="LAST">
+                               <return-type type="gboolean"/>
+                               <parameters>
+                                       <parameter name="item" type="GooCanvasItem*"/>
+                                       <parameter name="target" type="GooCanvasItem*"/>
+                                       <parameter name="event" type="GdkEvent*"/>
+                               </parameters>
+                       </signal>
+                       <signal name="focus-in-event" when="LAST">
+                               <return-type type="gboolean"/>
+                               <parameters>
+                                       <parameter name="item" type="GooCanvasItem*"/>
+                                       <parameter name="target" type="GooCanvasItem*"/>
+                                       <parameter name="event" type="GdkEvent*"/>
+                               </parameters>
+                       </signal>
+                       <signal name="focus-out-event" when="LAST">
+                               <return-type type="gboolean"/>
+                               <parameters>
+                                       <parameter name="item" type="GooCanvasItem*"/>
+                                       <parameter name="target" type="GooCanvasItem*"/>
+                                       <parameter name="event" type="GdkEvent*"/>
+                               </parameters>
+                       </signal>
+                       <signal name="grab-broken-event" when="LAST">
+                               <return-type type="gboolean"/>
+                               <parameters>
+                                       <parameter name="item" type="GooCanvasItem*"/>
+                                       <parameter name="target" type="GooCanvasItem*"/>
+                                       <parameter name="event" type="GdkEvent*"/>
+                               </parameters>
+                       </signal>
+                       <signal name="key-press-event" when="LAST">
+                               <return-type type="gboolean"/>
+                               <parameters>
+                                       <parameter name="item" type="GooCanvasItem*"/>
+                                       <parameter name="target" type="GooCanvasItem*"/>
+                                       <parameter name="event" type="GdkEvent*"/>
+                               </parameters>
+                       </signal>
+                       <signal name="key-release-event" when="LAST">
+                               <return-type type="gboolean"/>
+                               <parameters>
+                                       <parameter name="item" type="GooCanvasItem*"/>
+                                       <parameter name="target" type="GooCanvasItem*"/>
+                                       <parameter name="event" type="GdkEvent*"/>
+                               </parameters>
+                       </signal>
+                       <signal name="leave-notify-event" when="LAST">
+                               <return-type type="gboolean"/>
+                               <parameters>
+                                       <parameter name="item" type="GooCanvasItem*"/>
+                                       <parameter name="target" type="GooCanvasItem*"/>
+                                       <parameter name="event" type="GdkEvent*"/>
+                               </parameters>
+                       </signal>
+                       <signal name="motion-notify-event" when="LAST">
+                               <return-type type="gboolean"/>
+                               <parameters>
+                                       <parameter name="item" type="GooCanvasItem*"/>
+                                       <parameter name="target" type="GooCanvasItem*"/>
+                                       <parameter name="event" type="GdkEvent*"/>
+                               </parameters>
+                       </signal>
+                       <vfunc name="add_child">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="item" type="GooCanvasItem*"/>
+                                       <parameter name="child" type="GooCanvasItem*"/>
+                                       <parameter name="position" type="gint"/>
+                               </parameters>
+                       </vfunc>
+                       <vfunc name="allocate_area">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="item" type="GooCanvasItem*"/>
+                                       <parameter name="cr" type="cairo_t*"/>
+                                       <parameter name="requested_area" type="GooCanvasBounds*"/>
+                                       <parameter name="allocated_area" type="GooCanvasBounds*"/>
+                                       <parameter name="x_offset" type="gdouble"/>
+                                       <parameter name="y_offset" type="gdouble"/>
+                               </parameters>
+                       </vfunc>
+                       <vfunc name="get_bounds">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="item" type="GooCanvasItem*"/>
+                                       <parameter name="bounds" type="GooCanvasBounds*"/>
+                               </parameters>
+                       </vfunc>
+                       <vfunc name="get_canvas">
+                               <return-type type="GooCanvas*"/>
+                               <parameters>
+                                       <parameter name="item" type="GooCanvasItem*"/>
+                               </parameters>
+                       </vfunc>
+                       <vfunc name="get_child">
+                               <return-type type="GooCanvasItem*"/>
+                               <parameters>
+                                       <parameter name="item" type="GooCanvasItem*"/>
+                                       <parameter name="child_num" type="gint"/>
+                               </parameters>
+                       </vfunc>
+                       <vfunc name="get_child_property">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="item" type="GooCanvasItem*"/>
+                                       <parameter name="child" type="GooCanvasItem*"/>
+                                       <parameter name="property_id" type="guint"/>
+                                       <parameter name="value" type="GValue*"/>
+                                       <parameter name="pspec" type="GParamSpec*"/>
+                               </parameters>
+                       </vfunc>
+                       <vfunc name="get_items_at">
+                               <return-type type="GList*"/>
+                               <parameters>
+                                       <parameter name="item" type="GooCanvasItem*"/>
+                                       <parameter name="x" type="gdouble"/>
+                                       <parameter name="y" type="gdouble"/>
+                                       <parameter name="cr" type="cairo_t*"/>
+                                       <parameter name="is_pointer_event" type="gboolean"/>
+                                       <parameter name="parent_is_visible" type="gboolean"/>
+                                       <parameter name="found_items" type="GList*"/>
+                               </parameters>
+                       </vfunc>
+                       <vfunc name="get_model">
+                               <return-type type="GooCanvasItemModel*"/>
+                               <parameters>
+                                       <parameter name="item" type="GooCanvasItem*"/>
+                               </parameters>
+                       </vfunc>
+                       <vfunc name="get_n_children">
+                               <return-type type="gint"/>
+                               <parameters>
+                                       <parameter name="item" type="GooCanvasItem*"/>
+                               </parameters>
+                       </vfunc>
+                       <vfunc name="get_parent">
+                               <return-type type="GooCanvasItem*"/>
+                               <parameters>
+                                       <parameter name="item" type="GooCanvasItem*"/>
+                               </parameters>
+                       </vfunc>
+                       <vfunc name="get_requested_area">
+                               <return-type type="gboolean"/>
+                               <parameters>
+                                       <parameter name="item" type="GooCanvasItem*"/>
+                                       <parameter name="cr" type="cairo_t*"/>
+                                       <parameter name="requested_area" type="GooCanvasBounds*"/>
+                               </parameters>
+                       </vfunc>
+                       <vfunc name="get_requested_height">
+                               <return-type type="gdouble"/>
+                               <parameters>
+                                       <parameter name="item" type="GooCanvasItem*"/>
+                                       <parameter name="cr" type="cairo_t*"/>
+                                       <parameter name="width" type="gdouble"/>
+                               </parameters>
+                       </vfunc>
+                       <vfunc name="get_style">
+                               <return-type type="GooCanvasStyle*"/>
+                               <parameters>
+                                       <parameter name="item" type="GooCanvasItem*"/>
+                               </parameters>
+                       </vfunc>
+                       <vfunc name="get_transform">
+                               <return-type type="gboolean"/>
+                               <parameters>
+                                       <parameter name="item" type="GooCanvasItem*"/>
+                                       <parameter name="transform" type="cairo_matrix_t*"/>
+                               </parameters>
+                       </vfunc>
+                       <vfunc name="get_transform_for_child">
+                               <return-type type="gboolean"/>
+                               <parameters>
+                                       <parameter name="item" type="GooCanvasItem*"/>
+                                       <parameter name="child" type="GooCanvasItem*"/>
+                                       <parameter name="transform" type="cairo_matrix_t*"/>
+                               </parameters>
+                       </vfunc>
+                       <vfunc name="is_visible">
+                               <return-type type="gboolean"/>
+                               <parameters>
+                                       <parameter name="item" type="GooCanvasItem*"/>
+                               </parameters>
+                       </vfunc>
+                       <vfunc name="move_child">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="item" type="GooCanvasItem*"/>
+                                       <parameter name="old_position" type="gint"/>
+                                       <parameter name="new_position" type="gint"/>
+                               </parameters>
+                       </vfunc>
+                       <vfunc name="paint">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="item" type="GooCanvasItem*"/>
+                                       <parameter name="cr" type="cairo_t*"/>
+                                       <parameter name="bounds" type="GooCanvasBounds*"/>
+                                       <parameter name="scale" type="gdouble"/>
+                               </parameters>
+                       </vfunc>
+                       <vfunc name="query_tooltip">
+                               <return-type type="gboolean"/>
+                               <parameters>
+                                       <parameter name="item" type="GooCanvasItem*"/>
+                                       <parameter name="x" type="gdouble"/>
+                                       <parameter name="y" type="gdouble"/>
+                                       <parameter name="keyboard_tooltip" type="gboolean"/>
+                                       <parameter name="tooltip" type="gpointer*"/>
+                               </parameters>
+                       </vfunc>
+                       <vfunc name="remove_child">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="item" type="GooCanvasItem*"/>
+                                       <parameter name="child_num" type="gint"/>
+                               </parameters>
+                       </vfunc>
+                       <vfunc name="request_update">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="item" type="GooCanvasItem*"/>
+                               </parameters>
+                       </vfunc>
+                       <vfunc name="set_canvas">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="item" type="GooCanvasItem*"/>
+                                       <parameter name="canvas" type="GooCanvas*"/>
+                               </parameters>
+                       </vfunc>
+                       <vfunc name="set_child_property">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="item" type="GooCanvasItem*"/>
+                                       <parameter name="child" type="GooCanvasItem*"/>
+                                       <parameter name="property_id" type="guint"/>
+                                       <parameter name="value" type="GValue*"/>
+                                       <parameter name="pspec" type="GParamSpec*"/>
+                               </parameters>
+                       </vfunc>
+                       <vfunc name="set_model">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="item" type="GooCanvasItem*"/>
+                                       <parameter name="model" type="GooCanvasItemModel*"/>
+                               </parameters>
+                       </vfunc>
+                       <vfunc name="set_parent">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="item" type="GooCanvasItem*"/>
+                                       <parameter name="parent" type="GooCanvasItem*"/>
+                               </parameters>
+                       </vfunc>
+                       <vfunc name="set_style">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="item" type="GooCanvasItem*"/>
+                                       <parameter name="style" type="GooCanvasStyle*"/>
+                               </parameters>
+                       </vfunc>
+                       <vfunc name="set_transform">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="item" type="GooCanvasItem*"/>
+                                       <parameter name="transform" type="cairo_matrix_t*"/>
+                               </parameters>
+                       </vfunc>
+                       <vfunc name="update">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="item" type="GooCanvasItem*"/>
+                                       <parameter name="entire_tree" type="gboolean"/>
+                                       <parameter name="cr" type="cairo_t*"/>
+                                       <parameter name="bounds" type="GooCanvasBounds*"/>
+                               </parameters>
+                       </vfunc>
+               </interface>
+               <interface name="GooCanvasItemModel" type-name="GooCanvasItemModel" get-type="goo_canvas_item_model_get_type">
+                       <requires>
+                               <interface name="GObject"/>
+                       </requires>
+                       <method name="add_child" symbol="goo_canvas_item_model_add_child">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="model" type="GooCanvasItemModel*"/>
+                                       <parameter name="child" type="GooCanvasItemModel*"/>
+                                       <parameter name="position" type="gint"/>
+                               </parameters>
+                       </method>
+                       <method name="animate" symbol="goo_canvas_item_model_animate">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="model" type="GooCanvasItemModel*"/>
+                                       <parameter name="x" type="gdouble"/>
+                                       <parameter name="y" type="gdouble"/>
+                                       <parameter name="scale" type="gdouble"/>
+                                       <parameter name="degrees" type="gdouble"/>
+                                       <parameter name="absolute" type="gboolean"/>
+                                       <parameter name="duration" type="gint"/>
+                                       <parameter name="step_time" type="gint"/>
+                                       <parameter name="type" type="GooCanvasAnimateType"/>
+                               </parameters>
+                       </method>
+                       <method name="class_find_child_property" symbol="goo_canvas_item_model_class_find_child_property">
+                               <return-type type="GParamSpec*"/>
+                               <parameters>
+                                       <parameter name="mclass" type="GObjectClass*"/>
+                                       <parameter name="property_name" type="gchar*"/>
+                               </parameters>
+                       </method>
+                       <method name="class_install_child_property" symbol="goo_canvas_item_model_class_install_child_property">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="mclass" type="GObjectClass*"/>
+                                       <parameter name="property_id" type="guint"/>
+                                       <parameter name="pspec" type="GParamSpec*"/>
+                               </parameters>
+                       </method>
+                       <method name="class_list_child_properties" symbol="goo_canvas_item_model_class_list_child_properties">
+                               <return-type type="GParamSpec**"/>
+                               <parameters>
+                                       <parameter name="mclass" type="GObjectClass*"/>
+                                       <parameter name="n_properties" type="guint*"/>
+                               </parameters>
+                       </method>
+                       <method name="find_child" symbol="goo_canvas_item_model_find_child">
+                               <return-type type="gint"/>
+                               <parameters>
+                                       <parameter name="model" type="GooCanvasItemModel*"/>
+                                       <parameter name="child" type="GooCanvasItemModel*"/>
+                               </parameters>
+                       </method>
+                       <method name="get_child" symbol="goo_canvas_item_model_get_child">
+                               <return-type type="GooCanvasItemModel*"/>
+                               <parameters>
+                                       <parameter name="model" type="GooCanvasItemModel*"/>
+                                       <parameter name="child_num" type="gint"/>
+                               </parameters>
+                       </method>
+                       <method name="get_child_properties" symbol="goo_canvas_item_model_get_child_properties">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="model" type="GooCanvasItemModel*"/>
+                                       <parameter name="child" type="GooCanvasItemModel*"/>
+                               </parameters>
+                       </method>
+                       <method name="get_child_properties_valist" symbol="goo_canvas_item_model_get_child_properties_valist">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="model" type="GooCanvasItemModel*"/>
+                                       <parameter name="child" type="GooCanvasItemModel*"/>
+                                       <parameter name="var_args" type="va_list"/>
+                               </parameters>
+                       </method>
+                       <method name="get_n_children" symbol="goo_canvas_item_model_get_n_children">
+                               <return-type type="gint"/>
+                               <parameters>
+                                       <parameter name="model" type="GooCanvasItemModel*"/>
+                               </parameters>
+                       </method>
+                       <method name="get_parent" symbol="goo_canvas_item_model_get_parent">
+                               <return-type type="GooCanvasItemModel*"/>
+                               <parameters>
+                                       <parameter name="model" type="GooCanvasItemModel*"/>
+                               </parameters>
+                       </method>
+                       <method name="get_style" symbol="goo_canvas_item_model_get_style">
+                               <return-type type="GooCanvasStyle*"/>
+                               <parameters>
+                                       <parameter name="model" type="GooCanvasItemModel*"/>
+                               </parameters>
+                       </method>
+                       <method name="get_transform" symbol="goo_canvas_item_model_get_transform">
+                               <return-type type="gboolean"/>
+                               <parameters>
+                                       <parameter name="model" type="GooCanvasItemModel*"/>
+                                       <parameter name="transform" type="cairo_matrix_t*"/>
+                               </parameters>
+                       </method>
+                       <method name="is_container" symbol="goo_canvas_item_model_is_container">
+                               <return-type type="gboolean"/>
+                               <parameters>
+                                       <parameter name="model" type="GooCanvasItemModel*"/>
+                               </parameters>
+                       </method>
+                       <method name="lower" symbol="goo_canvas_item_model_lower">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="model" type="GooCanvasItemModel*"/>
+                                       <parameter name="below" type="GooCanvasItemModel*"/>
+                               </parameters>
+                       </method>
+                       <method name="move_child" symbol="goo_canvas_item_model_move_child">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="model" type="GooCanvasItemModel*"/>
+                                       <parameter name="old_position" type="gint"/>
+                                       <parameter name="new_position" type="gint"/>
+                               </parameters>
+                       </method>
+                       <method name="raise" symbol="goo_canvas_item_model_raise">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="model" type="GooCanvasItemModel*"/>
+                                       <parameter name="above" type="GooCanvasItemModel*"/>
+                               </parameters>
+                       </method>
+                       <method name="remove" symbol="goo_canvas_item_model_remove">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="model" type="GooCanvasItemModel*"/>
+                               </parameters>
+                       </method>
+                       <method name="remove_child" symbol="goo_canvas_item_model_remove_child">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="model" type="GooCanvasItemModel*"/>
+                                       <parameter name="child_num" type="gint"/>
+                               </parameters>
+                       </method>
+                       <method name="rotate" symbol="goo_canvas_item_model_rotate">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="model" type="GooCanvasItemModel*"/>
+                                       <parameter name="degrees" type="gdouble"/>
+                                       <parameter name="cx" type="gdouble"/>
+                                       <parameter name="cy" type="gdouble"/>
+                               </parameters>
+                       </method>
+                       <method name="scale" symbol="goo_canvas_item_model_scale">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="model" type="GooCanvasItemModel*"/>
+                                       <parameter name="sx" type="gdouble"/>
+                                       <parameter name="sy" type="gdouble"/>
+                               </parameters>
+                       </method>
+                       <method name="set_child_properties" symbol="goo_canvas_item_model_set_child_properties">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="model" type="GooCanvasItemModel*"/>
+                                       <parameter name="child" type="GooCanvasItemModel*"/>
+                               </parameters>
+                       </method>
+                       <method name="set_child_properties_valist" symbol="goo_canvas_item_model_set_child_properties_valist">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="model" type="GooCanvasItemModel*"/>
+                                       <parameter name="child" type="GooCanvasItemModel*"/>
+                                       <parameter name="var_args" type="va_list"/>
+                               </parameters>
+                       </method>
+                       <method name="set_parent" symbol="goo_canvas_item_model_set_parent">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="model" type="GooCanvasItemModel*"/>
+                                       <parameter name="parent" type="GooCanvasItemModel*"/>
+                               </parameters>
+                       </method>
+                       <method name="set_simple_transform" symbol="goo_canvas_item_model_set_simple_transform">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="model" type="GooCanvasItemModel*"/>
+                                       <parameter name="x" type="gdouble"/>
+                                       <parameter name="y" type="gdouble"/>
+                                       <parameter name="scale" type="gdouble"/>
+                                       <parameter name="rotation" type="gdouble"/>
+                               </parameters>
+                       </method>
+                       <method name="set_style" symbol="goo_canvas_item_model_set_style">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="model" type="GooCanvasItemModel*"/>
+                                       <parameter name="style" type="GooCanvasStyle*"/>
+                               </parameters>
+                       </method>
+                       <method name="set_transform" symbol="goo_canvas_item_model_set_transform">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="model" type="GooCanvasItemModel*"/>
+                                       <parameter name="transform" type="cairo_matrix_t*"/>
+                               </parameters>
+                       </method>
+                       <method name="skew_x" symbol="goo_canvas_item_model_skew_x">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="model" type="GooCanvasItemModel*"/>
+                                       <parameter name="degrees" type="gdouble"/>
+                                       <parameter name="cx" type="gdouble"/>
+                                       <parameter name="cy" type="gdouble"/>
+                               </parameters>
+                       </method>
+                       <method name="skew_y" symbol="goo_canvas_item_model_skew_y">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="model" type="GooCanvasItemModel*"/>
+                                       <parameter name="degrees" type="gdouble"/>
+                                       <parameter name="cx" type="gdouble"/>
+                                       <parameter name="cy" type="gdouble"/>
+                               </parameters>
+                       </method>
+                       <method name="stop_animation" symbol="goo_canvas_item_model_stop_animation">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="model" type="GooCanvasItemModel*"/>
+                               </parameters>
+                       </method>
+                       <method name="translate" symbol="goo_canvas_item_model_translate">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="model" type="GooCanvasItemModel*"/>
+                                       <parameter name="tx" type="gdouble"/>
+                                       <parameter name="ty" type="gdouble"/>
+                               </parameters>
+                       </method>
+                       <property name="can-focus" type="gboolean" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="description" type="char*" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="parent" type="GooCanvasItemModel*" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="pointer-events" type="GooCanvasPointerEvents" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="title" type="char*" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="transform" type="GooCairoMatrix*" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="visibility" type="GooCanvasItemVisibility" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <property name="visibility-threshold" type="gdouble" readable="1" writable="1" construct="0" construct-only="0"/>
+                       <signal name="changed" when="LAST">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="model" type="GooCanvasItemModel*"/>
+                                       <parameter name="recompute_bounds" type="gboolean"/>
+                               </parameters>
+                       </signal>
+                       <signal name="child-added" when="LAST">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="model" type="GooCanvasItemModel*"/>
+                                       <parameter name="child_num" type="gint"/>
+                               </parameters>
+                       </signal>
+                       <signal name="child-moved" when="LAST">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="model" type="GooCanvasItemModel*"/>
+                                       <parameter name="old_child_num" type="gint"/>
+                                       <parameter name="new_child_num" type="gint"/>
+                               </parameters>
+                       </signal>
+                       <signal name="child-notify" when="FIRST">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="model" type="GooCanvasItemModel*"/>
+                                       <parameter name="pspec" type="GParamSpec*"/>
+                               </parameters>
+                       </signal>
+                       <signal name="child-removed" when="LAST">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="model" type="GooCanvasItemModel*"/>
+                                       <parameter name="child_num" type="gint"/>
+                               </parameters>
+                       </signal>
+                       <vfunc name="add_child">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="model" type="GooCanvasItemModel*"/>
+                                       <parameter name="child" type="GooCanvasItemModel*"/>
+                                       <parameter name="position" type="gint"/>
+                               </parameters>
+                       </vfunc>
+                       <vfunc name="create_item">
+                               <return-type type="GooCanvasItem*"/>
+                               <parameters>
+                                       <parameter name="model" type="GooCanvasItemModel*"/>
+                                       <parameter name="canvas" type="GooCanvas*"/>
+                               </parameters>
+                       </vfunc>
+                       <vfunc name="get_child">
+                               <return-type type="GooCanvasItemModel*"/>
+                               <parameters>
+                                       <parameter name="model" type="GooCanvasItemModel*"/>
+                                       <parameter name="child_num" type="gint"/>
+                               </parameters>
+                       </vfunc>
+                       <vfunc name="get_child_property">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="model" type="GooCanvasItemModel*"/>
+                                       <parameter name="child" type="GooCanvasItemModel*"/>
+                                       <parameter name="property_id" type="guint"/>
+                                       <parameter name="value" type="GValue*"/>
+                                       <parameter name="pspec" type="GParamSpec*"/>
+                               </parameters>
+                       </vfunc>
+                       <vfunc name="get_n_children">
+                               <return-type type="gint"/>
+                               <parameters>
+                                       <parameter name="model" type="GooCanvasItemModel*"/>
+                               </parameters>
+                       </vfunc>
+                       <vfunc name="get_parent">
+                               <return-type type="GooCanvasItemModel*"/>
+                               <parameters>
+                                       <parameter name="model" type="GooCanvasItemModel*"/>
+                               </parameters>
+                       </vfunc>
+                       <vfunc name="get_style">
+                               <return-type type="GooCanvasStyle*"/>
+                               <parameters>
+                                       <parameter name="model" type="GooCanvasItemModel*"/>
+                               </parameters>
+                       </vfunc>
+                       <vfunc name="get_transform">
+                               <return-type type="gboolean"/>
+                               <parameters>
+                                       <parameter name="model" type="GooCanvasItemModel*"/>
+                                       <parameter name="transform" type="cairo_matrix_t*"/>
+                               </parameters>
+                       </vfunc>
+                       <vfunc name="move_child">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="model" type="GooCanvasItemModel*"/>
+                                       <parameter name="old_position" type="gint"/>
+                                       <parameter name="new_position" type="gint"/>
+                               </parameters>
+                       </vfunc>
+                       <vfunc name="remove_child">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="model" type="GooCanvasItemModel*"/>
+                                       <parameter name="child_num" type="gint"/>
+                               </parameters>
+                       </vfunc>
+                       <vfunc name="set_child_property">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="item" type="GooCanvasItemModel*"/>
+                                       <parameter name="child" type="GooCanvasItemModel*"/>
+                                       <parameter name="property_id" type="guint"/>
+                                       <parameter name="value" type="GValue*"/>
+                                       <parameter name="pspec" type="GParamSpec*"/>
+                               </parameters>
+                       </vfunc>
+                       <vfunc name="set_parent">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="model" type="GooCanvasItemModel*"/>
+                                       <parameter name="parent" type="GooCanvasItemModel*"/>
+                               </parameters>
+                       </vfunc>
+                       <vfunc name="set_style">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="model" type="GooCanvasItemModel*"/>
+                                       <parameter name="style" type="GooCanvasStyle*"/>
+                               </parameters>
+                       </vfunc>
+                       <vfunc name="set_transform">
+                               <return-type type="void"/>
+                               <parameters>
+                                       <parameter name="model" type="GooCanvasItemModel*"/>
+                                       <parameter name="transform" type="cairo_matrix_t*"/>
+                               </parameters>
+                       </vfunc>
+               </interface>
+               <constant name="NUM_ARROW_POINTS" type="int" value="5"/>
+               <union name="GooCanvasPathCommand">
+                       <field name="simple" type="gpointer"/>
+                       <field name="curve" type="gpointer"/>
+                       <field name="arc" type="gpointer"/>
+               </union>
+       </namespace>
+</api>
diff --git a/vapi/packages/goocanvas/goocanvas.metadata b/vapi/packages/goocanvas/goocanvas.metadata
new file mode 100644 (file)
index 0000000..46eedc0
--- /dev/null
@@ -0,0 +1 @@
+Goo cprefix="Goo" lower_case_cprefix="goo_" cheader_filename="goocanvas.h"
diff --git a/vapi/packages/goocanvas/goocanvas.namespace b/vapi/packages/goocanvas/goocanvas.namespace
new file mode 100644 (file)
index 0000000..161ba85
--- /dev/null
@@ -0,0 +1 @@
+Goo