Kiwi is a PyGTK framework for building graphical applications loosely based on MVC Model-View-Controller (MVC) and Allen Holub's Visual proxy [1]. 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. Download ======== Grab the latest sources from: http://www.async.com.br/projects/kiwi/download/kiwi-1.9.5.tar.gz What's new since 1.9.4? ======================= 1.9.5 is a paper bag release, it only fixes a bug that makes it possible to install kiwi again. Features ======== * 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. * A List 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. * 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! Requirements ============ Python 2.3 or higher (2.4 recommended) http://www.python.org/ PyGTK 2.6.0 or higher (2.8 recommended) http://www.pygtk.org/ gazpacho 0.6.2 (svn recommenced) http://gazpacho.sicem.biz/ Documentation ============= New in this released is API documentation which is generated using epydoc[3]. 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. It can be found at http://www.async.com.br/projects/kiwi/api/ 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 Resources ========= 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/ [1] http://en.wikipedia.org/wiki/Model-view-controller [2] http://tinyurl.com/2ccch [3] http://epydoc.sourceforge.net/ -- Johan Dahlin <[EMAIL PROTECTED]> Async Open Source _______________________________________________ gnome-announce-list mailing list gnome-announce-list@gnome.org http://mail.gnome.org/mailman/listinfo/gnome-announce-list