Package org.eclipse.jface.preference

# Class FontFieldEditor

java.lang.Object
org.eclipse.jface.preference.FieldEditor
org.eclipse.jface.preference.FontFieldEditor

Direct Known Subclasses:
  `PropagatingFontFieldEditor`

public class FontFieldEditor extends FieldEditor
A field editor for a font type preference.

## Field Summary

### Fields inherited from class org.eclipse.jface.preference.FieldEditor

`HORIZONTAL_GAP, IS_VALID, VALUE`

## Constructor Summary

Constructors
Modifier
Constructor
Description
`protected`
`FontFieldEditor()`
Creates a new font field editor
``
`FontFieldEditor(String name, String labelText, String previewAreaText, Composite parent)`
Creates a font field editor with an optional preview area.
``
`FontFieldEditor(String name, String labelText, Composite parent)`
Creates a font field editor without a preview.

## Method Summary

Modifier and Type
Method
Description
`protected void`
`adjustForNumColumns(int numColumns)`
Adjusts the horizontal span of this field editor's basic controls.
`protected void`
`applyFont()`
Applies a font.
`protected void`
`doFillIntoGrid(Composite parent, int numColumns)`
Fills this field editor's basic controls into the given parent.
`protected void`
`doLoad()`
Initializes this field editor with the preference value from the preference store.
`protected void`
`doLoadDefault()`
Initializes this field editor with the default preference value from the preference store.
`protected void`
`doStore()`
Stores the preference value from this field editor into the preference store.
`protected Button`
`getChangeControl(Composite parent)`
Returns the change button for this field editor.
`int`
`getNumberOfControls()`
Returns the number of basic controls this field editor consists of.
`int`
`getPreferredPreviewHeight()`
Returns the preferred preview height.
`Control`
`getPreviewControl()`
Returns the preview control for this field editor.
`protected Label`
`getValueControl(Composite parent)`
Returns the value control for this field editor.
`void`
`setChangeButtonText(String text)`
Sets the text of the change button.
`void`
`setEnabled(boolean enabled, Composite parent)`
Set whether or not the controls in the field editor are enabled.
`protected void`
`setToDefault()`
Store the default preference for the field being edited

### Methods inherited from class org.eclipse.jface.preference.FieldEditor

`checkParent, clearErrorMessage, clearMessage, convertHorizontalDLUsToPixels, convertVerticalDLUsToPixels, createControl, dispose, fillIntoGrid, fireStateChanged, fireValueChanged, getFieldEditorFontName, getLabelControl, getLabelControl, getLabelText, getPage, getPreferenceName, getPreferencePage, getPreferenceStore, init, isValid, load, loadDefault, presentsDefaultValue, refreshValidState, setButtonLayoutData, setFocus, setLabelText, setPage, setPreferenceName, setPreferencePage, setPreferenceStore, setPresentsDefaultValue, setPropertyChangeListener, showErrorMessage, showMessage, store`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

## Constructor Details

### FontFieldEditor

protected FontFieldEditor()
Creates a new font field editor

### FontFieldEditor

public FontFieldEditor(String name, String labelText, String previewAreaText, Composite parent)
Creates a font field editor with an optional preview area.

Parameters:
  `name` - the name of the preference this field editor works on
  `labelText` - the label text of the field editor
  `previewAreaText` - the text used for the preview window. If it is `null` there will be no preview area,
  `parent` - the parent of the field editor's control

### FontFieldEditor

public FontFieldEditor(String name, String labelText, Composite parent)
Creates a font field editor without a preview.

Parameters:
  `name` - the name of the preference this field editor works on
  `labelText` - the label text of the field editor
  `parent` - the parent of the field editor's control

## Method Details

### adjustForNumColumns

protected void adjustForNumColumns(int numColumns)
Description copied from class: `FieldEditor`
Adjusts the horizontal span of this field editor's basic controls.

Subclasses must implement this method to adjust the horizontal span of controls so they appear correct in the given number of columns.

The number of columns will always be equal to or greater than the value returned by this editor's `getNumberOfControls` method.

Specified by:
  `adjustForNumColumns` in class `FieldEditor`
Parameters:
  `numColumns` - the number of columns

### applyFont

protected void applyFont()
Description copied from class: `FieldEditor`
Applies a font.

The default implementation of this framework method does nothing. Subclasses should override this method if they want to change the font of the SWT control to a value different than the standard dialog font.

Overrides:
  `applyFont` in class `FieldEditor`

### doFillIntoGrid

protected void doFillIntoGrid(Composite parent, int numColumns)
Description copied from class: `FieldEditor`
Fills this field editor's basic controls into the given parent.

Subclasses must implement this method to create the controls for this field editor.

Note this method may be called by the constructor, so it must not access fields on the receiver object because they will not be fully initialized.

Specified by:
  `doFillIntoGrid` in class `FieldEditor`
Parameters:
  `parent` - the composite used as a parent for the basic controls; the parent's layout must be a `GridLayout`
  `numColumns` - the number of columns

### doLoad

protected void doLoad()
Description copied from class: `FieldEditor`
Initializes this field editor with the preference value from the preference store.

Subclasses must implement this method to properly initialize the field editor.

Specified by:
  `doLoad` in class `FieldEditor`

### doLoadDefault

protected void doLoadDefault()
Description copied from class: `FieldEditor`
Initializes this field editor with the default preference value from the preference store.

Subclasses must implement this method to properly initialize the field editor.

Specified by:
  `doLoadDefault` in class `FieldEditor`

### doStore

protected void doStore()
Description copied from class: `FieldEditor`
Stores the preference value from this field editor into the preference store.

Subclasses must implement this method to save the entered value into the preference store.

Specified by:
  `doStore` in class `FieldEditor`

### getChangeControl

protected Button getChangeControl(Composite parent)
Returns the change button for this field editor.

Parameters:
  `parent` - The Composite to create the button in if required.
Returns:
  the change button

### getNumberOfControls

public int getNumberOfControls()
Description copied from class: `FieldEditor`
Returns the number of basic controls this field editor consists of.

Specified by:
  `getNumberOfControls` in class `FieldEditor`
Returns:
  the number of controls

### getPreferredPreviewHeight

public int getPreferredPreviewHeight()
Returns the preferred preview height.

Returns:
  the height, or `-1` if no previewer is installed

### getPreviewControl

public Control getPreviewControl()
Returns the preview control for this field editor.

Returns:
  the preview control

### getValueControl

protected Label getValueControl(Composite parent)
Returns the value control for this field editor. The value control displays the currently selected font name.

Parameters:
  `parent` - The Composite to create the viewer in if required
Returns:
  the value control

### setChangeButtonText

public void setChangeButtonText(String text)
Sets the text of the change button.

Parameters:
  `text` - the new text

### setToDefault

protected void setToDefault()
Store the default preference for the field being edited

### setEnabled

public void setEnabled(boolean enabled, Composite parent)
Description copied from class: `FieldEditor`
Set whether or not the controls in the field editor are enabled.

Overrides:
  `setEnabled` in class `FieldEditor`
Parameters:
  `enabled` - The enabled state.
  `parent` - The parent of the controls in the group. Used to create the controls if required.