Release Digest: GNOME, November 6, 2002

Kiwi 0.5.0

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,
Inc. (www.securepipe.com).

Kiwi is free software licensed through the GNU LGPL.

Features include:

- 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
  to code.
- 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
  major release.
- 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.

Kiwi Homepage:

Online documentation:
    HOWTO: http://www.async.com.br/projects/kiwi/howto/
    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, kiko@async.com.br, or through the
PyGTK list, pygtk@daa.com.au

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.

Take care,
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.


Get the Free Newsletter!

Subscribe to Developer Insider for top news, trends, & analysis