GNOME Bugzilla – Bug 626257
Add GObject Introspection support
Last modified: 2011-01-03 12:56:03 UTC
In the lights of bugs #626091, #626224, 626244 and this GnomeGoal: http://live.gnome.org/GnomeGoals/AddGObjectIntrospectionSupport it looks we're going to need GObject Introspection support in eog to be able to support python plugins in the future (current master disables them). Let's target this for GNOME 3.0 and see if we manage to do it. ;)
I'm already working on this and have made quite some progress. Will post patches soonish.
*Setting correct "target" field in Bugzilla!*
Created attachment 167384 [details] [review] Rename EogDebugSection to EogDebug Also rename EOG_NO_DEBUG to EOG_DEBUG_NO_DEBUG for clarity in bindings.
Created attachment 167385 [details] [review] Wrap ExifData in a EogExifData boxed type This is for better interaction with bindings
Created attachment 167386 [details] [review] Add the necessary machinery to generate the introspection data from eog Annotations are still missing, but this provides enough for basic introspection usage
Review of attachment 167385 [details] [review]: Pushed the first two patches to master as they make sense to have anyway.
Review of attachment 167384 [details] [review]: see comment 6
Review of attachment 167386 [details] [review]: You seem to have forgotten the configure.ac parts in this one. :)
Apparently a lot has changed in g-i because now I'm having issues getting this patch to work, even after adding the missing configure.ac bits. I'll attach a newer version when I fix this.
Created attachment 176938 [details] [review] Add the necessary machinery to generate the introspection data from eog Annotations are still missing, but this provides enough for basic introspection usage
Created attachment 176939 [details] [review] Dont use EogExifData in the C api
Created attachment 176940 [details] [review] Don't make types internal
Sorry for the rough patches, but I've wasted enough time with this. Apparently something changed in gobject-introspection's support for typedefs and that broke the whole thing. It was necessary to make the typedef internal to avoid it breaking. Also, having G_GNUC_INTERNAL made the types invisible to the scanner. This at least compiles, but I didn't test the introspection at all.
There we go. We can add annotations later. For now the basic introspection support is already enough for us. commit f457e6cd2f9b25194145681109ae4bd7f3b4ee7f Author: Claudio Saavedra <csaavedra@igalia.com> Date: Thu Dec 23 16:27:13 2010 +0200 Dont use EogExifData in the C api https://bugzilla.gnome.org/show_bug.cgi?id=626257 commit d3ee0241723db6729cb7331428293c9dc95e8cdd Author: Claudio Saavedra <csaavedra@igalia.com> Date: Thu Dec 23 16:28:08 2010 +0200 Don't make enum types internal https://bugzilla.gnome.org/show_bug.cgi?id=626257 commit b316c9e0b30a8c6d67feb8f21a20268e18c8cc3d Author: Claudio Saavedra <csaavedra@igalia.com> Date: Mon Aug 9 00:55:11 2010 +0300 Add the necessary machinery to generate the introspection data from eog Annotations are still missing, but this provides enough for basic introspection usage https://bugzilla.gnome.org/show_bug.cgi?id=626257 This problem has been fixed in the development version. The fix will be available in the next major software release. Thank you for your bug report.