Release Digest: GNOME, November 6, 2002
Nov 07, 2002, 05:00 (0 Talkback[s])
I'm releasing today version 0.5.0 of Kiwi, a framework for developing
graphical applications using Python and based on PyGTK. This is the
sixth public release of Kiwi, and in this version it has evolved into a
quite complete application framework, with many perks and niceties. Grab
the latest code from:
If you are looking for something to make Python applications using GTK
much easier to code, more Python-like, and with extended widget
functionality, try Kiwi. This release adds a complete development guide
and API documentation (generated with Edward Loper's excellent epydoc
tool), the guide itself providing a lot of information on Kiwi
Kiwi is used in Stoq (www.stoq.com.br), a GPLed retail system that is
based on Python and PyGTK, and for internal development at SecurePipe,
Kiwi is free software licensed through the GNU LGPL.
- MVC-like base classes to structure an application into logical
modules, including a Visual Proxy, Delegates and traditional Views and
- Full, transparent support for libglade, allowing UI development to be done
graphically, and keeping implementation inside your instance of the
- Automatic signal connection based on function names; no need to
connect() manually or use Glade's signal interface
- Enhanced CList, CTree, OptionMenu, Label and Combo classes based on
the related PyGTK widgets.
- A complete development guide, and complete API documentation.
- Examples and tests, and lots of code.
This update provides:
- Complete API documentation and a detailed guide full of examples and
- Proxy and Model classes, that provide a way to attach an instance to
an interface and have it be instantly updated without requiring any
extra coding. This is a very special feature that apps much easier
- CListDelegate, a configurable CList that provides a very high-level
API for listing instances and configuring the CList width, visibility,
alignment, tooltips and more.
- We now have Delegate classes (combined Views and Controllers) that
provide even more simplified ways to create interfaces.
- The Kiwi license has been changed to LGPL in preparation for the first
- Serious optimizations to CList reordering.
- Lots of code cleanup and refactoring.
- Docstrings for all public methods and classes.
- Over 15 example programs and 17 different tests.
- Meaningless statistics:
Diff changes: +16049/-11521; Checkins: 522; LOC: 4520(raw), 2429(sloc)
11 modules, 31 classes, 278 methods
Many thanks to Jon Nelson, Ricardo Froehlich and Johan Dahlin for
helping out with this version; lots of regression testing, suggestions
and code examples were contributed by them.
API reference: http://www.async.com.br/projects/kiwi/api/
Download Kiwi 0.5.0 from
We have Bonsai and Bugzilla available for Kiwi:
Feedback can come directly to me, firstname.lastname@example.org, or through the
PyGTK list, email@example.com
If you are using Kiwi in your project, it would be really nice to drop
me a line and let me know, I would like to add a list to the homepage
but I don't know most of you :)
I know I promised this the last time, but development focus shifted to
the framework and documentation; this means there is still no validated
Entry. The next major release will include a reworked Entry widget that
offers right-alignment (contributed by Johan) and validation. This work
has progressed nicely but is still not quite ready, so I chose to leave
it out for now.
Christian Reis, Senior Engineer, Async Open Source, Brazil.
http://async.com.br/~kiko/ | [+55 16] 261 2331 | NMFL
The next version of guile-goject bindings for the Gtk 2.0 platform is
Take a look at guile-gtk site:
Any feedback and help is always encouraged.