3- XUL |
![]() ![]() ![]() |
XUL est une description en XML de l'interface utilisateur, cette
sérialisation des composants selon une spécification standardisée
permet à Gecko de parser le fichier .xul et de créer et instancier
l'interface graphique elle-même.
L'exemple suivant donne une idée sur la structure d'un fichier
.xul :
<?xml version="1.0"?>
<?xml-stylesheet href="xul.css" type="text/css"?> <!DOCTYPE package> <package xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"> <window id="main"> ... <xul:toolbar> <html:button cmd="nsCmd:MailSendMsg" style="background-color:rgb(192,192,192);"> <html:img src="resource:/res/toolbar/Mail_SendMsg.gif"/><html:BR/>Send </html:button> ... </window> <window id="help">
|
Après que Gecko parse ce fichier, il le charge
et l'instancie par :
Package *package = LoadPackage("http://xxx/package.xul");
InstantiateWindow(package, GetNodeWithID("main");
Pour le moment, un fichier XUL ne contient qu'une
seule fenêtre qu'on instancie par :
InstantiateWindow("http://xxx/window.xul");
Cette fenêtre principale peut contenir des menus,
des barres d'outils, des boutons, des images. Les balises et attributs
de ces principaux éléments graphiques sont spécifiés.
Une dizaine d'autres sont identifiés, mais pas encore standardisés.
L'interface ainsi décrite est statique, XUL permet aussi d'ajouter
de la programmation en javascript ou en C++.
<html:script>
// dialog initialization code function InitWindow() { var checkbox = document.getElementByID("remember"); if (checkbox) checkbox.checked = true; } </html:script> |
![]() |