Package org.eclipse.gef.editparts

# Class ScalableFreeformRootEditPart

java.lang.Object
org.eclipse.gef.editparts.AbstractEditPart
org.eclipse.gef.editparts.AbstractGraphicalEditPart
org.eclipse.gef.editparts.SimpleRootEditPart
org.eclipse.gef.editparts.FreeformGraphicalRootEditPart
org.eclipse.gef.editparts.ScalableFreeformRootEditPart

All Implemented Interfaces:
  `IAdaptable`, `EditPart`, `LayerManager`, `GraphicalEditPart`, `LayerConstants`, `RequestConstants`, `RootEditPart`

public class ScalableFreeformRootEditPart extends FreeformGraphicalRootEditPart
Adds Zoom support to the standard FreeformGraphicalRootEditPart. This root is just like its superclass, except it inserts a new `LayeredPane` above the printable layers. This pane is identified with the `LayerConstants.SCALABLE_LAYERS` ID. This root also provides a ZoomManager, for optional use with the `ZoomComboContributionItem`

The structure of layers (top-to-bottom) for this root is:

Root Freeform Layered Pane
├ | Guide Layer
├ | Feedback Layer
├ | Handle Layer
└ | Scalable Layers | (`ScalableFreeformLayeredPane`)
| ├ | Scaled Feedback Layer
| ├ | Printable Layers
|  | ├ Connection Layer
|  | └ Primary Layer |
| └ | Grid Layer

Since:
  2.1

## Nested Class Summary

## Nested classes/interfaces inherited from class org.eclipse.gef.editparts.AbstractGraphicalEditPart

`AbstractGraphicalEditPart.AccessibleGraphicalEditPart, AbstractGraphicalEditPart.DefaultAccessibleAnchorProvider`

## Nested classes/interfaces inherited from class org.eclipse.gef.editparts.AbstractEditPart

`AbstractEditPart.EditPolicyIterator`

## Nested classes/interfaces inherited from interface org.eclipse.gef.editparts.LayerManager

`LayerManager.Helper`

## Field Summary

### Fields inherited from class org.eclipse.gef.editparts.AbstractGraphicalEditPart

`figure, sourceConnections, targetConnections`

### Fields inherited from class org.eclipse.gef.editparts.AbstractEditPart

`children, FLAG_ACTIVE, FLAG_FOCUS, MAX_FLAG`

### Fields inherited from interface org.eclipse.gef.EditPart

`SELECTED, SELECTED_NONE, SELECTED_PRIMARY`

### Fields inherited from interface org.eclipse.gef.LayerConstants

`CONNECTION_LAYER, FEEDBACK_LAYER, GRID_LAYER, GUIDE_LAYER, HANDLE_LAYER, PRIMARY_LAYER, PRINTABLE_LAYERS, SCALABLE_LAYERS, SCALED_FEEDBACK_LAYER`

### Fields inherited from interface org.eclipse.gef.editparts.LayerManager

`ID`

### Fields inherited from interface org.eclipse.gef.RequestConstants

`REQ_ADD, REQ_ALIGN, REQ_ALIGN_CHILDREN, REQ_CLONE, REQ_CONNECTION_END, REQ_CONNECTION_START, REQ_CREATE, REQ_CREATE_BENDPOINT, REQ_DELETE, REQ_DELETE_DEPENDANT, REQ_DIRECT_EDIT, REQ_MOVE, REQ_MOVE_BENDPOINT, REQ_MOVE_CHILDREN, REQ_OPEN, REQ_ORPHAN, REQ_ORPHAN_CHILDREN, REQ_RECONNECT_SOURCE, REQ_RECONNECT_TARGET, REQ_RESIZE, REQ_RESIZE_CHILDREN, REQ_SELECTION, REQ_SELECTION_HOVER`

## Constructor Summary

Constructors
Constructor
Description
`ScalableFreeformRootEditPart()`
Constructor for ScalableFreeformRootEditPart

## Method Summary

Modifier and Type
Method
Description
`protected void`
`createLayers(org.eclipse.draw2d.LayeredPane layeredPane)`
Creates the top-most set of layers on the given layered pane.
`protected org.eclipse.draw2d.ScalableFreeformLayeredPane`
`createScaledLayers()`
Creates a layered pane and the layers that should be scaled.
`protected ZoomManager`
`createZoomManager(org.eclipse.draw2d.ScalableFigure scalableFigure, org.eclipse.draw2d.Viewport viewport)`
Responsible of creating a `ZoomManager` to be used by this `ScalableRootEditPart`.
`org.eclipse.draw2d.IFigure`
`getLayer(Object key)`
Returns the layer indicated by the key.
`protected org.eclipse.draw2d.LayeredPane`
`getScaledLayers()`
Returns the scalable layers of this EditPart
`ZoomManager`
`getZoomManager()`
Returns the zoomManager.
`protected void`
`register()`
Registers itself in the viewer's various registries.
`protected void`
`unregister()`
Undoes any registration performed by `AbstractEditPart.register()`.

### Methods inherited from class org.eclipse.gef.editparts.FreeformGraphicalRootEditPart

`createFigure, createGridLayer, createPrintableLayers, getAdapter, getContentPane, getDragTracker, getModel, getPrintableLayers, refreshGridLayer`

