Introduction

This is an archived page. It's not actively maintained.

Ce tutoriel est destiné à vous guider dans l'apprentissage de XUL (XML User-interface Language) qui est un langage multi plates-formes permettant de décrire les interfaces utilisateurs des applications.

Ce tutoriel vous montrera la création d'une simple interface utilisateur de recherche de fichiers, comme celle fournie par l'interface Sherlock du Macintosh, ou la boßte de dialogue de recherche de fichier de Windows.

Notez que seule l'interface utilisateur sera crĂ©Ă©e avec quelques fonctionnalitĂ©s limitĂ©es. La recherche de fichiers proprement dite ne sera pas implĂ©mentĂ©e. Une ligne bleue apparaĂźtra sur la gauche des paragraphes oĂč la boĂźte de dialogue de recherche de fichier sera modifiĂ©e. Vous pourrez suivre cela Ă  travers les sections.

Qu'est ce que XUL et pourquoi a-t-il été créé ?

XUL (prononcez zool, cela rime avec cool) a été créé pour avoir un développement du navigateur Mozilla plus facile et plus rapide. C'est un langage XML donc toutes les caractéristiques disponibles dans XML le sont également dans XUL.

La plupart des applications ont besoin d'ĂȘtre dĂ©veloppĂ©es en utilisant les caractĂ©ristiques d'une plate-forme spĂ©cifique, rendant l'adaptation multi plate-forme consommatrice en temps et coĂ»teuse. Un certain nombre de solutions multi plates-formes ont Ă©tĂ© dĂ©veloppĂ©es dans le passĂ©. Java, par exemple, a comme principal argument de vente la portabilitĂ©. XUL est l'un de ces langages conçus spĂ©cialement pour crĂ©er des interfaces utilisateurs portables. Cela prend beaucoup de temps pour bĂątir une application, mĂȘme pour une seule plate-forme. Le temps requis pour compiler et dĂ©bugger peut ĂȘtre long. Avec XUL, une interface peut ĂȘtre implĂ©mentĂ©e et modifiĂ©e rapidement et facilement.

XUL a tous les avantages des autres langages XML. Par exemple, XHTML ou d'autres langages XML comme Math-ML ou SVG peuvent y ĂȘtre insĂ©rĂ©s. De plus, les textes affichĂ©s avec XUL sont aisĂ©ment localisables, ce qui signifie qu'ils peuvent ĂȘtre traduits dans d'autres langues avec peu d'effort.

Quels types d'interface utilisateurs peuvent ĂȘtre rĂ©alisĂ©s avec XUL ?

XUL offre la possibilitĂ© de crĂ©er la plupart des Ă©lĂ©ments habituels que l'on rencontre dans des interfaces graphiques modernes. Voici quelques Ă©lĂ©ments pouvant ĂȘtre crĂ©Ă©s :

  • Champs de saisie tels que des boĂźtes de textes et des cases Ă  cocher
  • Barres d'outils avec boutons et autres contenus
  • Menus dans des barres de menus ou des menus surgissants (contextuels)
  • BoĂźtes de dialogues Ă  onglets
  • Arbres de donnĂ©es hiĂ©rarchiques ou tabulaires
  • Raccourcis claviers

Le contenu affichĂ© peut ĂȘtre crĂ©Ă© Ă  partir du contenu d'un fichier XUL ou Ă  partir d'une source de donnĂ©es. Dans Mozilla, de telles sources de donnĂ©es sont utilisĂ©es pour les messages des boĂźtes aux lettres, les marque-pages, et les rĂ©sultats de recherche. Les contenus des menus, arbres, et autres Ă©lĂ©ments peuvent ĂȘtre remplis avec ces donnĂ©es, ou avec vos propres donnĂ©es fournies dans des fichiers RDF.

