Précédent   Forum du club des développeurs et IT Pro > C et C++ > C++ > Communauté
Communauté Suivez l'actualité C++ et contribuez à la vie de la communauté francophone C++
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse
 
Outils de la discussion
Publicité
'
Vieux 17/02/2012, 12h22   #1
epeios
Nouveau Membre du Club
 
Claude Simon
Ingénieur consultant en informatique
Inscription : août 2003
Messages : 30
Détails du profil
Informations personnelles :
Nom : Claude Simon
Localisation : France

Informations professionnelles :
Activité : Ingénieur consultant en informatique

Informations forums :
Inscription : août 2003
Messages : 30
Points : 37
Points : 37
Par défaut C++ et XULRunner

XULRunner est un environnement d'exécution d'applications XUL, XUL étant un langage de description d'interfaces graphiques. Une application XULRunner est typiquement codée en JavaScript. Une partie du code d'une application XULRunner peut néanmoins être déportée dans des composants XPCOM (codés en C++ le plus fréquemment). Pour mettre en œuvre un tel composant, on écrit généralement un fichier '.idl', décrivant son API, qui sert à générer les fonctions JavaScript au travers desquelles on accède au composant concerné.

Pour puissants et nombreux que sont les éléments disponibles avec XULRunner, ils ne permettent pas à une application d’accéder à toutes les ressources du système sur lequel elle est utilisée. Les composants XPCOM permettent de pallier à cela. Si l'on met en œuvre un tel composant, en utilisant C++, il peut s’avérer intéressant de coder l'intégralité de l'application en C++, pour éviter d'avoir à jongler entre ce dernier et JavaScript (entre autres avantages).

Il existe une abondante documentation, assortie de tutoriels et d'exemples, portant sur la manipulation des éléments disponibles avec XULRunner en JavaScript. A l'inverse, l'équivalent pour C++ est anémique, pour ne pas dire inexistant. Cela rend le développement d'une application XULRunner entièrement en C++ très compliqué, comme j'ai pu en faire l'expérience. Néanmoins, malgré les difficultés, c'est une approche que j'ai définitivement adoptée.

Pour éviter à ceux qui serait également intéressé par cette approche de se heurter aux mêmes difficultés que celles j'ai rencontrées, j'ai, pour commencer, mis en ligne le résultat de mes recherches sur le sujet sous la forme, à titre d'exemple, d'une d'application. Cette application montre comment il est possible de réagir à des évènements issus de l'interface XUL, de récupérer des information de cette interface (contenu d'un 'textbox' p. ex.), ou de modifier cette interface (remplir une 'textbox', p. ex.) et ce, uniquement en C++.

Cette application, qui fonctionne sous GNU/Linux, MacOS et Windows, est diffusée sous licence GNU GPL. Pour consulter les sources, ou bien les télécharger pour éventuellement les compiler, ça se passe sur cette page (http://zeusw.org/blog/?article14/).
epeios est déconnecté   Envoyer un message privé Réponse avec citation 10
Réponse
Outils de la discussion

Navigation rapide


Fuseau horaire GMT +2. Il est actuellement 16h05.


 
 
 
 
Partenaires

Hébergement Web