S
Samuel
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.
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