org.eclipse.wst.jsdt.ui.text.folding

## Interface IJavaFoldingPreferenceBlock

    public interface IJavaFoldingPreferenceBlock

Contributors to the `org.eclipse.wst.jsdt.ui.foldingStructureProvider` extension point can specify an implementation of this interface to be displayed on the JavaScript > Editor > Folding preference page.

Clients may implement this interface.

Provisional API: This class/interface is part of an interim API that is still under development and expected to change significantly before reaching stability. It is being made available at this early stage to solicit feedback from pioneering adopters on the understanding that any code that uses this API will almost certainly be broken (repeatedly) as the API evolves.

### Method Summary

All Methods Instance Methods Abstract Methods
`Control` `createControl(Composite parent)` Creates the control that will be displayed on the JavaScript > Editor > Folding preference page.
`void` `dispose()` Called when the preference page is being disposed.
`void` `initialize()` 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.

### Method Detail

#### createControl

    Control createControl(Composite parent)

Creates the control that will be displayed on the JavaScript > Editor > Folding 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()

Called after creating the control. Implementations should load the preferences values and update the controls accordingly.

#### 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.

#### dispose

    void dispose()

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