WxWidgets
wxWidgets (anciennement wxWindows) est une bibliothèque graphique libre utilisée comme boîte à outils de programmation d'interfaces graphiques multiplateforme.
À la différence d'autres boîtes à outils qui tentent de restituer une interface utilisateur identique sur toutes les plateformes, wxWidgets restitue des abstractions similaires, mais avec l'apparence native de chaque environnement cible, ce qui est moins dépaysant pour les utilisateurs finaux.
wxWidgets est disponible entre autres pour Macintosh, GNU/Linux et Unix, Microsoft Windows, OS/2, ainsi que pour du matériel embarqué  sous GNU/Linux ou Windows CE

wxWidgets est diffusé sous licence wxWidgets License, similaire à la licence LGPL, avec pour différence cependant qu'une compilation statique n'impose pas que le programme soit également sous licence LGPL.

Quelques exemples de logiciels qui utilisent la boite à outils wxWidgets : Audacity, Filezilla, iMule.

Historique 
wxWidgets fut créé en 1992 par Julian Smart, un chercheur en intelligence artificielle.
Celui-ci avait besoin d'une bibliothèque multiplate-forme pour lui permettre de programmer sous Unix et Windows.
Les outils multiplate-formes existants étaient jugés trop chers, Julian Smart en commença un nouveau : wxWindows (w pour Windows, x pour X).

Au départ, le projet supportait XView mais lorsque Sun en arrêta le développement, ce support fut abandonné au profit de Xt et Motif.

Une communauté se créa autour de la bibliothèque et il y eut de nombreuses contributions pour les ports Unix et Mac.

En 1996, wxWindows fut repensé pour s'adapter plus efficacement au futur et pour obtenir une API claire et moderne. wxWindows 2 était né.
Un port pour GTK+ fut créé.

Les ports continuèrent leur évolution, des widgets importants furent ajoutés comme wxHTML et diverses classes non graphiques.

En 2000, un port wxUniversal fut créé, il s'agit d'un port fournissant des widgets à des systèmes qui n'en ont pas.
Cela permit notamment de créer un port X11 : wxX11 qui permet de programmer sans avoir besoin de GTK+ ni de Motif.

Depuis le , wxWindows a été renommée wxWidgets afin d'éviter tout conflit de marque avec la firme Microsoft.

Bindings (liaisons) 
La bibliothèque originale wxWidgets est écrite en C++ mais il existe de nombreux bindings vers les langages de programmation courants : 
 Python - wxPython
 Perl - wxPerl
 BASIC - wxBasic
 Lua - wxLua
 OCaml - wxCaml
 JavaScript - wxJavaScript
 Java - wxJava ou wx4j
 Ruby - wxRuby
 Eiffel - wxEiffel
 Haskell - wxHaskell
 C#/.NET - wx.NET
 Euphoria - wxEuphoria
 D - wxD
 PHP - wxPHP
  Erlang - wxErlang
  Hollywood - RapaGUI

Certains sont davantage développés que d'autres et .

Notes et références

Annexes

Articles connexes 

 Liste de bibliothèques d'interface utilisateur
 Qt
 GTK+

Liens externes 
  Site officiel
  Tutoriel en français
  Forum wxWidgets en français
  Site d'entraide francophone

Projets associés 
En plus des nombreux bindings de wxWidgets et des nombreuses applications qui utilisent cette bibliothèque, il existe divers projets associés destinés aux développeurs :
  Wiki officiel
  wxGuide : il s'agit d'un guideline pour développer des applications wxWidgets 
  wxCode : ce site rassemble des exemples de code et des classes associées au projet
  wxoGuide : un guide pour développer des applications multiplate-forme bien pensées

Widget
Logiciel libre sous licence LGPL
Logiciel pour Unix
Logiciel pour Windows
Logiciel pour Mac OS
Logiciel pour OS/2
Produit lancé en 1992