wxWidgets
From Wikipedia, the free encyclopedia
wxFormBuilder | |
Developed by | wxWidgets Developers and Contributors |
---|---|
Initial release | 1992 |
Latest release | 2.8.10 / 2009-03-17 |
Written in | C++ |
Operating system | Cross-platform |
Type | Development library |
License | wxWindows Library Licence |
Website | http://www.wxwidgets.org/ |
wxWidgets (formerly wxWindows) is a widget toolkit for creating graphical user interfaces (GUIs) for cross-platform applications. wxWidgets enables a program's GUI code to compile and run on several computer platforms with minimal or no code changes. It covers systems such as Microsoft Windows, Mac OS X, Linux/Unix (X11, Motif, and GTK+), OpenVMS, OS/2 and AmigaOS. A version for embedded systems is under development.[1]
Contents |
[edit] History
wxWidgets (initially wxWindows) was started in 1992 by Julian Smart at the University of Edinburgh.[2] He attained an honours degree in Computational Science from the University of St Andrews in the year 1986, and is still a core developer.[3][4]
On February 20, 2004, the developers of wxWindows announced that the project was changing its name to wxWidgets, as a result of Microsoft requesting Julian Smart to respect Microsoft's United Kingdom trademark of the term Windows.[5]
[edit] License
wxWidgets is distributed under a custom made licence, similar to the GNU Lesser General Public License, with an exception stating that derived works in binary form may be distributed on the user's own terms. This licence is a free software licence, making wxWidgets free software.[6]
[edit] Implementation
The wxWidgets library is implemented in C++, with bindings available for many commonly used programming languages, among them, Python (wxPython), Erlang (wxErlang), Haskell (wxHaskell), Lua (wxLua), Perl (wxPerl), Ruby (wxRuby), Smalltalk (wxSqueak), Java (wx4j) and even JavaScript (wxJavaScript). For a complete list, with links to the respective project sites, see the external references at the end of this article. There is also PLT Scheme, which uses an incompatible branch of wxWindows (version 1), created in 1995. The toolkit is deeply integrated with the language run-time (garbage collection, resource administration) unlike in other languages, which simply provide a library binding.
wxWidgets is best described as a native mode toolkit as it provides a thin abstraction to a platform's native widgets, as opposed to emulating the display of widgets using graphic primitives. Calling a native widget on the target platform results in a more native looking interface than toolkits such as Swing (for Java), as well as offering performance and other benefits.[citation needed]
The toolkit is also not restricted to GUI development, having a built-in ODBC-based database library, an inter-process communication layer, socket networking functionality, and more.
[edit] RAD tools and IDEs for wxWidgets
- Boa Constructor (Python)
- wxFormBuilder
- Code::Blocks (via wxSmith plugin)
- CodeLite
- wxDev-C++
- wxGlade
- Cross-Platform Support Middleware
[edit] Applications built using wxWidgets
- Amaya web authoring tool
- aMule peer-to-peer file sharing application
- Audacity cross-platform sound editor
- BitTorrent peer-to-peer file sharing application
- Chandler personal information management software
- Code::Blocks C/C++ IDE
- CodeLite C/C++ IDE
- FileZilla FTP client
- ionCube PHP encoder
- PTgui photo stitching software
- RapidSVN Subversion client
- TortoiseCVS CVS client
- wxDownload Fast download manager
- wxMaxima computer algebra system
[edit] See also
[edit] References
- ^ "wxEmbedded: wxWidgets for embedded applications". Sourceforge.net. http://www.wxwidgets.org/docs/embedded.htm. Retrieved on 2007-04-23.
- ^ http://wxwidgets.org/about/
- ^ About Julian Smart, www.anthemion.co.uk
- ^ Julian Smart, bookfayre.cz
- ^ Smart, Julian; Robin Dunn (August 2004). "Name change". Sourceforge.net. http://wxwidgets.org/about/name.htm. Retrieved on 2007-04-23.
- ^ ""Licence" page on website". http://www.wxwidgets.org/about/newlicen.htm. "The wxWindows Licence is essentially the L-GPL (Library General Public Licence), with an exception stating that derived works in binary form may be distributed on the user's own terms."
[edit] External links
- Official Website
- wxWidgets Forum
- wxCode
- wxPack
- wxWidgets-AOS AmigaOS Port Official Site
- WxWidgets Compared To Other Toolkits
- Build cross-platform GUIs using wxWidgets
- wxWidgets-Code-SNIPPETS A knowledge base for wxWidgets progamming
|