[cairo] gobject boxed types

Aron Rubin aron.rubin at lmco.com
Mon Sep 15 14:07:06 PDT 2008


Colin Walters wrote:
> Hi,
> 
> We had a short discussion about this on #gtk+ a few days ago.
> Basically, it would greatly help the GObject-based stack above Cairo
> (GTK+, HippoCanvas, GooCanvas, Clutter, etc.) if we had official
> GObject "boxed" types for Cairo objects.
> 
> This is necessary because the GTypes are used in things like signals
> to specify argument types, and language bindings need that data.  Now,
> one possibility Matthias Clasen suggested would be to put these in
> GDK, which would be somewhat tricky from a layering perspective
> (neither Pango nor Clutter for example currently depend on GDK as far
> as I know), but might be workable.  Another possibility is to put them
> in Cairo itself, optionally enabled.
> 
> Just to be extremely clear the goal is not to have cairo hard depend
> on GLib in any way - for example Mozilla on Windows/OS X and any other
> embedded type cases would ship with this off and things should be
> fine. I do expect however that freedesktop.org/Linux OS vendors and
> the like would ship with this enabled.
> 
> Here is a patch, should apply to the latest git.

I am confused mostly by the responses to this email but maybe the last
paragraph as well. It seems there are objections to non-existent request
to make cairo objects GObjects. GObject "boxed" types are used to
appliqué GType information to non-gobjects so why would this not exist
as an entirely separate cairo-glib library?

It seems like cairo-glib and cairo-gdk may want to live to together as
separate libraries in a larger cairo-gstuff integration distributable. I
have a gdk_cairo_image_surface_from_pixbuf which may be good to
contribute as well.

Aron


More information about the cairo mailing list