Poniższy dokument opisuje nowy system preferencji. Przy jego pomocy istnieje możliwość tworzenia okien preferencji dla danej platformy (Windows, MacOS X i GNOME).
Uwaga: System preferencji dostępny dopiero wraz z Firefoksem /Thunderbirdem 1.5 (włącznie z wersjami alfa i beta) Nie można go używać w aplikacjach i rozszerzeniach bazujących na Firefoksie 1.0.
Nowy system zaimplementowano przy pomocy kilku elementów i atrybutów XUL. Informacje o nich odnajdziesz klikając w jednen z poniższych linków:
Dokumentacja Systemu preferencji:
- Wprowadzenie: Na początek | Przykłady | Usuwanie nieprawidłowości
- Dokumentacja:
prefwindow
|prefpane
|preferences
|preference
| Nowe atrybuty
Użycie
this will eventually be moved from here
Kod typowego okna preferencji wygląda następująco:
<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>
Pane content can be specified inline or an external chrome URI supplied for pane content to be loaded in via a dynamic overlay. You should be careful to read the HIGs for the platforms you are targeting and use the XUL preprocessor if necessary to set different window titles as appropriate. You should also be careful to specify the width of the window (in em) as appropriate using the preprocessor for each targeted platform, as well as the height (in em) for platforms where the window size does not change as the selected panel is changed (e.g. Windows).
Użycie w aplikacjach XULRunner
When opening a preferences dialog from a XULRunner application, be sure to check the following:
- The boolean preferences browser.preferences.animateFadeIn and browser.preferences.instantApply should be defined in the default preferences (see błąd 350528). Example:
pref("browser.preferences.animateFadeIn", false); pref("browser.preferences.instantApply", true);
- When calling openDialog() to open a preferences dialog, "toolbar" should be included in the features string. Example:
var features = "chrome,titlebar,toolbar,centerscreen,modal"; window.openDialog(url, "Preferences", features);
Bugzilla
The component for bugs in the Preferences bindings (but not in Firefox/Thunderbird Options UI) is Toolkit:Preferences (file a bug list open bugs)