wxWidgets
wxWidgets
|
|
---|---|
Basic data
|
|
Publishing year | 1992 |
Current version | 3.1.3 (October 28, 2019) |
Current preliminary version | 3.1.3 (October 28, 2019) |
operating system | Microsoft Windows , Unix derivatives , PalmOS , OS / 2 |
programming language | C ++ |
category | GUI toolkit |
License | modified LGPL |
German speaking | Yes |
www.wxwidgets.org |
wxWidgets (formerly wxWindows ) is an open source GUI toolkit for developing graphical user interfaces . It is developed in the programming language C ++ and licensed under a modified LGPL , which also allows the distribution of derived works under its own conditions. Although wxWidgets is implemented in C ++, there are connections for a large number of other programming languages. Thanks to its platform independence, wxWidgets enables the GUI-specific code of a program to be compiled and executed on a wide variety of platforms with little or no modification.
wxWidgets is used in a number of well-known projects, for example the audio editor Audacity , the strategy game 0 AD , the FTP client FileZilla , the Code :: Blocks development environment and, in the past, Bitcoin Core .
scope
The programming interface enables the development of GUI programs for Windows , Unix , Mac , Symbian OS , Palm OS and Windows CE . wxWidgets abstracts platform-dependent functions, for example interprocess communication (IPC), and offers additional functions, for example a hash table . Some functions such as wxMetafile or OLE are implemented individually in wxWidgets for the respective platform. For better portability wxWidgets waived exceptions (English: exceptions ) and templates . The API includes over 450 classes with over 5000 functions. The most important functionalities cover the following areas:
- Direct graphic output
- Platform- independent GUI layout (sizer layout)
- GUI resources (XRC) are ported via XML
- Online documentation (e.g. HTML , CHM )
- Unicode and message catalogs
- Platform-independent graphic format: XPM
- Very powerful wxImage class
- Machine-independent stream class
- C ++ typical container / data classes
- MIME Types Manager
- OLE automation
- Multithreading
- Configuration via file, Windows registry or * .ini
development
In 1992 the first edition appeared, which was for XView and MFC .
From 1993 to 1995 Motif , the Xt port and wxPython were developed and published. From 1998 to 2002 wx GTK Port was used, wx Mac 2.0 Port, wx X11 Port and OS / 2 Port started.
In 2003 the wxWidgets Software Foundation was founded, which was dissolved after a few months. A year later wxWindows was renamed wxWidgets at the request and payment of Microsoft .
In 2005 wxWidgets 2.6.0 was released. It replaced the previous stable version 2.4.2 from mid-2003. Version 2.8.0 was released at the end of 2006, version 2.9.0 was released in September 2009.
Support of additional languages for wxWidgets
language | derivative |
---|---|
BASIC | wxBasic |
BlitzMax | wxMax |
C. | wxC |
D. | wxD |
Eiffel | wxEiffel |
Erlang | wxErlang |
Euphoria | wxEuphoria |
Java | wx4j |
JavaScript | wxJS, GLUEScript |
Haskell | wxHaskell |
Hollywood | RapaGUI |
Lua | wxLua |
.NET ( C # ) | wx.NET |
Pearl | wxPerl |
PHP | wxPHP |
python | wxPython |
Ruby | wxruby |
See also
literature
- Julian Smart, Kevin Hock, Stefan Csomor: Cross-Platform GUI Programming with wxWidgets . ISBN 0-13-147381-6 (English, PDF [accessed February 20, 2009]).
- Ryan Wilcox: The Experienced Man's Notes for Cross-Platform GUI Programming with wxWidgets . 1st edition. 2009.
Web links
- Official website (English)
- Wiki of wxWidgets Project (English)
- wxWidgets at Sourceforge.net (English)
- wxCode There extensions to the wxWidgets container classes are offered (English)
- zetcode.com - a small tutorial on wxWidgets
- C ++ magazine an introduction to wxWidgets part 1 and 2
Individual evidence
- ↑ a b Downloads. Retrieved January 6, 2017 .
- ↑ wxwidgets.org ( Memento of October 24, 2006 in the Internet Archive )
- ↑ The wxwidgets Open Source Project on Open Hub: Languages Page . In: Open Hub . (accessed on July 18, 2018).
- ↑ a b wxWidgets license (English)
- ↑ Internationalization. Retrieved March 30, 2009 .
- ↑ a b Harald Bögeholz: wxWindows is now called wxWidgets , Heise online, February 22, 2004
- ↑ List of projects