I’ve been working on a Glom 1.1/1.2 branch recently, trying to quickly add some features in time to release a stable version for the Ubuntu Edgy release. The Glom 1.1.6 announcement has a list of what’s new. My favourite new features are:
Add Related Table
This is a time-saver that lets you quickly add a table and a relationship that uses it. So, for instance, if you have
Album |
---|
Nebraska |
Asbury Park |
Closing Time |
you can quickly add an ID field, and a related table, so you have:
Album | Artist ID |
---|---|
Nebraska | 1 |
Asbury Park | 1 |
Closing Time | 2 |
with
Artist ID | Artist Name |
---|---|
1 | Bruce Springsteen |
2 | Tom Waits |
In future, I’d like it to take existing data from existing fields and put that into the related record, so that in one step we could get those two tables from this:
Album | Artist Name |
---|---|
Nebraska | Bruce Springsteen |
Asbury Park | Bruce Springsteen |
Closing Time | Tom Waits |
Use of the pygda API
Via the records.connection object you can now use the whole pygda API (The libgda Python API) from your button scripts and calculated fields, so there is no limit to what you can do with the underlying database. Be careful with this great power. More details on the Glom API page.
This feature was easy to implement thanks to the wonderful pygobject_new() function from pygtk, which is a lot like gtkmm’s Glib::wrap().