"Python wrappers for the way(s) you think."
Announcing the first public release of Mindwrapper 0.1.02.
Mindwrapper is an experimental framework/notation for developing
custom clinical applications using wxPython 2.4.0 for Python 2.2.2.
The University of Arkansas has authorized a BSD-style open-source
license.
Of particular interest to the wxPython community may be the
implementation of a model-view-presenter (MVP) architecture similar
to the MVP pattern pioneered by Dolphin Smalltalk. Under the MVP
framework, each wxPython 'View' is wrapped in a 'Presenter' that
takes care of linking to a 'Model' as well as event handling and
layout. This architecture makes sizers perfectly painless.
Mindwrapper applications are single-tiered and bi-layered.
The *abstraction layer* consists of one or more structured data
documents. Documents are tree-graphs in which the leaf nodes
(called cells) are automatically observable. The framework
implements component binding and naming within a hierarchy of
cells, branches and run-time lists of branches. Cells, branches and
lists may be independent, or they may be dependent upon named cells
and/or branches within the document. Two or more lists may share
items (encapsulated branches). Mindwrapper Documents are persistent
(with support for inclusion in Cabinets and Folders).
The *presentation layer* consists of a tree-graph of Presenters,
which wrap Views and link to Models in the abstraction layer. The
framework implements component binding and naming within a
hierarchy of presenters. Each composite presenter (Frame, Panel)
handles layout by automatically adding components to a sizer using
parameters that are more intuitive than those in native wxPython
(IMHO). Component presenters handle event binding and setting up
bi-directional links to cells in the abstraction layer.
Mindwrapper is highly object-oriented, encouraging encapsulation
through extensive use of inheritance and polymorphism.
CAVEAT: Mindwrapper is a research project and should be considered
*experimental* in nature. Furthermore, in the spirit of 'release
early, release often', this version is pre-alpha. The API is not
yet stable, and the current documentation is incomplete.
Mini-tutorial with screenshots:
http://www.mindwrapper.org/prelim/pretutorial.html
Mindwrapper home page:
http://www.mindwrapper.org/
Download from SourceForge (FTP or CVS):
https://sourceforge.net/projects/mindwrapper/
···
=====
Donnal Walter
Arkansas Children's Hospital