Greg Ewing has released his GUI for Pygame, under the name ‘Albow’.

It includes a demo, which shows it off quite well.  It is an attractive GUI package.

I set out to add it to my comparative review of pygame GUIs, but was disappointed that there was no readily apparent way to integrate it into a foreign main loop.   The documentation describes using it as the event loop.   I spent a few minutes looking at the RootWidget run method, thinking I might subclass a ‘callable’ root widget, but backed off from the complexity.

So I am not providing you a demo, but since I spent a few minutes looking it over, I will share my impressions with you.

The code is rather scant on docstrings, but the included html documentation seems complete and is clear.   Hopefully, he will put the documentation online somewhere where the curious can preview it.

The GUI in the demo is rather attractive, and has a theming system where you can change the look-and-feel to suit your game.

The range of input widgets is rather limited, with no checkbox, radio button or slider widget; it does have a set of input boxes, text buttons and image buttons. There are a few high-level widgets as well, including a file dialog, grid and palette widgets.

If your game can accomodate the GUI owning the main loop, give this kit a look.