### Methods inherited from class org.eclipse.gef.editparts.SimpleRootEditPart

`createEditPolicies, getCommand, getContents, getRoot, getViewer, refreshChildren, setContents, setViewer`

### Methods inherited from class org.eclipse.gef.editparts.AbstractGraphicalEditPart

`activate, addChildVisual, addNodeListener, addNotify, addSourceConnection, addTargetConnection, createConnection, createOrFindConnection, deactivate, fireRemovingSourceConnection, fireRemovingTargetConnection, fireSourceConnectionAdded, fireTargetConnectionAdded, getFigure, getModelSourceConnections, getModelTargetConnections, getSourceConnections, getTargetConnections, isSelectable, primAddSourceConnection, primAddTargetConnection, primRemoveSourceConnection, primRemoveTargetConnection, refresh, refreshSourceConnections, refreshTargetConnections, registerVisuals, removeChildVisual, removeNodeListener, removeNotify, removeSourceConnection, removeTargetConnection, reorderChild, reorderSourceConnection, reorderTargetConnection, setFigure, setLayoutConstraint, unregisterVisuals`

### Methods inherited from class org.eclipse.gef.editparts.AbstractEditPart

`activateEditPolicies, addChild, addEditPartListener, createChild, deactivateEditPolicies, debug, debugFeedback, eraseSourceFeedback, eraseTargetFeedback, fireActivated, fireChildAdded, fireDeactivated, fireRemovingChild, fireSelectionChanged, getAccessibleEditPart, getChildren, getEditPolicy, getEditPolicyIterator, getEventListeners, getFlag, getModelChildren, getParent, getSelected, getTargetEditPart, hasFocus, installEditPolicy, isActive, performRequest, refreshVisuals, registerAccessibility, registerModel, removeChild, removeEditPartListener, removeEditPolicy, setFlag, setFocus, setModel, setParent, setSelected, showSourceFeedback, showTargetFeedback, toString, understandsRequest, unregisterAccessibility, unregisterModel`

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

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

### Methods inherited from interface org.eclipse.gef.EditPart

`activate, addEditPartListener, addNotify, deactivate, eraseSourceFeedback, eraseTargetFeedback, getChildren, getEditPolicy, getParent, getSelected, getTargetEditPart, hasFocus, installEditPolicy, isActive, isSelectable, performRequest, refresh, removeEditPartListener, removeEditPolicy, removeNotify, setFocus, setModel, setParent, setSelected, showSourceFeedback, showTargetFeedback, understandsRequest`

## Constructor Details

### ScalableFreeformRootEditPart

public ScalableFreeformRootEditPart()
Constructor for ScalableFreeformRootEditPart

## Method Details

### createZoomManager

protected ZoomManager createZoomManager(org.eclipse.draw2d.ScalableFigure scalableFigure, org.eclipse.draw2d.Viewport viewport)
Responsible of creating a `ZoomManager` to be used by this `ScalableRootEditPart`.

Returns:
  A new `ZoomManager` bound to the given `ScalableFigure` and `Viewport`.
Since:
  3.10

### createLayers

protected void createLayers(org.eclipse.draw2d.LayeredPane layeredPane)
Description copied from class: `FreeformGraphicalRootEditPart`
Creates the top-most set of layers on the given layered pane.

Overrides:
  `createLayers` in class `FreeformGraphicalRootEditPart`
Parameters:
  `layeredPane` - the parent for the created layers
See Also:
  - `FreeformGraphicalRootEditPart.createLayers(LayeredPane)`

### createScaledLayers

protected org.eclipse.draw2d.ScalableFreeformLayeredPane createScaledLayers()
Creates a layered pane and the layers that should be scaled.

Returns:
  a new freeform layered pane containing the scalable layers

### getLayer

public org.eclipse.draw2d.IFigure getLayer(Object key)
Description copied from class: `FreeformGraphicalRootEditPart`
Returns the layer indicated by the key. Searches all layered panes.

Specified by:
  `getLayer` in interface `LayerManager`
Overrides:
  `getLayer` in class `FreeformGraphicalRootEditPart`
Parameters:
  `key` - ID of the Layer
Returns:
  The requested layer or `null` if it doesn't exist
See Also:
  - `FreeformGraphicalRootEditPart.getLayer(Object)`

### getScaledLayers

protected org.eclipse.draw2d.LayeredPane getScaledLayers()
Returns the scalable layers of this EditPart

Returns:
  LayeredPane

### getZoomManager

public ZoomManager getZoomManager()
Returns the zoomManager.

Returns:
  ZoomManager

### register

protected void register()
Description copied from class: `AbstractEditPart`
Registers itself in the viewer's various registries. If your EditPart has a 1-to-1 relationship with a visual object and a 1-to-1 relationship with a model object, the default implementation should be sufficent.

Overrides:
  `register` in class `FreeformGraphicalRootEditPart`
See Also:
  - `AbstractEditPart.register()`

### unregister

protected void unregister()
Description copied from class: `AbstractEditPart`
Undoes any registration performed by `AbstractEditPart.register()`. The provided base classes will correctly unregister their visuals.

Overrides:
  `unregister` in class `FreeformGraphicalRootEditPart`
See Also:
  - `AbstractEditPart.unregister()`