pgu1.jpgpgu1.jpg pgu1.jpgpgu1.jpgpgu1.jpgpgu1.jpgpgu1.jpgThe PGU toolkit has a fair range of widgets, but lacked a progress bar, toggle buttons, image maps and the edit box. To display the GUI widget responses, I used the text.write tool from the PGU toolkit. The log gets trimmed to keep it within displayable length.

pgu1.jpgpgu1.jpgThe documentation was seriously lacking, consisting primarily of a series of 10 tutorials. None of these tutorials covered the Container layout tool, which is the most straightforward way to layout a page (using pixel coordinates). There were doc strings for most of the classes, but not for many or most methods.

The check boxes and radio buttons used a different status tracking style than Ocemp, in that it required a Group be instantiated and passed to the button initializers; the status for all buttons in the group is stored in the group, and CHANGE signal handlers are connected to the Group, rather than on the button directly. The widgets have a ‘disabled’ attribute, but it apparently only affects the tab-order access, not mouse sensitivity, and does not affect the appearance of the button. I could not find a way to disable a button completely.

The signal system is similar to that used by Ocemp, and excludes any event data, so the same criticism applies here. The widget constructors take a font parameter, which is a pygame font, so using differing fonts for different elements was fairly straightforward. The overall look of the GUIs produced by the default theme is attractive, with rounded visuals and bright colors.

If any of the above is inaccurate, I would be happy to receive specific corrections, and I can revise this post to incorporate additional insight into PGU GUI behavior.