A BRIEF HISTORY OF WXWIDGETS
The wxWidgets project started life in 1992 when Julian Smart was working at
the University of Edinburgh on a diagramming tool called Hardy. He didn’t
want to choose between deploying it either on Sun workstations or PCs, so he
decided to use a cross-platform framework. Because the range of existing
cross-platform frameworks was limited, and the department didn’t have a
budget for it anyway, there was little choice but to write his own. The university
gave him permission to upload wxWidgets 1.0 to the department’s FTP
site in September 1992, and other developers began to use the code. Initially,
wxWidgets targeted XView and MFC 1.0; Borland C++ users complained
about the requirement for MFC, so it was rewritten to use pure Win32.
Because XView was giving way to Motif, a Motif port quickly followed.
Over time, a small but enthusiastic community of wxWidgets users was
established and a mailing list created. Contributions and fixes were sent in,
including an Xt port by Markus Holzem. wxWidgets gradually picked up more
and more users from all over the world: individuals, academics, government
departments, and—most gratifying of all—corporate users who found that
wxWidgets offered a better product and better support than the commercial
products they had looked at or used.
In 1997, a new wxWidgets 2 API was designed with help from Markus
Holzem.Wolfram Gloger suggested that wxWidgets should be ported to GTK+,
the up-and-coming widget set being adopted for the GNOME desktop environment.
Robert Roebling became the lead developer for wxGTK, which is now
the main Unix/Linux port of wxWidgets. In 1998, the Windows and GTK+
ports were merged and put under CVS control. Vadim Zeitlin joined the project
to contribute huge amounts of design and code, and Stefan Csomor started
a Mac OS port, also in 1998.
1999 saw the addition of Vaclav Slavik’s impressive wxHTML classes
and the HTML-based help viewer. In 2000, SciTech, Inc. sponsored initial
development of wxUniversal, wxWidgets’s own set of widgets for use on platforms
that have no widget set of their own. wxUniversal was first used in SciTech’s
port to MGL, their low-level graphics layer.
In 2002, Julian Smart and Robert Roebling added the wxX11 port using
the wxUniversal widgets. Requiring only Unix and X11, wxX11 is suitable for
any Unix environment and can be used in fairly low-spec systems.
In July 2003, wxWidgets started running on Windows CE, and Robert
Roebling demonstrated wxGTK applications running on the GPE embedded
In 2004, wxWidgets was renamed from the original moniker “wxWindows,”
after objections from Microsoft based on its Windows trademark.
Also during 2004, Stefan Csomor and a host of other contributors completely
revamped wxMac for OS X, significantly improving the appearance and functionality
of OS X applications. A port using Cocoa was also steadily improved, led by
David Elliot, and William Osborne won our challenge to deliver an embryonic
Palm OS 6 port that supports the wxWidgets “minimal” sample. Version 2.6 was
released in April 2005, incorporating major improvements to all ports.
Future plans for wxWidgets include
. A package management tool, to make it easier to integrate third-party
. Improved support for embedded applications
. Alternative event handling mechanisms
. Enhanced controls, such as a combined tree and list control
. wxHTML 2, with full web capabilities on all platforms
. Further compatibility with standards such as STL
. A full Palm OS port
已经在Windows下使用wxWidget库快三年了, 准备近期进军Linux. :))