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.

Window

Window

  • *Description :** C'est l'élément racine de tout document XUL.

Il est unique et contient tous les autres éléments du document.

C'est une box orientée horizontalement par défaut. L'élément window hérite donc de toutes les propriétés de box.

Attributs/Propriétés

hidechrome

  • *Description :** Définir cet attribut comme true permet de dissimuler le chrome du navigateur, barre de titre y compris.

onload

  • *Description :** Gestionnaire d'évènement associé au chargement de la fenêtre.

Cet évènement est déclenché après le chargement de la fenêtre mais avant son affichage.

screenX

  • *Description :** La position horizontale de la fenêtre sur l'écran.

screenY

  • *Description :** La position verticale de la fenêtre sur l'écran.

sizemode

  • *Description :** L'état de la fenêtre :
    • maximized : La fenêtre est maximisée et occupe tout l'écran.
    • minimized : La fenêtre est minimisée ou cachée.
    • normal : La fenêtre est visible et est de la taille choisie par l'utilisateur.

title

  • *Description :** Cet attribut définit le texte qui apparaît dans la barre de titre de la fenêtre.

titlemenuseparator

  • *Description :** Une chaîne de caractères qui est intercalée entre le nom du contenu de la page et le titlemodifier.

titlemodifier

  • *Description :** Une chaîne de caractères qui est affichée dans la barre de titre à la place de title une fois le contenu de la page chargé et nommé.

xmlns

  • *Description :** Permet de déclarer les espaces de nom utilisés au sein du document XUL.

windowtype

  • *Description :** Une chaîne de caractères définissant le type de la fenêtre. Permet de différencier les fenêtres.

hidechrome

arguments (propriété uniquement)

Cette propriété est disponible dans les fenêtres ouverte grâce à la méthode openDialog. Cette propriétés contient un tableau des arguments args.

Méthodes

open()

  • *Description :** Permet d'ouvrir une fenêtre ou une boite de dialogue XUL.
  • *Notes :** windowFeatures est une chaine de caractères contenant une ou plusieurs des spécifications (feature) suivantes séparées par des virgules (windowFeatures==*,...|feature=*,...]]. Une spécification peut se voir affecter une valeur numérique (pas de valeur ou la chaine yes équivaut à 1, une chaine non numérique (ex. no) équivaut à 0, de même * correspond à la valeur par défaut). Pour les drapeaux chrome, la valeur 0 est faux (exemple: =0, =no) et une valeur différente de zéro est vrai (exemple: pas de valeur, =1, =yes).

Attention: Certaines spécifications peuvent être forcées par configuration, par persistance ou par la sécurité.

  1. all
  2. titlebar
  3. close
  4. toolbar
  5. location
  6. directories
  7. personalbar
  8. status
  9. menubar
  10. scrollbars
  11. resizable
  12. minimizable
  13. popup
  14. alwaysLowered/z-lock
  15. alwaysRaised
  16. chrome
  17. extrachrome
  18. centerscreen
  19. dependant
  20. modal
  21. dialog
  22. left/screenX
  23. top/screenY
  24. outerWidth
  25. outerHeight
  26. width/innerWidth
  27. height/innerHeight
  • *Reference :**

Pour la conversion des windowFeatures, voir nsWindowWatcher.cpp la méthode WinHasOption utilisée par CalculateChromeFlags et SizeOpenedDocShellItem.

Pour les valeurs des chrome flags, voir nsIWebBrowserChrome.idl les constantes commencants par CHROME_.

openDialog()

  • *Description : Identique à open(), mais avec la possibilités de transmettre des arguments. Ces arguments seront accessibles dans la fenêtre ainsi ouverte dans la propriété arguments qui est un tableau contentant les arguments args**.

sizeToContent()

  • *Signature :**
  • *Description :**

Références

XULPlanet Window (en anglais)

IDL

http://lxr.mozilla.org/seamonkey/source/(..) http://lxr.mozilla.org/seamonkey/source/(..) http://lxr.mozilla.org/seamonkey/source/(..) http://lxr.mozilla.org/seamonkey/source/(..)

Attributs supplémentaires

Ces attributs sont utilisés á la création et ne peuvent être modifiés dynamiquement (lecture seule).

  1. contenttitlesetting
  2. titledefault, pris en compte uniquement si contenttitlesetting="yes"
  3. titlemodifier, pris en compte uniquement si contenttitlesetting="yes"
  4. titlepreface, pris en compte uniquement si contenttitlesetting="yes"

Attention: ce qui suit dépend des options de compilation de mozilla

Si titledefault n'est pas fourni, alors titledefault est la valeur titlemodifier et cette dernière est supprimée.

  1. titlemenuseparator, pris en compte uniquement si contenttitlesetting="yes"

voir nsContentTreeOwner.cpp

Comment est construit un titre:

  titre = getAttribute("title")
  si(titre est vide) {
    titre = getAttribute("titledefault");
  }
  si(titre n'est pas vide) {
    si(getAttribute("titlepreface") n'est pas vide) {
      titre = getAttribute("titlepreface") + titre;
    }
    titre = titre + getAttribute("titlemenuseparator") + getAttribute("titlemodifier");
  }
  sinon {
    titre = getAttribute("titlemodifier");
  }

En résumé:

  titre = [titlepreface +] [title|titledefault] + titleseparator +] titlemodifier

Bogues

Vous ne pouvez pas modifier les propriétés de la fenêtre (comme title par exemple) dans le gestionnaire d'événement onload de cette dernière, car il peut arriver que onload soit appelé avant que la fenêtre ne soit créée, ce qui fait que les changements sont écrasés.

Pour contourner le problème, on peut utiliser un timer (méthode setTimeout de l'objet window). Par exemple placez dans onload le code suivant :

 window.setTimeout(setNewTitle, 200);

et créez une fonction :

 function setNewTitle()
 {
  window.title = 'Nouveau titre';
 }

La fonction setNewTitle sera alors exécutée après une pause de 200 ms, ce qui devrait être suffisant pour créer la fenêtre. Cette valeur doit bien évidemment être ajustée en fonction de la complexité de la fenêtre et des performances de l'ordinateur qui exécute le programme.


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.