Summary
Status: pre-alpha, planning.
At this stage, the notes below may be represent aspirations rather than achievements ;))
This is a Python module designed to simplify the specification, creation, and dynamic manipulation of gui menus. Menu systems written with this module will work without modification on all supported gui's.
The kit supplies wrappers for four of the most common python gui's:
| tkinter | tkmenukit.py |
| pygtk | gtkmenukit.py |
| pyqt | qtmenukit.py |
| wxPython | wxmenukit.py |
Menus are represented by python objects linked together in a tree structure. The python objects can be inactive, or active. Active menus are connected to real menus in the gui and changes made to them will be reflected in the gui. When an inactive menu is made active the appropriate gui menus will be constructed automatically
Menus (and menu fragments) can be built up using normal python methods for manipulating data structures or from lists of python strings or from data formats such as XML, jason, yaml etc. Python menu structures, however constructed, can be converted easily into any of these formats.
Porting a menu system from one gui to another simply involves importing a different wrapper module. Everything else will work exactly the same.
Features
- cross gui compatibility
- easy to use
- easy manipulation of font, colors and icons Maybe
- custom on and off icons for radio and check buttons
Epydoc
Epydoc generated docs can be found here.
- amenukit.sf.net.epydoc.release/ for the last 'release'
- amenukit.sf.net.epydoc.trunk/ for the latest deevelopment version
The trunk docs may not always be up do date with the trunk
Download and Install
Use either pip install amenukit or easy_install amenukit if you are connected to the internet and have one of those utilities installed.
Otherwise, download the latest release from either sourceforge.net or pypi.python.org, unpack the tar.gz file into a temporary location and execute sudo python setup.py install in the root directory.
Testing
Once downloaded and installed a script amenukit-demo should be in your path. executing:
- amenukit-demo gui
will start a little demo script for the chosen gui which should be one of tk, gtk, qt or wx. Obviously this will only work if you have that particular gui package installed.
Wiki
Read and contribute to the amenukit wiki
Tickets
Use the Ticket system to ask a question, report a bug, or request a feature.
Mailing List
Checkout
Checkout the latest SVN source thus:
- svn co http://amenuekit.svn.sourceforge.net/svnroot/amenukit/trunk amenukit