# Interface IPersistableEditor

All Superinterfaces:
  `IPersistable`

All Known Implementing Classes:
  `AbstractDecoratedTextEditor, AbstractTextEditor, StatusTextEditor, TextEditor`

public interface IPersistableEditor extends IPersistable
An editor can implement this interface and participate in the workbench session save/restore cycle using `IMemento`, similar to how `IViewPart` currently works.

Refer to IWorkbenchPart for the part lifecycle.

If a memento is available, restoreState(*) will be inserted into the editor startup.

1. `editor.init(site, input)`
2. `editor.restoreState(memento)`
3. `editor.createPartControl(parent)`
4. ...

On workbench shutdown, the editor state will be persisted when the editor references are saved.

Since:
  3.3

## Method Summary

Modifier and Type
Method
Description
`void`
`restoreState(IMemento memento)`
Called with a memento for this editor.

### Methods inherited from interface IPersistable

`saveState`

## Method Details

### restoreState

void restoreState(IMemento memento)
Called with a memento for this editor. The editor can parse the data or save the memento. This method may not be called.

Parameters:
  `memento` - the saved state for this editor. May be `null`.