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.