New in this released is API documentation which is generated using epydoc. It's still being written but at this point I feel that it's good enough to be a very useful resource to help understand kiwi. Kiwi is a PyGTK framework for building graphical applications loosely based on MVC Model-View-Controller (MVC) and Allen Holub's Visual proxy . Think of Kiwi as a high-level, object-oriented layer built on PyGTK.
Its design is based on real-world experience using PyGTK to develop large desktop applications, which use many concepts common to most graphical applications: multiple windows and dialogs, forms, data persistence, lists and high-level classes that support domain objects directly.
Grab the latest sources from:
What's new since 1.9.6? =======================
- Much improved mask support - DateEntry widget - Re-add ProxyDelegate (lost since kiwi1) - Draw validation icon on the left side for right align entries - Many ComboEntry bug fixes - Distribution helper improvements - Limited support for zope.interfaces - Add a better HIG alert dialog - Improved logging (a la GStreamer)
* An MVC-derived framework of classes: * Views, which represent the graphical display * Controllers, which handles user interaction with the widgets in a View. * Delegates, combines a View and a Controller. * Models, which are special mixins for your domain objects * Proxies, special types of Delegate designed to implement forms
* Validation: Kiwi supports validation on different levels: data type validation and verification on the Model/Proxy level, View validation and hooks for visually displaying validation state.
* ObjectList widget, which provides a higher level abstraction of GtkTreeView and all its classes (GtkTreeModel, GtkTreeViewColumn, GtkCellRenderer) with hooks to easily integrate into the Kiwi Framework.
* Mask suport: You can set a mask on entries to force the input to follow a certain standard, such as zip code, social security, ip address
* Gazpacho integration for most (non-deprecated) interactive widgets with attributes for handling validation and proxy attributes.
* UI Test framework Features a recorder and a player. The recorder allows you to record different tasks, a script will be saved which will reproduce the actions you made in the interface.
* Kiwi Tasklets Tasklet is a small coroutines framework written by Gustavo Carneiro, it was previously known as gtasklets.
* PyGTK utilities, to make it easier to add signals and properties to your objects.
* i18n translation utilities, to help you translate PyGTK applications, currently depends on gettext and intltool.
* and many other things!
Documentation ============= Kiwi provides API documentation generated by epydoc, it can be found at
Included in the tarball are also a number of examples, which serves as a good starting point. Keep in mind that most of them require gazpacho to be installed.
Thanks ====== Christian Robottom Reis: Original author and design Lorenzo Gil Sanchez: PyGTK 2.x port
Also thanks to the following people which has contributed features or bug reports: Ali Afshar, Henrique Romano, Daniel Saran R. da Cunha, Evandro Vale Miquelito, Gustavo Barbieri, Gustavo Carneiro, Sidnei da Silva Patrick O'Brien
Homepage http://www.async.com.br/projects/kiwi/ Download http://www.async.com.br/projects/kiwi/download/ Repository http://svn.async.com.br/cgi-bin/viewcvs.cgi/kiwi/ Report a bug http://bugs.async.com.br/enter_bug.cgi?product=Kiwi API docs http://www.async.com.br/projects/kiwi/api/ Open bugs http://tinyurl.com/cyrms Mail. list http://www.async.com.br/mailman/listinfo/kiwi/