Subject: ANNOUNCE: Pmw megawidgets 1.3
Pmw megawidgets for Tkinter
Greg McFarlane <firstname.lastname@example.org>
Serge Hulne email@example.com
A new release of Pmw is out. This release makes Pmw compatable with
recent releases of python and Tcl/Tk.
This version of Pmw was tested against python 2.3, 2.4, 2.5 Tcl/Tk 8.4.2 and
Blt 2.4z. Except for Blt, all tests pass. Blt seems to be more
flacky than usual, with core dumps occuring in the Graph code. Since
this is a problem in Blt (not Pmw), the Blt test script has been
removed from the default Pmw test sequence.
Several other bug fixes and improvements were made. See the change
log for details.
A setup.py script has been added in order to automate the installation of Pmw.
To download Pmw or for more information, see the home page at
If you have any comments, enhancements or new contributions, please
contact Serge (firstname.lastname@example.org) or me (email@example.com) .
What is Pmw?
Pmw is a toolkit for building high-level compound widgets, or
megawidgets, constructed using other widgets as component parts.
It promotes consistent look and feel within and between graphical
applications, is highly configurable to your needs and is easy to
use. It uses the Tkinter python library.
Pmw consists of:
- A few base classes, providing a foundation for building
- A library of flexible and extensible megawidgets built on
the base classes, such as buttonboxes, notebooks,
comboboxes, selection widgets, paned widgets, scrolled
widgets and dialog windows.
- A lazy importer/dynamic loader which is automatically
invoked when Pmw is first imported. This gives unified
access to all Pmw classes and functions through the Pmw.
prefix. It also speeds up module loading time by only
importing Pmw sub-modules when needed.
- Complete reference documentation, covering all classes and
functions including all megawidgets and their options,
methods and components. Helpful tutorial material is also
- A test framework and tests for Pmw megawidgets.
- A slick demonstration of the megawidgets.
- An interface to the BLT busy, graph and vector commands.
The interface to Pmw megawidgets is similar to basic Tk widgets,
so it is easy for developers to include both megawidgets and basic
Tk widgets in their graphical applications. In addition, Pmw
megawidgets may themselves be extended, using either inheritance
The use of the Pmw megawidgets replaces common widget combinations
with higher level abstractions. This simplifies code, making it
more readable and maintainable. The ability to extend Pmw
megawidgets enables developers to create new megawidgets based on