[svlug] Re: Cross-platform GUIs

Daniel Howard dan_howard at yahoo.com
Tue Jul 22 10:08:25 PDT 2003

> Which technologies would you recommend for cross-
> platform GUI development?

I've had experience with wxWindows, wxPython and,
briefly, Mozilla's XUL.

> What are the benefits of the technology you
> recommend, and what are the drawbacks?

Overall- Good, not great.  Certainly usable.  Some
commercial toolkits are more consistent in widgets,
code quality and design.

 * App starts up and runs quickly
 * Compiled
 * Not obvious that you are using a GUI toolkit
 * Easy transition from MFC to wxWindows
 * Great license: use it for whatever you want
 * Free
 * Never tried but one guy said wxMac is obsolete
 * A few widgets are poorly written, useless
 * No extras need to be installed to use your app
 * C++ is for programming experts, really

wxPython (Python using the wxWindows Python library):
Overall- Good.  Similiar issues to wxWindows.

 * App starts up slowly (a few seconds pause)
 * Interpretted so the source comes with your app
 * Very hackable; users can modify the code easily
 * Obvious that you are using a GUI toolkit
 * Must install Python and wxPython to install your
 * Don't know about Python's license

Mozilla's XUL:
Overall- Nice but difficult.
 * App starts pretty quickly
 * Use JavaScript to write common pieces of your app
 * Can drop into C++ to write difficult pieces
 * XPCOM is hardcore and requires a programming expert
 * Obvious that you are using a GUI toolkit
 * Installer will work like Mozilla installer

For commercial products, I have used wxWindows and
would use it again.  For public domain projects, I'd
use wxPython so users could hack in their own tweaks
easily.  I probably wouldn't use Mozilla's XUL for any
project; it is a big barrier to find people who know
it well (or are willing to learn it) and, while the
benefits are significant, those benefits do not
outweigh the costs for me.

Do you Yahoo!?
Yahoo! SiteBuilder - Free, easy-to-use web site design software

More information about the svlug mailing list