Difference between revisions of "GEPS 029: GTK3-GObject introspection Conversion"

From Gramps
Jump to: navigation, search
m (Problems)
m (Documentation)
Line 18: Line 18:
Furthermore, for the other gi libs:
Furthermore, for the other gi libs:
* [http://developer.gnome.org/pango/stable/pango-Cairo-Rendering.html PangoCairo]
* [http://developer.gnome.org/pango/stable/pango-Cairo-Rendering.html PangoCairo]
* [http://developer.gnome.org/pango/stable/pango.html Pango]
* [http://developer.gnome.org/ http://developer.gnome.org/]
== Problems ==
== Problems ==

Revision as of 21:25, 17 June 2012

Gramps was written with GTK 2 toolkit. This has been replaced upstream with GTK 3, so Gramps should convert to GTK 3.


We try to convert 1 to 1. If there are problems due to deprecated features, or otherwise, add in the code:

# TODO GTK3: write what problem is due to gtk 3 conversion

Before release, all TODO GTK3 in the code must be cleaned up


Python GTK3 docs: [1]

Alternative is to look at the base C documentation, and understand from experience how the introspection works. Gnome docs: [2].

As python works with classes, it looks somewhat like the C++ interface: [3]. To investigate the specific override (how to init Gtk classes):

  • python overrides: [4]

Furthermore, for the other gi libs:


  • glade can no longer work with our catalog. We need to upgrade comboboxentry to combobox with has_entry manually, and hope editors keep working...
  • expose is no longer present on gtk.widget. Draw must be used. Unclear how, [5].
  • Gtk.Clipboard seems to work differently

Related Gramps Bugs

  • #5009: Use gobject introspection for GTK 3 dependency