[Python-3000] PyGUI in Py3K stdlib, more details

Bill Janssen janssen at parc.com
Mon May 1 22:35:30 CEST 2006


Antoine, thanks for the explanations.

> A control which displays and allows to interact with several lines of
> widgets (e.g. labels, images...).
> For example a buddy list in an Instant Messaging client.

This seems like part of the application UI to me, not a toolkit issue.

> You cannot assign a
> global key shortcut to every command, while you can assign a local
> hotkey to any menu item.

This seems like creeping featurism to me.  I can see the accessibility
argument, but it is basically asking for the ability to drive an
interface designed for use with a pointing device, without using a
pointing device.  I'm not sure this is a reasonable constraint.

Global hot keys are the interface for a user without a pointing
device; menus are the interface for users with a pointing device.
This seems like a reasonable design.  Trying to mix modes is asking
for complexity...

> Well, a status bar is a container which can contain many things and sits
> ...
> It can probably be implemented using a Container, though. =

Yes, it sounds like it is variable enough to be part of the
application UI, rather than a standard component.

> In wxWidgets, the GUI system is able to calculate the minimal size
> needed by each and any widget, and to prevent the user from resizing the
> window below the calculated minimal size. =

I'm not sure that this is effectively possible in all cases, but the
"set_bounds" method on Container could probably be extended to
optionally do this.

> - tab-key navigation (navigating among controls by using Tab and
> Shift-Tab) should be handled automatically. Right now it seems you have
> to manually define "groups" for tab-key navigation to work.

Seems to work automatically on my test case.  I put up three text
fields and can tab between them automatically.

Automatic determination of a tabbing order is not an exact science,
though.  I've used a number of apps that get it wrong.  I could see
having no default as a reasonable decision.

> All that is not to say that "PyGUI s*cks" (it doesn't seem to ;-)), but
> that there are a few important things lacking compared to more mature
> (and possibly bloated!) GUI systems.

Right.  I think that the question is, just what is missing, that is
really necessary.

Bill


More information about the Python-3000 mailing list