wxWidgets
| File:WxWidgets.svg | |
|---|---|
| wxFormBuilder | |
| Developer(s) | wxWidgets Developers and Contributors |
| Initial release | 1992 |
| Stable release | 2.8.10 / {{Expansion depth limit exceeded|2009|03|17}} |
| Preview release | 2.9.0 / {{Expansion depth limit exceeded|2009|09|08}} |
| Written in | C++ |
| Operating system | Cross-platform |
| Type | Development library |
| License | wxWindows Library Licence |
| Website | 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]
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 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]
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]
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), Tcl (wxTCL), Lua (wxLua), Perl (wxPerl), Ruby (wxRuby), Smalltalk (wxSqueak), Common Lisp (wxCL), Basic (wxBasic), C (wxC), D (wxD), Euphoria (wxEuphoria), .NET Framework (wx.NET), Java (wx4j) and even JavaScript (wxJavaScript / GLUEScript). 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, contrary 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. [7]
The toolkit is also not restricted to GUI development, having an inter-process communication layer, socket networking functionality, and more.
RAD tools and IDEs for wxWidgets
- Boa Constructor (Python)
- Code::Blocks (via wxSmith plugin)
- Codelite
- wxDev-C++
- wxGlade
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
- DivFix++ free AVI video fix & preview program
- Dolphin Nintendo GameCube, Wii, and Triforce emulator
- eTrigger an electronic drum/instrument midi signal controller
- FileZilla FTP client
- ionCube PHP encoder
- Padre Perl Application Development and Refactoring Environment
- PTgui photo stitching software
- RapidSVN Subversion client
- wxMacMolPlt computational chemistry graphical interface
- TortoiseCVS CVS client
- wxDownload Fast download manager
- wxMaxima computer algebra system
- KiCAD Electronic Design Automation
- Digsby Multiclient IM + e-mail notification + social networking
- Poedit gettext catalog editor
- Mahogany e-mail client
- xCHM CHM help files viewer
See also
- Widget toolkit
- List of widget toolkits
- Qt (toolkit) - A application framework used by KDE
- GTK+ - The GIMP toolkit, a widget toolkit used by GNOME applications
- FLTK - A light, cross platform, non-native widget toolkit
- FOX toolkit - A fast, open source, cross-platform widget toolkit
- Ultimate++
- Juce - An extensive cross-platform widget toolkit
References
- ↑ [{{Expansion depth limit exceeded||}} "wxEmbedded: wxWidgets for embedded applications"]. Sourceforge.net. {{Expansion depth limit exceeded||}}. Retrieved 2007-04-23.
- ↑ [{{Expansion depth limit exceeded||}} "About the wxWidgets Project"]. wxwidgets.org. {{Expansion depth limit exceeded||}}. Retrieved 2010-01-02.
- ↑ [{{Expansion depth limit exceeded||}} "About Julian Smart, www.anthemion.co.uk"]. Anthemion.co.uk. 1964-03-27. {{Expansion depth limit exceeded||}}. Retrieved 2009-06-08.
- ↑ [{{Expansion depth limit exceeded||}} "Julian Smart"]. Bookfayre.cz. {{Expansion depth limit exceeded||}}. Retrieved 2009-06-08.
- ↑ Smart; Robin Dunn (August 2004). [{{Expansion depth limit exceeded||}} "Name change"]. Sourceforge.net. {{Expansion depth limit exceeded||}}. Retrieved 2007-04-23.
- ↑ [{{Expansion depth limit exceeded||}} ""Licence" page on website"]. {{Expansion depth limit exceeded||}}. "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."
- ↑ [{{Expansion depth limit exceeded||}} "WxWidgets Compared To Other Toolkits"]. wxwidgets.org. {{Expansion depth limit exceeded||}}. Retrieved 2010-01-02.
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
- wxHaskell
- Visual Tkinter : Visual Tkinter
| ||||||||||||||||||||||
cs:WxWidgets de:WxWidgets es:WxWidgets fr:WxWidgets id:WxWidgets it:WxWidgets nl:WxWidgets ja:WxWidgets pl:WxWidgets pt:WxWidgets ru:WxWidgets fi:WxWidgets tr:WxWidgets uk:WxWidgets zh:WxWidgets
If you like SEOmastering Site, you can support it by - BTC: bc1qppjcl3c2cyjazy6lepmrv3fh6ke9mxs7zpfky0 , TRC20 and more...