Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
wxwidgets [Le 03/05/2009, 10:03] 213.95.41.13 |
wxwidgets [Le 11/09/2022, 11:54] (Version actuelle) moths-art Suppression des espaces en fin de ligne (détecté et corrigé via le bot wiki-corrector (https://forum.ubuntu-fr.org/viewtopic.php?id=2067892) |
||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
- | {{tag>développement programmation BROUILLON tutoriel widget}} FIXME | + | {{tag>programmation tutoriel}} |
---- | ---- | ||
+ | ====== wxWidgets - programmation d'interface multiplate-formes ====== | ||
- | ====== wxWidgets ====== | + | <note warning>la plupart de cette page date de 2010, ces informations doivent être prises avec des pincettes</note> |
- | Voila un petit didacticiel qui vous permettra d'installer la dernière version de wxWidgets (actuellement la **2.8.9**) afin d'exécuter et développer des applications utilisant cette bibliothèque. | + | [[wpfr>wxWidgets]] (anciennement wxWindows) est une bibliothèque graphique libre utilisée comme boîte à outils de programmation d'interface utilisateur multiplate-formes. À 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 |
- | ===== Installation par package (recommandé) ===== | + | 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 license LGPL. |
- | Pourtant, rien ne dit que chez vous cette méthode zeb et vous permet d'avoir le dernier package pour ubuntu. | + | La bibliothèque originale est écrite en C++ mais il existe de nombreux binding vers les langages de programmation courants : |
- | Voila que faire: | + | * 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 |
+ | * wxSQLite, wxCurl, wxXml | ||
- | Modifier votre fichier de dépot apt-get : FIXME | + | =====Installation===== |
- | gksudo gedit /etc/apt/sources.list | + | ==== Installation dépôt officiel ==== |
- | Deux dépots sont disponibles | ||
+ | [[:tutoriel:comment_modifier_sources_maj|Ajoutez le dépôt]] correspondant à votre [[versions|version d'Ubuntu]], ainsi que la [[:tutoriel:comment_modifier_sources_maj#gerer_les_cles_d_authentification|clé d'authentification]] correspondante : | ||
+ | | Remplacer distribution par votre nom de version d'ubuntu | <code> deb http://apt.wxwidgets.org/ DISTRIBUTION-wx main </code> | | ||
+ | | Exemple pour ubuntu 10.04 lucid | <code> deb http://apt.wxwidgets.org/ lucid-wx main </code> | | ||
+ | | clé d'authentification à ajouter |<code> wget -q http://apt.wxwidgets.org/key.asc -O- | sudo apt-key add - </code>| | ||
- | ==== Dépot http://apt.tt-solutions.com ==== | + | [[:tutoriel:comment_modifier_sources_maj#recharger_la_liste_des_paquets|Rechargez la liste des paquets]], puis [[:tutoriel:comment_installer_un_paquet|installez le paquet]] **[[apt://wxWidgets|wxWidgets]].** |
- | Ajouter cette ligne : FIXME | + | ====wxFormBuilder - Autre IDE==== |
- | deb http://apt.tt-solutions.com/ubuntu/ dapper main | + | * [[:PPA|Ajoutez le PPA]] **ppa:wxformbuilder/release**((https://launchpad.net/~wxformbuilder/+archive/release)) dans vos sources de logiciels ; |
+ | * [[:tutoriel:comment_modifier_sources_maj#recharger_la_liste_des_paquets|Rechargez la liste des paquets]] ; | ||
+ | * [[:tutoriel:comment_installer_un_paquet|Installez le paquet]] **[[apt://wxformbuilder|wxformbuilder]]**. | ||
- | deb http://apt.tt-solutions.com/ubuntu/ edgy main | + | [[http://wxformbuilder.org/|Site officiel]] et [[http://wiki.wxformbuilder.org/Main/Tutorials|tutoriels]] |
- | deb http://apt.tt-solutions.com/ubuntu/ feisty main | + | ====Compilation==== |
+ | * [[http://wxdev.fr/index.php?mod=forum&ac=viewtopic&pid=4256#p4256|Voir sur le forum]] | ||
- | deb http://apt.tt-solutions.com/ubuntu/ gutsy main | + | ===== Compilation ===== |
- | + | ||
- | + | ||
- | Récupérez la clé publique du dépôt : | + | |
- | + | ||
- | wget http://www.tt-solutions.com/vz/key.asc -O- | sudo apt-key add - | + | |
- | + | ||
- | + | ||
- | ==== Dépot http://apt.wxwidgets.org/ ==== | + | |
- | + | ||
- | Ajouter cette ligne : | + | |
- | + | ||
- | deb http://apt.wxwidgets.org/ dapper-wx main | + | |
- | + | ||
- | deb http://apt.wxwidgets.org/ edgy-wx main | + | |
- | + | ||
- | deb http://apt.wxwidgets.org/ feisty-wx main | + | |
- | + | ||
- | deb http://apt.wxwidgets.org/ gutsy-wx main | + | |
- | + | ||
- | deb http://apt.wxwidgets.org/ hardy-wx main | + | |
- | + | ||
- | Récupérez la clé publique du dépôt : | + | |
- | + | ||
- | wget -q http://apt.wxwidgets.org/key.asc -O- | sudo apt-key add - | + | |
- | + | ||
- | Mettez a jour les paquets : | + | |
- | + | ||
- | sudo apt-get update | + | |
- | + | ||
- | Chercher enfin dans Synaptic le package wxWidgets 2.8.7 (ou 2.8.8) et installez-le normalement. | + | |
- | + | ||
- | + | ||
- | ===== Installer manuellement ===== | + | |
- | + | ||
- | Si comme moi vous n'arrivez pas a récupérer la clé publique du dépôt, ou si la dernière version n'est pas disponible dans le dépôt, suivez cette méthode. | + | |
Commencez par télécharger wxGTK sur le site officiel: | Commencez par télécharger wxGTK sur le site officiel: | ||
- | wget http://switch.dl.sourceforge.net/sourceforge/wxwindows/wxGTK-2.8.8.tar.gz | + | <note important>Les liens de téléchargement sont désormais à cette adresse: https://www.wxwidgets.org/downloads/ </note> |
+ | <del> wget http://switch.dl.sourceforge.net/sourceforge/wxwindows/wxGTK-2.8.8.tar.gz | ||
+ | </del> | ||
Il pèse environ 13 Mo. | Il pèse environ 13 Mo. | ||
Ligne 83: | Ligne 58: | ||
Le script va chercher si toutes les dépendances nécessaire à wxWidgets sont installées. Il demande notamment [[apt://libgtk2.0-dev]] | Le script va chercher si toutes les dépendances nécessaire à wxWidgets sont installées. Il demande notamment [[apt://libgtk2.0-dev]] | ||
+ | |||
+ | |||
Après cela vous devez compiler wxWidgets : | Après cela vous devez compiler wxWidgets : | ||
make | make | ||
+ | <note tip>Si vous avez un processeur multicoeur, à la place de taper make ( ci dessous ) utilisez plutôt : | ||
+ | |||
+ | make -j2 | ||
+ | |||
+ | où 2 représente le nombre de cœur de votre processeur, si vous avez quatre cœurs vous mettrez donc j4 :-P | ||
+ | </note> | ||
Ceci est assez long, allez donc boire un coup ça évite les migraines. | Ceci est assez long, allez donc boire un coup ça évite les migraines. | ||
+ | |||
Une fois cette très longue <del>installation</del> compilation terminée faites un : | Une fois cette très longue <del>installation</del> compilation terminée faites un : | ||
Ligne 129: | Ligne 113: | ||
pour exécuter les tutoriels présentés ici: | pour exécuter les tutoriels présentés ici: | ||
- | http://chgi.developpez.com/wxwidgets/ | + | https://chgi.developpez.com/wxwidgets/ |
il faut penser à encadrer toutes les chaînes avec la fonction/macro wxT | il faut penser à encadrer toutes les chaînes avec la fonction/macro wxT | ||
- | =>ex: | + | =>ex: |
SetTitle( wxT("Nouveau Titre")); | SetTitle( wxT("Nouveau Titre")); | ||
ensuite, un prototype a évolué (tuto4), pour la gestion des timers (à modifier ds le header & le source) | ensuite, un prototype a évolué (tuto4), pour la gestion des timers (à modifier ds le header & le source) | ||
- | ce n'est plus | + | ce n'est plus |
void TMyFrame::OnTimer(wxCommandEvent& event) | void TMyFrame::OnTimer(wxCommandEvent& event) | ||
mais | mais | ||
Ligne 149: | Ligne 133: | ||
Merci d'avoir lu ce tutoriel, j'invite tous ceux qui auraient des informations que j'aurai oublié de signaler a modifier cette page. | Merci d'avoir lu ce tutoriel, j'invite tous ceux qui auraient des informations que j'aurai oublié de signaler a modifier cette page. | ||
- | Bonne continuation, | + | ===== Voir aussi ===== |
+ | * voir aussi [[qt]], [[qtcreator]] | ||
+ | * **(en)** [[https://wxwidgets.org/|Site officiel]] | ||
+ | * [[https://fr.wikibooks.org/wiki/Interfaces_graphiques_en_C%2B%2B_avec_wxWidget|Apprentissage : Interfaces graphiques en C++ avec wxWidget sur Wikibooks]] | ||
+ | * [[http://cfred.free.fr/tutowxwidgets.php|Tutoriel en français]] et [[http://cfred.free.fr/punbb/index.php|forum]] | ||
+ | * [[http://wxdev.fr/|Site d'entraide francophone]] | ||
+ | * (en) [[http://wyoguide.sourceforge.net/|Guide pour le multiplatforme]] | ||
+ | * **(en)** [[http://wxcode.sourceforge.net/|Exemple de code]] | ||
+ | * **(en)** [[http://wiki.codeblocks.org/index.php?title=Comparison_of_wxSmith_features#General_information|Comparaison des éditeur wxwidgets]] | ||
+ | * [[https://wiki.wxwidgets.org/Installing_and_configuring_under_Ubuntu|Installing and configuring under Ubuntu]] ( wiki wxwidget ) | ||
---- | ---- | ||
- | //Contributeurs : [[:utilisateurs:Uims]] ([[http://forum.ubuntu-fr.org/profile.php?id=33687|profil forum]]) et [[utilisateurs:Zoloom]]// | + | //Contributeurs : [[:utilisateurs:Uims]] ([[http://forum.ubuntu-fr.org/profile.php?id=33687|profil forum]]), [[utilisateurs:Zoloom]] et [[utilisateurs:MagicNono]]// |