Package org.eclipse.ui.texteditor.spelling

# Interface ISpellingPreferenceBlock

public interface ISpellingPreferenceBlock
Contributors to the `org.eclipse.ui.texteditor.spellingEngine` extension point can specify an implementation of this interface to be displayed on the spelling preference page, if the corresponding engine is selected.

This interface is intended to be implemented by clients.

Since:
  3.1

## Method Summary

Modifier and Type
Method
Description
`boolean`
`canPerformOk()`
Returns `true` iff `performOk()` may be called.
`Control`
`createControl(Composite parent)`
Creates the control that will be displayed on the preference page.
`void`
`dispose()`
Called when the preference page is being disposed.
`void`
`initialize(IPreferenceStatusMonitor statusMonitor)`
Called after creating the control.
`void`
`performDefaults()`
Called when the `Defaults` button is pressed on the preference page.
`void`
`performOk()`
Called when the `OK` button is pressed on the preference page.
`void`
`performRevert()`
Called when the user decided to dismiss all changes.
`void`
`setEnabled(boolean enabled)`
Sets the enablement of all controls of this preference block.

## Method Details

### createControl

Control createControl(Composite parent)
Creates the control that will be displayed on the preference page.

Parameters:
  `parent` - the parent composite to which to add the preferences control
Returns:
  the control that was added to `parent`

### initialize

void initialize(IPreferenceStatusMonitor statusMonitor)
Called after creating the control. Implementations should load the preferences values and update the controls accordingly. A status monitor is supplied to allow for status reporting to the user.

Parameters:
  `statusMonitor` - the status monitor

### setEnabled

void setEnabled(boolean enabled)
Sets the enablement of all controls of this preference block.

Parameters:
  `enabled` - `true` iff the controls should be enabled

### canPerformOk

boolean canPerformOk()
Returns `true` iff `performOk()` may be called. A preference block may, for example, return `false` if some user supplied value is not valid (and validation is an expensive operation, use `IPreferenceStatusMonitor` to report validation results on-the-fly). A preference block may also request additional user input and cancel the initiated `performOk()`, based on that input.

Note that this method is guaranteed to be called only on an enabled spelling engine, any spelling engine should be prepared to store its settings on `performOk()` without a preceding call to this method.

Returns:
  `true` iff `performOk()` may be called

### performOk

void performOk()
Called when the `OK` button is pressed on the preference page. Implementations should commit the configured preference settings into their form of preference storage.

### performDefaults

void performDefaults()
Called when the `Defaults` button is pressed on the preference page. Implementation should reset any preference settings to their default values and adjust the controls accordingly.

### performRevert

void performRevert()
Called when the user decided to dismiss all changes. Implementation should reset any working copy changes to their previous values and adjust the controls accordingly.

### dispose

void dispose()
Called when the preference page is being disposed. Implementations should free any resources they are holding on to.