Aggiunta di una pagina delle preferenze

Il punto di estensione org.eclipse.ui.preferencePages consente all'utente di fornire pagine alla finestra di dialogo delle preferenze del workbench (Finestra > Preferenze). La finestra di dialogo delle preferenze presenta un elenco gerarchico delle voci relative alle preferenze dell'utente. Quando viene selezionata, ogni voce visualizza una corrispondente pagina delle preferenze.

Lo strumento readme utilizza questo punto di estensione per aggiungere la pagina delle preferenze Readme Example.

   <extension
      point = "org.eclipse.ui.preferencePages">
       <page id="org.eclipse.ui.examples.readmetool.Page1"
	    class="org.eclipse.ui.examples.readmetool.ReadmePreferencePage"
            name="%PreferencePage.name">
       </page>
   </extension>

Questo codice definisce una pagina delle preferenze denominata "Readme Example" che viene implementata dalla classe ReadmePreferencePage. La classe deve implementare l'interfaccia IWorkbenchPreferencePage.

Il workbench utilizza un PreferenceManager per gestire un elenco di tutti i nodi della struttura delle preferenze e delle pagine corrispondenti. Questo elenco può essere inizializzato mediante le informazioni contenute nel registro del plug-in senza eseguire alcun codice del plug-in.  Il contributo del plug-in alla finestra di dialogo delle preferenze (la voce "Readme Example" a sinistra) viene visualizzato prima dell'esecuzione di qualsiasi codice.

Pagina delle preferenze del workbench

La preferenza "Readme Example" viene aggiunta al livello più alto della struttura delle preferenze disponibile a sinistra. Ciò avviene in quanto un contributo di pagina delle preferenze verrà aggiunto come elemento principale della struttura, a meno che non venga specificato un attributo di categoria. (Il nome categoria è forse fuorviante. Un termine più adatto potrebbe essere percorso.) L'attributo categoria specifica l'id (o una sequenza di id dalla directory principale) della pagina principale. Ad esempio, il codice seguente creerà una seconda pagina delle preferenze dello strumento readme, "Readme Example Child Page", come elemento secondario della pagina originale.

   <extension
      point = "org.eclipse.ui.preferencePages">
      <page
         id="org.eclipse.ui.examples.readmetool.Page1"
         class="org.eclipse.ui.examples.readmetool.ReadmePreferencePage"
         name="%PreferencePage.name">
      </page>
      <page
         id="org.eclipse.ui.examples.readmetool.Page2"
         class="org.eclipse.ui.examples.readmetool.ReadmePreferencePage2"
         name="Readme Example Child Page"
         category="org.eclipse.ui.examples.readmetool.Page1>
      </page>
   </extension>

Quando l'utente seleziona la voce di una pagina delle preferenze nella struttura di sinistra, il workbench crea e visualizza una pagina delle preferenze utilizzando la classe specificata nella definizione dell'estensione.  Questa azione determina l'attivazione del plug-in, se non già attivato in seguito a un'altra operazione dell'utente.

Copyright IBM Corporation e altri 2000, 2003.