PyEdit: pygameUI

pygameUI is a pygame based User Interface library. It was written for use in PyEdit when other UI libraries that used pygame fell short of there promises.

pygameUI is totally themeable. There are 2 way a theme can be created, by changing the graphics files and constants or by writing a "theme" interface (or both.)
Changing graphics and constants is an easy way for somebody to customise the theme without changing it's design. It requires no knowledge of python and only a text editor and your faviroute graphics package.
Writing a theme interface is extremly easy for anyone who has ever used pygame. The interface is well documentated including all required functions, how they are called and what they return.
pygameUI also makes it extremly easy to create new "widgets". Some of the time you just want a widget to behave slightly diffrent, with pygameUI it is easy to do this and is even encouraged!
You can see some screenshots of pygameUI in action with pyEdit. You can even see how flexable pygameUI is by seeing how the pyEdit's render is stored inside a normal frame.