Package org.eclipse.jface.preference

Provides a framework for preferences.

Package Specification

A preference manager (class PreferenceManager) maintains a tree of preference nodes. Preferences are presented to the end user in a preference dialog consisting of preference pages. A preference page consists of multiple preference fields, which can be displayed and modified though field editors. The framework contains an abstract base class for preference dialogs (PreferenceDialog), and an abstract preference page class (FieldEditorPreferencePage) for hosting these field editors.

The individual preference values are maintained in a preference store (IPreferenceStore). Each preference has a current value and a default value use to (re-)initialize it. The framework provides a concrete preference store implementation (PreferenceStore) based on an internal java.util.Properties object, with support for persisting the non-default preference values to files or streams.

A field editor presents the value of a single preference to the end user. The value is loaded from the preference store; if modified by the end user, the value is validated and eventually stored back to the preference store.

This package contains ready-to-use field editors for various types of preferences:

  • BooleanFieldEditor - booleans
  • IntegerFieldEditor - integers
  • StringFieldEditor - text strings
  • RadioGroupFieldEditor - enumerations
  • ColorFieldEditor - RGB colors
  • FontFieldEditor - fonts
  • DirectoryFieldEditor - directories
  • FileFieldEditor - files
  • PathEditor - paths
All field editors are subclasses of the abstract base class FieldEditor; the framework allows new kinds of field editors to be defined by subclassing this class or one of its subclasses.

Note: None of the classes in this package maintain global state.