Sistema de preferencias

  • Enlace amigable (slug) de la revisión: Sistema_de_preferencias
  • Título de la revisión: Sistema de preferencias
  • Id de la revisión: 173151
  • Creada:
  • Creador: M3n3chm0
  • ¿Es la revisión actual? No
  • Comentario

Contenido de la revisión

{{wiki.template('Traducción', [ "inglés", "Preferences System", "en" ])}}

Este documento describe el nuevo sistema de preferencias del Toolkit de Aviary. Usando este sistema es posible crear ventanas de preferencias que se muestren y funcionen apropiadamente en varias plataformas (Windows, MacOS X and GNOME).

Ten en cuenta que el sistema de preferencias solo está disponible desde Firefox/Thunderbird 1.5 (incluyendo sus versiones alpha y beta). No puedes usarlo en las aplicaciones y extensiones basadas en Firefox 1.0.

El nuevo sistema esta implementado mediante unos pocos elementos y atributos en XUL. Puedes encontrar información sobre estos, simplemente haciendo clic en alguno de los enlaces a continuación:

{{template.Sistema_de_preferencias_TOC()}}

Uso

this will eventually be moved from here

El código para una típica ventana de preferencias sería algo así:

<prefwindow id="appPreferences"
            xmlns="http://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).

Usage in XULRunner applications

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 {{template.Bug(302509)}}). 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)

{{ wiki.languages( { "en": "en/Preferences_System", "fr": "fr/Syst\u00e8me_de_pr\u00e9f\u00e9rences", "ja": "ja/Preferences_System", "pl": "pl/System_preferencji" } ) }}

Fuente de la revisión

<p>
</p><p>{{wiki.template('Traducción', [ "inglés", "Preferences System", "en" ])}}
</p><p>Este documento describe el nuevo sistema de preferencias del Toolkit de Aviary. Usando este sistema es posible crear ventanas de preferencias que se muestren y funcionen apropiadamente en varias plataformas (Windows, MacOS X and GNOME).
</p><p><b>Ten en cuenta</b> que el sistema de preferencias solo está disponible desde Firefox/Thunderbird 1.5 (incluyendo sus versiones alpha y beta). No puedes usarlo en las aplicaciones y extensiones basadas en Firefox 1.0.
</p><p>El nuevo sistema esta implementado mediante unos pocos elementos y atributos en <a href="es/XUL">XUL</a>. Puedes encontrar información sobre estos, simplemente haciendo clic en alguno de los enlaces a continuación:
</p><p>{{template.Sistema_de_preferencias_TOC()}}
</p>
<h3 name="Uso"> Uso </h3>
<p><span class="comment">this will eventually be moved from here</span>
</p><p>El código para una típica ventana de preferencias sería algo así:
</p>
<pre>&lt;prefwindow id="appPreferences"
            xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"&gt;
  &lt;prefpane id="pane1" label="&amp;pane1.title;"&gt;
    &lt;preferences&gt;
      &lt;preference id="pref1" name="pref.name" type="bool"/&gt;
    &lt;/preferences&gt;
     
   .. UI elements that refer to the preferences above, e.g.:
    &lt;checkbox id="check1" preference="pref1"
              label="&amp;check1.label;" accesskey="&amp;check1.accesskey;"/&gt;
  &lt;/prefpane&gt;

  &lt;prefpane id="pane2" label="&amp;pane2.title;" src="chrome://uri/to/pane.xul"/&gt;
&lt;/prefwindow&gt;
</pre>
<p>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).
</p>
<h3 name="Usage_in_XULRunner_applications"> Usage in XULRunner applications </h3>
<p>When opening a preferences dialog from a XULRunner application, be sure to check the following:
</p>
<ul><li> The boolean preferences browser.preferences.animateFadeIn and browser.preferences.instantApply should be defined in the default preferences (see {{template.Bug(302509)}}). Example:
</li></ul>
<pre class="eval">pref("browser.preferences.animateFadeIn", false);
pref("browser.preferences.instantApply", true);
</pre>
<ul><li> When calling openDialog() to open a preferences dialog, "toolbar" should be included in the features string. Example:
</li></ul>
<pre class="eval">var features = "chrome,titlebar,toolbar,centerscreen,modal";
window.openDialog(url, "Preferences", features);
</pre>
<h3 name="Bugzilla"> Bugzilla </h3>
<p>The component for bugs in the Preferences bindings (but not in Firefox/Thunderbird Options UI) is Toolkit:Preferences (<a class="external" href="https://bugzilla.mozilla.org/enter_bug.cgi?product=Toolkit">file a bug</a> <a class="external" href="https://bugzilla.mozilla.org/buglist.cgi?query_format=advanced&amp;product=Toolkit&amp;component=Preferences&amp;resolution=---&amp;chfieldto=Now">list open bugs</a>)
</p>{{ wiki.languages( { "en": "en/Preferences_System", "fr": "fr/Syst\u00e8me_de_pr\u00e9f\u00e9rences", "ja": "ja/Preferences_System", "pl": "pl/System_preferencji" } ) }}
Revertir a esta revisión