WxWidgets
What is wxWidgets ?
wxWidgets (formerly wxWindows) provides a single, easy-to-use API/Framework for writing applications (GUI applications supported) on multiple platforms and languages (see below for a partial list of supported platforms and languages).
It allows you to use a single source code on many different operating systems and platforms with very little (if any at all) code modifications, making the code and application portability as easy as it can get.
As an overview, it supports advanced features such as clipboard, drag&drop, printing, networking, editing and viewing graphics, multithreading, handling signals and events, system calls, file access, etc.
Even more, wxWidgets grants the look'n'feel and behaviour of your application will remain exactly the same whatever platform you port it to.
Depending on the platform wxWidgets are running on, the libraries the application is going to be linked to, and the programming or scripting language it is written in, the following wxWidgets supports are available:
- wxUniversal: Supporting natively any platform
- wxBase: Text-only support
- wxBasic: For Basic language
- wxCocoa: For MacOS X/Cocoa (Under development)
- wxEiffel: For the Eiffel programming language
- wxEmbedded: This is a global name for wxWidgets embedded ports
- wxGTK: For GTK+ versions 1 and 2 on Unix (Supports OpenVMS too)
- wxHaskell: For the Haskell programming language
- wxJava: For the Java programming language
- wxLua: For Lua language
- wxMac: For MacOS X/Carbon, MacOS Classic
- wxMGL: Using the multi-platform MGL library
- wxMicroWindows: Port for Microwindows
- wxMotif: For Motif language (No longer maintained)
- wxMSW: Windows (32 and 64 bits).
- wxNano-X: Port for Nano-X
- wxOS2: OS/2 support
- wxPalmOS: Port for PalmOS
- wxPerl: For Perl language
- wxPython: For Python language support
- wxQt: For Qt libraries on Unix (Under development)
- wxRuby: For the Ruby programming language
- wxTCL: For TCL language support
- wxWinCE: Port for WinCE/Mobile
- wxX11: For XLib on UnixWindows 16 bits is no longer maintained
- wx.Net: For the .Net platform
- other ports such as wxBEOS, wxCurses, wxGEOS, wxJavaScript, wxNextStep, etc...
To download the latest wxWidgets read this document.
Links in this wiki regarding wxWidgets:
- Get wxWidgets CVS
- Manual wxWidgets compilation
- Check if wx is installed twice (since having it installed twice is a common source of compilation problems)
- Using another wxWidgets installation
- How to uninstall wxWidgets
NOTE: aMule is a separate project and is not realated to wxWidgets in any way (apart from using it as it's widgets library).