Python Open Source Packages

Welcome to my repository of open source python packages.

In addition to contributing to several open source projects, I have published a few packages of my own. Questions, comments, bug reports, etc. may be reported to: dpopowich AT astro.umass.edu.

For more information about my python experience, please see my Python Software Engineering resume: pdf.

Cheers,
Daniel J. Popowich

WSGIServlets

WSGIServlets is a lightweight web application framework written in python for python's WSGI specification. See PEP 3333 for details about WSGI. It's a small, elegant, object-oriented framework that does not get in your way. The home page for the project is hosted at Google Code. The project includes extensive documentation and a tutorial. A live tutorial can be found here.

Mod_python Servlets (mpservlets)

This project is no longer maintained. If you are a user of mpservlets I strongly encourage you to upgrade to WSGIServlets. The last version of mpservlets remains available here for those "stuck" using mod_python and for posterity. It is built on top of, and requires, mod_python 3.x (which in turn requires apache 2.x). Homepage is here. The latest version, 1.1.6 can be downloaded here.

PyGTK widgets

After programming a few PyGTK applications I discovered over and over the need for two widgets not available in the PyGTK library: a text-entry widget that validates its input based on a user-defined callback, and tool tips (bubble help) for the TreeView widget. After writing my own (and seeing many others in forums in want of the same features) I published these two widgets. A quick Google search will show these have been incorporated in several open source projects.

ValidatedEntry, a PyGTK extension providing a validated Entry widget

ValidatedEntry is a subclass of gtk.Entry, providing validation of input based on programmable functions. If you need to validate input before accepting it, this widget can help. Sample functions included in the package provide validation for integers, floats, non-empty strings, ISBN numbers, phone numbers, money and bounded values (e.g., integers in a range). A demo app is included in the package. The latest version, 1.0.4, can be downloaded here.

TreeViewTooltips, a PyGTK extension providing tool tip support for TreeView widgets

TreeViewTooltips is a class which presents tool tips for cells, columns and rows in a gtk.TreeView. You need to subclass TreeViewTooltips and implement the get_tooltip() method which takes as input the TreeView and the TreeViewColumn and path of the current row. Based on whether or not column and path are checked for specific values, get_tooltip() can return tool tips for a cell, column, row or the whole view:

Column CheckedPath CheckedTool tip For...
YYcell
YNcolumn
NYrow
NNview

get_tooltip() should return None if no tool tip should be displayed. Otherwise the return value will be coerced to a string (with the str() builtin) and stripped; if non-empty, the result will be displayed as the tool tip. By default, the tool tip pop-up window will be displayed centered and just below the pointer and will remain shown until the pointer leaves the cell (or column, or row, or view, depending on how get_tooltip() is implemented).

A demo app is included in the package. The latest version, 1.0.0, can be downloaded here.