Attention : Le contenu de ces pages n'a pas été mis à jour depuis longtemps. Il est probablement obsolète pour Firefox 4.0/Gecko 4.0 et supérieur. Pour du contenu plus récent, allez consulter developer.mozilla.org.

Aide mémo rapide

Schéma général de la mise en place d'une application XUL

Cette partie du wiki se propose de fournir une aide rapide pour le développement des applications XUL, en offrant une vision synthétique et complète. Elle permet également — telle une pieuvre — de rejoindre rapidement les parties du site qui font référence aux éléments synthétisés, afin de trouver tous les approfondissements utiles.

Cliquez sur les chiffres entre crochets en regard des noms de fichiers pour atteindre rapidement, dans la page, la partie qui les concerne.

L'appli XUL/

  • dossier content/ (fichiers principaux de l'application)
    • appli.xul = !PWNOTE1! fichier principal de l'application
    • contents.rdf = !PWNOTE2! contenu du dossier
    • appli.js = !PWNOTE3! scripts javascript
    • liaisons.xbl = !PWNOTE4! Les « liaisons » de l'application
    • /* fichiers de données */
    • menusUI.rdf = !PWNOTE9! Les menus de l'application
    • bdd.rdf = !PWNOTE8! Des sources de données
    • maBdD.xml = Sources de données d'autres formats
    • /* Autres fichiers */
    • boxDialogue.xul = !PWNOTE10! Boîte de dialogue personnalisée
    • tutoriel.xul = !PWNOTE11! Un tutoriel sous forme d'assistant
  • dossier 'skin/ (« thèmes » de l'application — design, aspect)
    • thm1/
      • contents.rdf = !PWNOTE2! Contenu du dossier du thème 1
      • appli.css = !PWNOTE5! Styles du thème 1
      • menus.css = Styles des menus du thème 1
      • etc. (autres styles pour autres éléments)
    • thm2/
      • contents.rdf = !PWNOTE2! contenu du dossier du thème 2
      • appli.css = !PWNOTE5! Styles du thème 1
      • menus.css = Styles des menus du thème 1
      • etc. (autres styles pour autres éléments)
      • autres_themes/ (définition des autres thèmes possibles)
  • dossier locale/ (internationalisation de l'application — traductions)
    • fr-FR/
      • contents.rdf = !PWNOTE2! contenu du dossier fr-FR
      • appli.dtd = !PWNOTE6! définitions en français
      • appli.properties = !PWNOTE7! définitions en français pour javascript
    • en-US/
      • contents.rdf = !PWNOTE2! contenu du dossier en-US
      • appli.dtd = !PWNOTE6! défs en américain
      • appli.properties = !PWNOTE7! défs en américain pour javascript
    • etc. (autant de dossiers que de langues)

Le tableau ci-dessus décrit les dossiers et les fichiers qu'on peut trouver et utiliser pour la mise en place d'une application XUL. La liste des fichiers n'a rien d'exhaustif, mais elle se propose de présenter, à terme, tous les types de fichiers qu'on peut mettre en œuvre pour réaliser son application XUL.

Tous ces éléments sont expliqués dans la suite, et des liens permettent d'approfondir la connaissance qu'on veut en avoir.

%%% !PWNOTE1!

Les fichiers '.xul' de l'application XUL

Prononcer « zool » (comme « cool »). Ce sont les fichiers de base de l'application. Le plus important est le fichier de l'application elle-même, c'est à dire le fichier qui sera chargé dans le navigateur, ou en tant qu'application autonome (?).

C'est un fichier de type XML.

Seront succintement décrit ici :

  • Le fichier XUL de l'application
  • Les fichiers XUL pour construire des boîtes de dialogue (dialog)
  • Les fichiers XUL pour construire des assistants (wizard)
  • Les fichiers XUL pour créer des « Liaisons » (binding)
  • (autre ?)

Le fichier principal de l'application

En savoir plus, et autres sources d'information…

!PWNOTE10!

Les fichiers .XUL pour construire des boîtes de dialogue

Il est possible, grâce aux fichiers XUL, de construire des boîtes de dialogue complexes et personnalisées permettant à l'application de dialoguer avec l'utilisateur.

Ces fichiers ont le même format que le fichier XUL principal de l'application, mais utilisent le composant principal <dialog> (nœud principal) au lieu du composant <window> (fenêtre).

Voir aussi, sur le site Xulfr :

!PWNOTE11!

Les fichiers .XUL pour construire des assistants

Pour les boîtes de dialogue plus complexes (nécessitant par exemple plusieurs panneaux successifs), les fichiers XUL offrent la possibilité d'utiliser des assistants.

Ces fichiers ont le même format que le fichier XUL principal de l'application, mais utilisent le composant principal <wizard> (nœud principal) au lieu du composant <window> (fenêtre).

Voir aussi, sur le site Xulfr :

Les fichiers .XUL pour créer des « Liaisons »

(Plutôt fichiers .xbl ?)

(Liens vers plus de détail)

!PWNOTE5!

Les fichiers '.css' (feuilles de styles)

Les fichiers « styles ». CSS pour « Cascade Styles Sheets » (feuilles de styles en cascade). Ils définissent l'aspect, le design de l'application et de tous ses éléments. Ils permettent de proposer plusieurs « thèmes », c'est à dire plusieurs aspects de l'application (l'utilisateur peut choisir celui qui lui convient le mieux).

En savoir plus, et autres sources d'information…

!PWNOTE3!

Les fichiers '.js' (javascript)

Les fichiers « javascript ». JS pour « Javascript ». Ils contiennent le code javascript des fonctions (ou des méthodes), des classes d'objets, des constantes, des variables qui vont permettrent à l'utilisateur d'inter-agir avec l'application.

Outre l'utilisation habituelle de ce langage, javascript est utilisé pour faire appel à des « services » (ou des instances de service) propres à Mozilla, qui élargissent considérablement le champ d'utilisation du langage, et permettre aujourd'hui de faire pratiquement tout ce que l'on veut. (lien vers le résumé de l'utilisation des services).

En savoir plus, et autres sources d'information…

%%%

Les fichiers '.rdf'

!PWNOTE9!

Les fichiers RDF utilisé pour construire l'interface utilisateur (UI)

!PWNOTE8!

Les fichiers RDF utilisés comme sources de données (datasource)

En savoir plus, et autres sources d'information…

!PWNOTE2!

Un fichier RDF particulier : « contents.rdf »

Ces fichiers — un par dossier — décrivent à Mozilla les fichiers qui devront être « chargés » pour une utilisation « chrome » de l'application XUL (pour rappel : cette utilisation « chrome » est la seule — (à confirmer par des meilleurs que moi) — qui permet d'avoir tous les privilèges concernant l'écriture des fichiers).

C'est donc une source de données utile à Mozilla.

Fichier contents.rdf, autres sources d'information :

!PWNOTE6!

Les fichiers '.dtd'

Ces fichiers, dans le système XML, sont là principalement pour définir le format des données attendues dans les fichiers XML à qui ils sont associés (à confirmer par un meilleur que moi)

Dans le « Monde de Xul », ces fichiers permettent d'internationaliser l'application (de pouvoir utiliser, de façon automatique, une interface en français, en anglais, en toutes les langues qu'on se donnera la peine de définir.

En savoir plus, et autres sources d'information…

!PWNOTE7!

Les fichiers '.properties'

Ils sont le pendant des fichiers .dtd, mais pour définir des constantes textuelles javascript. Ils permettent d'internationaliser l'application en lui fournissant des textes différents suivant le réglage linguistique de l'utilisateur.

En savoir plus, et autres sources d'information…

!PWNOTE4!

Les Fichiers .xbl

Voir aussi, sur le site Xulfr :


Copyright © 2003-2013 association xulfr, 2013-2016 Laurent Jouanneau - Informations légales.

Mozilla® est une marque déposée de la fondation Mozilla.
Mozilla.org™, Firefox™, Thunderbird™, Mozilla Suite™ et XUL™ sont des marques de la fondation Mozilla.