PyGTK Hell

I am prototyping a keyword search based application.

For easy programming, I use Python.
For easy GUI design, I chose glade.
So I have to use PyGTK.
The application is not demanding in terms of innovative technology or software versions, so I use a PC with RedHat 8.0.

However, I ran into a snag:
I wanted to use the gtk.TreeRowReference binding to refer to rows of a listbox, which I want to delete.
However, it turns out that the Python bindings of GTK didn’t cover 100% of the GTK’s API. One of the missing APIs is… gtk.TreeRowReference, which was added only to PyGTK 2.4.
The PyGTK version which came with RedHat 8.0 is 1.99.12.

I worked around the problem by using paths. Since paths (unlike references) become invalid if rows are inserted/deleted into the listbox before the row referred to, I had to delete the rows in reverse order – from the end to the beginning.

I promise to myself that next time I install Linux from fresh, I’ll use Debian. Then I’ll be able to solve the problem by upgrading packages until I get PyGTK 2.4 and the appropriate versions of packages upon which it depends.

Author: Omer Zak

I am deaf since birth. I played with big computers which eat punched cards and spew out printouts since age 12. Ever since they became available, I work and play with desktop size computers which eat keyboard keypresses and spew out display pixels. Among other things, I developed software which helped the deaf in Israel use the telephone network, by means of home computers equipped with modems. Several years later, I developed Hebrew localizations for some cellular phones, which helped the deaf in Israel utilize the cellular phone networks. I am interested in entrepreneurship, Science Fiction and making the world more accessible to people with disabilities.