which "GUI module" you suggest me to use?

Samuel newsgroups at debain.org
Wed Jun 6 11:10:34 EDT 2007


On Wed, 06 Jun 2007 09:45:48 -0500, Chris Mellon wrote:

> On 6/6/07, Samuel <newsgroups at debain.org> wrote:
> In the general case, wxWidgets wraps (not emulates) Gtk. I don't believe
> that there are any common controls left which are still emulated (maybe
> the list control? I'm not sure - I don't follow the bleeding edge of wx
> anymore).

See my other response. Also, the fact that Gtk widgets are used does not 
necessarily mean that the behavior is the same - you can still do all 
kinds of weird stuff by hooking into the callbacks. Some of the 
differences to Gtk were probably introduced to wx in order to have more 
consistent behavior over different platforms.

> wxPython (as opposed to wxWidgets, the C++ core) has a sizeable library
> of custom controls as part of its standard lib. Most of these are
> owner-drawn for various reasons and often won't appear native (Andrea
> Gavin, probably the most prolific custom control author, works primarily
> on Windows).

This affects the C++ core as well. aMule (which is written in CPP) is one 
particular complex example that exposes many of those problems when used 
on Linux.

>> > PyGTK works under Linux and Windows, but doens't use native widgets
>> > under Windows, so it won't look like a "normal" windows app.
>>
>> Gtk on Win32 can be themed to looked like Windows, AFAIK the Win32
>> installer does this by default since a couple of months.
>>
>>
> That stretches the truth rather significantly. While the win32 theme
> does use the windows theme apis for drawing, it still has slightly
> different colors (especially window backgrounds and menus), and (more
> importantly) vastly and notably different behavior.

Well, I have only tried Gaim on windows and could not tell the 
difference. But then, I am not a regular Windows user.

> Shortcuts are
> different, renderings are different, the Gtk drawing model is used
> instead of the windows one (leads to quite jarring repainting
> differences), different fonts, etc, etc. It looks okay in a screenshot
> but is clearly non-native and foreign in use.

Sounds bad. It also sounds much like what I experienced with wx on Linux.

I guess there is no perfect solution, you always have to target one 
primary platform. (Well, there's SWT, but the Gtk emulation too has it's 
drawbacks...)

-Samuel



More information about the Python-list mailing list