oui, je me pose exactement la même question. D'après ce que j'ai compris, on n'a plus à utiliser de gestionnaire d'évènement ou autres trucs "webesque" de XulRunner. Et en gros, tout le code de l'appli est dans des libs externes en C/C++.
On code l'application exactement comme on le ferait en JavaScript, sauf qu'on utilise C++. Comme en JavaScript, on a toujours un gestionnaire d'évènement à implémenter, mais il sera implémenté en C++. Et tout le code de l’application est effectivement dans une bibliothèque externe.
Et au final aussi, un truc à la XPCom à été recodé en passant par XPCom. Au final on a donc une couche qui transmet des appels vers les libs externe, donc comme XPCom. -> double couche logicielle pour accéder à la lib externe. à moins d'avoir rien compris au bidule :-)
Lorsque l'on code une application en JavaScript, on accède en fait à des composants écrits en C++ à travers leur interface JavaScript. L'idée c'est d’accéder à ces composants directement en C++, sans passer par JavaScript. On a donc, au contraire, une couche logicielle en moins...
Bon, sinon, de la doc sur XPCOM C++, elle existe quand même https://developer.mozilla.org/en/XPCOM. Et il y a aussi une alternative, pour accéder directement aux fonctions d'une lib : js-ctypes.
Je connais cette documentation (XPCOM), et l'ai abondamment utilisée. Mais elle ne détaille pas comment manipuler un élément XUL en C++. Par exemple, je n'ai trouvé aucune documentation qui indique qu'un élément 'tree' en XUL correspond, en C++, à l'objet 'nsIDOMXULTreeElement', et que pour avoir l'index de l’élément sélectionné dans ce 'tree', il fallait d'abord faire un 'GetView(...)', sur le résultat duquel il faut ensuite faire un 'GetSelection(...)', sur le résultat duquel il faut faire 'GetCurrentIndex(...)'. Quand à 'js-ctypes', c'est apparemment essentiellement pour faire du C...
(hors sujet: CVS, c'est vraiment pénible, je recommande d'utiliser un gestionnaire de source récent :-p)
(Ça fait plus de 11 ans que j'utilise le CVS de savannah.gnu.org. Pourquoi changer quelque chose qui fonctionne ?)
Zelbinium: pour la génération qui crée, pas celle qui scrolle...
[^] # Re: Intérêt
Posté par Claude SIMON (site web personnel) . En réponse au journal XULRunner et C++.. Évalué à 7.
On code l'application exactement comme on le ferait en JavaScript, sauf qu'on utilise C++. Comme en JavaScript, on a toujours un gestionnaire d'évènement à implémenter, mais il sera implémenté en C++. Et tout le code de l’application est effectivement dans une bibliothèque externe.
Lorsque l'on code une application en JavaScript, on accède en fait à des composants écrits en C++ à travers leur interface JavaScript. L'idée c'est d’accéder à ces composants directement en C++, sans passer par JavaScript. On a donc, au contraire, une couche logicielle en moins...
Je connais cette documentation (XPCOM), et l'ai abondamment utilisée. Mais elle ne détaille pas comment manipuler un élément XUL en C++. Par exemple, je n'ai trouvé aucune documentation qui indique qu'un élément 'tree' en XUL correspond, en C++, à l'objet 'nsIDOMXULTreeElement', et que pour avoir l'index de l’élément sélectionné dans ce 'tree', il fallait d'abord faire un 'GetView(...)', sur le résultat duquel il faut ensuite faire un 'GetSelection(...)', sur le résultat duquel il faut faire 'GetCurrentIndex(...)'. Quand à 'js-ctypes', c'est apparemment essentiellement pour faire du C...
(Ça fait plus de 11 ans que j'utilise le CVS de savannah.gnu.org. Pourquoi changer quelque chose qui fonctionne ?)
Zelbinium: pour la génération qui crée, pas celle qui scrolle...