Editor di campo

L'implementazione di una pagina delle preferenze è principalmente compito del codice SWT.  Il codice SWT viene utilizzato per creare i controlli della pagina delle preferenze, per impostare i valori dei controlli e per richiamare tali valori. Il pacchetto org.eclipse.jface.preference fornisce classi helper, denominate editor di campo, che creano i widget ed implementano l'impostazione dei valori e il richiamo del codice per i tipi di preferenze più comuni. La piattaforma fornisce editor di campo per la visualizzazione e l'aggiornamento di vari tipi di valori, incluso booleani, colori, stringhe, numeri interi, tipi di carattere e nomi file.

FieldEditorPreferencePage implementa una pagina che utilizza questi editor di campo per visualizzare e memorizzare i valori di preferenze sulla pagina.

Anziché creare controlli SWT per il riempimento del proprio contenuto, una sottoclasse FieldEditorPreferencePage crea editor di campo per visualizzare i contenuti.  Di seguito è riportato un frammento della pagina delle preferenze dell'interfaccia utente per il debug:

protected void createFieldEditors() {
	addField(new BooleanFieldEditor(IDebugUIConstants.PREF_BUILD_BEFORE_LAUNCH, 
		DebugPreferencesMessages.getString("DebugPreferencePage.auto_build_before_launch"), 
		SWT.NONE, getFieldEditorParent())); 
	...	
	String[][] perspectiveNamesAndIds = getPerspectiveNamesAndIds();
	addField(new ComboFieldEditor(IDebugUIConstants.PREF_SHOW_DEBUG_PERSPECTIVE_DEFAULT,
		DebugPreferencesMessages.getString("DebugPreferencePage.Default_perspective_for_Debug_2"), //$NON-NLS-1$
		perspectiveNamesAndIds,
getFieldEditorParent()));
	...
}

Ad ogni editor di campo viene assegnato il nome della corrispondente chiave di preferenze e l'etichetta di testo per il controllo SWT che l'editor provvederà a creare. Il tipo di controllo dipende dal tipo di editor di campo. Ad esempio, un editor di campo booleani crea una casella di controllo.

Dato che la pagina delle preferenze è associata ad una memorizzazione di preferenze (specificata nel metodo doGetPreferenceStore), il codice per la memorizzazione dei valori correnti, per l'inizializzazione dei valori di controllo dalla memorizzazione di preferenze e per il ripristino dei controlli ai valori predefiniti può essere interamente implementato in FieldEditorPreferencePage.

FieldEditorPreferencePage utilizzerà un layout di griglia con una colonna come layout predefinito per i widget di editor di campo.  Per layout con requisiti speciali, è possibile ricoprire il metodo createContents.

Copyright
IBM Corp. e altri 2000,2002.