XUL c'est quoi ?
XUL : XML-Based User Interface
-> décrire une interface utilisateur avec un langage XML à la syntaxe proche du HTML
Exemple :
<?xml version="1.0"?>
<window xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
<box>
<button label="Cliquer ici" oncommand="alert('Bonjour le monde !');" />
</box>
</window>
bouton.xul
De nombreux éléments d'interface par défaut
Tableau périodique des éléments XUL
Les principaux langages liés à XUL
- XUL
- Description de l'interface
- Javascript
- Programmation de l'interface
- CSS
- Contrôle de l'apparence de l'interface
- RDF
- Format de stockage de données
- XBL
- Format XML de modification des balises XUL (changer comportement balise)
- SVG
- Format XML de graphiques vectoriels, natif dans Gecko 1.8
- XPCOM
- Composants C++
Extensions et XUL
- XUL obtient une visibilité énorme grâce à l'explosion des extensions
- 2000 : moins de 20 extensions connues
- 2004 : une centaine d'extensions connues
- 2006 : environ un millier d'extensions connues
- Développer une extension en XUL suppose un moteur d'affichage sur le poste client
- Firefox
- Thunderbird
- Mozilla Suite/Seamonkey
- Nvu/Flock/Netscape 8
- XULrunner : runtime indépendant
Applications XUL
- Pas de différences techniques fondamentales avec le développement d'extensions
- La plupart des applications XUL utilisent le toolkit de Firefox, NVU par exemple
- L'avenir est Xulrunner, le runtime XUL distribuable et partageable par plusieurs applications (Firefox 3 utilisera Xulrunner)
2006-2007 ?
- Firefox 2, nouveaux éléments XUL (datepicker, timepicker...) et nouveaux formats de stockage de données
- Généralisation des applications Xulrunner, la prochaine version de Nvu (Mozilla Composer) sera basée sur Xulrunner ainsi que Firefox/Thunderbird 3
- SVG trouvera probablement plus sa place dans les applis XUL que sur le web
- De grosses applications XUL commencent à être déployées en intranet
Portails en français
- XulFR.org
- Communautés de développeurs en XUL
- MDC
- Le Mozilla Developer Center (équivalent MSDN)