Package org.eclipse.gef.mvc.fx.ui.properties

# Class UndoablePropertySheetPage

java.lang.Object
org.eclipse.ui.part.Page
org.eclipse.ui.views.properties.PropertySheetPage
org.eclipse.gef.mvc.fx.ui.properties.UndoablePropertySheetPage

All Implemented Interfaces:
  `EventListener`, `IAdaptable`, `ISelectionListener`, `IPage`, `IPageBookViewPage`, `IPropertySheetPage`

public class UndoablePropertySheetPage extends PropertySheetPage
PropertySheetPage extension that allows to perform undo/redo of property value changes also in case the related `IWorkbenchPart` is not active.

## Field Summary

### Fields inherited from class org.eclipse.ui.views.properties.PropertySheetPage

`HELP_CONTEXT_PROPERTY_SHEET_PAGE`

## Constructor Summary

Constructors
Constructor
Description
`UndoablePropertySheetPage(IWorkbenchPart workbenchPart, IOperationHistory operationHistory, IUndoContext undoContext)`
Constructs a new `UndoablePropertySheetPage` using the provided `IOperationHistory`.

## Method Summary

Modifier and Type
Method
Description
`protected UndoablePropertySheetEntry`
`createRootEntry()`
Creates the `IPropertySheetEntry` that is used as the root entry of this `UndoablePropertySheetPage`.
`void`
`dispose()`
Overwritten to unregister command stack listener.
`IWorkbenchPart`
`getWorkbenchPart()`
Returns the `IWorkbenchPart` this `UndoablePropertySheetPage` is related to.
`void`
`setActionBars(IActionBars actionBars)`

### Methods inherited from class org.eclipse.ui.views.properties.PropertySheetPage

`createControl, getAdapter, getControl, getSaveablePart, handleEntrySelection, initDragAndDrop, makeContributions, refresh, selectionChanged, setFocus, setPropertySourceProvider, setRootEntry, setSorter`

### Methods inherited from class org.eclipse.ui.part.Page

`getSite, init`

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

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

## Constructor Details

### UndoablePropertySheetPage

@Inject public UndoablePropertySheetPage(IWorkbenchPart workbenchPart, IOperationHistory operationHistory, IUndoContext undoContext)
Constructs a new `UndoablePropertySheetPage` using the provided `IOperationHistory`.

Parameters:
  `operationHistory` - The `IOperationHistory` shared with the editor/view.
  `undoContext` - The `IUndoContext` shared with the editor/view.
  `workbenchPart` - The `IWorkbenchPart` this `UndoablePropertySheetPage` is related to. .

## Method Details

### createRootEntry

protected UndoablePropertySheetEntry createRootEntry()
Creates the `IPropertySheetEntry` that is used as the root entry of this `UndoablePropertySheetPage`.

Returns:
  A new `UndoablePropertySheetEntry`, bound to the `IOperationHistory` and `IUndoContext` used by this `UndoablePropertySheetPage`.

### dispose

public void dispose()
Overwritten to unregister command stack listener.

Specified by:
  `dispose` in interface `IPage`
Overrides:
  `dispose` in class `PropertySheetPage`
See Also:
  - `PropertySheetPage.dispose()`

### getWorkbenchPart

public IWorkbenchPart getWorkbenchPart()
Returns the `IWorkbenchPart` this `UndoablePropertySheetPage` is related to.

Returns:
  The `IWorkbenchPart` that was passed in upon creation.

### setActionBars

public void setActionBars(IActionBars actionBars)

Specified by:
  `setActionBars` in interface `IPage`
Overrides:
  `setActionBars` in class `PropertySheetPage`