Il existe plusieurs cas oĂč des applications XUL sont crĂ©Ă©es :

  • Extension Firefox - une extension ajoute des fonctionnalitĂ©s au navigateur lui-mĂȘme, souvent sous la forme d'une barre d'outils supplĂ©mentaire, des menus contextuels, ou une interface pour personnaliser le navigateur. Pour obtenir ce rĂ©sultat, une fonctionnalitĂ© du XUL appelĂ© overlay est employĂ©e. Elle permet de faire fusionner une interface existante telle que le navigateur Firefox avec une interface utilisateur de l'extension. Des extensions peuvent Ă©galement ĂȘtre appliquĂ©es Ă  d'autres produits Mozilla tels que Thunderbird.
  • Application XULRunner autonome - XULRunner est une version empaquetĂ©e d'une plate-forme Mozilla permettant de crĂ©er des applications XUL autonomes. Aucun navigateur n'est requis pour lancer ces applications car elles contiennent leur propres fichiers exĂ©cutables.
  • Paquetage XUL - Ă  mi chemin entre les deux autres se situent les applications crĂ©Ă©es de la mĂȘme maniĂšre qu'une extension, mais fonctionnant comme une application indĂ©pendante dans une fenĂȘtre sĂ©parĂ©e. Ces paquetages sont employĂ©s lorsque vous ne souhaitez pas d'une imposante application complĂšte XULRunner sans pour autant imposer l'installation d'un navigateur Mozilla.
  • Application XUL distante - vous pouvez Ă©galement simplement placer du code XUL sur un serveur Web et l'ouvrir dans un navigateur comme pour n'importe quelle page Web. Cette mĂ©thode a toutefois ses limites pour des questions de sĂ©curitĂ© sur les actions que vous pouvez rĂ©aliser, telle que l'ouverture d'autres fenĂȘtres.

Les trois premiers types nécessitent chacun une installation sur la machine de l'utilisateur. De ce fait, ces types d'applications n'ont aucune restriction de sécurité et peuvent accéder au systÚme de fichiers local, ou lire et écrire des préférences par exemple. Pour des extensions, les fichiers XUL et leurs scripts et images associés seront empaquetés dans un unique fichier qui sera téléchargé et installé par l'utilisateur. Des applications Mozilla telle que Firefox fournissent un gestionnaire d'extensions permettant l'installation de paquetages sans avoir à écrire beaucoup de code complexe.

Il est possible d'ouvrir des fichiers XUL directement depuis le systĂšme de fichiers ou Ă  partir d'un site Web distant. Cependant, ils seront restreints dans les types d'opĂ©rations qu'ils peuvent effectuĂ©s, et certains aspects de XUL ne fonctionneront pas. Toutefois, si vous voulez charger du contenu XUL Ă  partir d'un site distant, le serveur Web doit ĂȘtre configurĂ© pour envoyer les fichiers XUL avec le type de contenu 'application/vnd.mozilla.xul+xml'. XUL est habituellement stockĂ© dans des fichiers avec l'extension .xul. Vous pouvez ouvrir un fichier XUL avec Mozilla comme vous le feriez avec d'autres fichiers, en utilisant la commande 'Ouvrir un fichier
' du menu 'Fichier', ou en tapant l'URL dans la barre d'adresse.

Que dois-je savoir pour comprendre le tutoriel ?

Vous devez connaßtre HTML et avoir au moins des connaissances de base sur XML et CSS. Voici quelques indications à garder à l'esprit :

  • Les Ă©lĂ©ments XUL et attributs doivent ĂȘtre en minuscule car XML est sensible Ă  la casse (contrairement Ă  HTML).
  • Les valeurs d'attributs doivent ĂȘtre placĂ©s entre guillemets, mĂȘme si ce sont des nombres.
  • Les fichiers XUL sont habituellement divisĂ©s en quatre fichiers : un pour la mise en page et les Ă©lĂ©ments, un pour les styles, un pour les dĂ©clarations d'entitĂ©s (utilisĂ©es pour la localisation) et un pour les scripts. De plus, vous pouvez avoir des fichiers supplĂ©mentaires pour les images ou les donnĂ©es spĂ©cifiques Ă  la plate-forme.

XUL est supportĂ© dans Mozilla et les navigateurs basĂ©s sur le moteur Gecko, comme Netscape 6 ou plus, et Mozilla Firefox. À cause des diffĂ©rents changements dans la syntaxe XUL au fil du temps, vous devriez avoir la derniĂšre version pour que les exemples fonctionnent correctement. La plupart des exemples devraient fonctionner dans Mozilla 1.0 et plus. XUL est pratiquement similaire dans Firefox que dans les autres navigateurs, bien qu'il y ait des diffĂ©rences spĂ©cifiques, comme le support des barres de boutons personnalisables.

Ce tutoriel tente de couvrir la plupart des fonctionnalités de XUL. Cependant, toutes les spécificités ne seront pas examinées. Une fois que vous vous serez familiarisés avec XUL, vous pourrez utiliser la référence des éléments XUL pour trouver les autres fonctionnalités supportées par d'autres éléments spécifiques.

Interwiki