GEPS 029: GTK3-GObject introspection Conversion
Gramps was written with GTK 2 toolkit. This has been replaced upstream with GTK 3, so Gramps should convert to GTK 3.
Contents
Guideline
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
Documentation
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:
Problems
- Gtk.Clipboard seems to work differently
Related Gramps Bugs
- #5009: Use gobject introspection for GTK 3 dependency