Dieses Dokument beschreibt das neue Aviary Toolkit Einstellungssystem. Mit der Verwendung dieses Systems ist es möglich Einstellungsfenster zu erstellen, die auf verschiedenen Plattformen (Windows, MacOS X und GNOME) angezeigt und ausgeführt werden können.
Hinweis: Das Einstellungssystem ist erst ab Firefox/Thunderbird 1.5 (und deren alpha und beta Releases) verfügbar. Es kann nicht in Firefox 1.0-basierenden Anwendungen und Erweiterungen benutzt werden.
Das neue System ist durch einige XUL Elemente und Attribute implementiert. Referenzinformationen über diese sind unter den folgenden Links verfügbar:
Einstellungssystemdokumentation:
- Einführung: Erste Schritte | Beispiele | Fehlerbehebung
- Referenz:
prefwindow
|prefpane
|preferences
|preference
| XUL Attribute
Verwendung
Der Code für ein typisches Einstellungsfenster könnte in etwa so aussehen:
<prefwindow id="appPreferences" xmlns="https://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"> <prefpane id="pane1" label="&pane1.title;"> <preferences> <preference id="pref1" name="pref.name" type="bool"/> </preferences> .. UI elements that refer to the preferences above, e.g.: <checkbox id="check1" preference="pref1" label="&check1.label;" accesskey="&check1.accesskey;"/> </prefpane> <prefpane id="pane2" label="&pane2.title;" src="chrome://uri/to/pane.xul"/> </prefwindow>
Die pane Inhalte können inline festgelegt werden oder eine externe chrome URI sorgt für die Inhalte über ein dynamisches Overlay. Die HIGs sollten für die angestrebten Plattformen gründlich gelesen werden und der XUL Präprozessor sollte, wenn nötig, verwendet werden, um unterschiedlich passende Fenstertitel festzulegen. Außerdem sollte man vorsichtig sein, wenn man die Breite des Fensters (in em) angibt, genau wie die Höhe des Fenster (in em), denn bei einigen Plattformen verändert sich die Fenstergröße nicht so wie das ausgewählte Panel verändert wird (z.B. Windows).
Verwendung in XULRunner Anwendungen
Wird openDialog()
aufgerufen, um einen Einstellungsdialog zu öffnen, sollte "toolbar" im features
String enthalten sein. Beispiel:
var features = "chrome,titlebar,toolbar,centerscreen,modal"; window.openDialog(url, "Preferences", features);
Bugzilla
Die Komponente für Bugs in den „Preferences bindings“ (aber nicht in den Options UIs von Firefox/Thunderbird) ist »Toolkit:Preferences« (Fehler melden Offene Bugs auflisten).