Package org.eclipse.gef.zest.fx.parts

# Class NodePart

java.lang.Object
org.eclipse.gef.mvc.fx.parts.AbstractVisualPart<V>
org.eclipse.gef.mvc.fx.parts.AbstractContentPart<Group>
org.eclipse.gef.zest.fx.parts.NodePart

All Implemented Interfaces:
  `IActivatable`, `IAdaptable`, `IAdaptable.Bound<IViewer>`, `IDisposable`, `IContentPart<Group>`, `IResizableContentPart<Group>`, `ITransformableContentPart<Group>`, `IVisualPart<Group>`

public class NodePart extends AbstractContentPart<Group> implements ITransformableContentPart<Group>, IResizableContentPart<Group>
The `NodePart` is the controller for a `Node` content object.

## Property Summary

### Properties inherited from class org.eclipse.gef.mvc.fx.parts.AbstractContentPart

`contentAnchoragesUnmodifiable, contentChildrenUnmodifiable, content`

### Properties inherited from class org.eclipse.gef.mvc.fx.parts.AbstractVisualPart

`active, adaptable, adapters, anchoragesUnmodifiable, anchoredsUnmodifiable, childrenUnmodifiable, parent, refreshVisual`

### Properties inherited from interface org.eclipse.gef.common.activate.IActivatable

`active`

### Properties inherited from interface org.eclipse.gef.common.adapt.IAdaptable

`adapters`

### Properties inherited from interface org.eclipse.gef.common.adapt.IAdaptable.Bound

`adaptable`

### Properties inherited from interface org.eclipse.gef.mvc.fx.parts.IContentPart

`contentAnchoragesUnmodifiable, contentChildrenUnmodifiable, content`

### Properties inherited from interface org.eclipse.gef.mvc.fx.parts.IVisualPart

`anchoragesUnmodifiable, anchoredsUnmodifiable, childrenUnmodifiable, parent, refreshVisual`

## Nested Class Summary

Nested Classes
Modifier and Type
Class
Description
`static class`
`NodePart.NestedGraphIcon`
JavaFX Node displaying a small icon representing a nested graph.

## Nested classes/interfaces inherited from interface org.eclipse.gef.common.adapt.IAdaptable

`IAdaptable.Bound<A extends IAdaptable>`

## Nested classes/interfaces inherited from interface org.eclipse.gef.common.adapt.IAdaptable.Bound

`IAdaptable.Bound.Impl<T extends IAdaptable>`

## Field Summary

Fields
Modifier and Type
Field
Description
`static final String`
`CSS_CLASS`
The CSS class that is applied to the `visual` of this `NodePart`.
`static final String`
`CSS_CLASS_ICON`
The CSS class that is applied to the `Image` that displays the icon.
`static final String`
`CSS_CLASS_LABEL`
The CSS class that is applied to the `Text` that displays the label.
`static final String`
`CSS_CLASS_SHAPE`
The CSS class that is applied to the `Rectangle` that displays border and background.
`protected static final double`
`DEFAULT_CHILDREN_PANE_HEIGHT`
The default height of the nested graph area.
`protected static final double`
`DEFAULT_CHILDREN_PANE_WIDTH`
The default width of the nested graph area.
`static final double`
`DEFAULT_NESTED_CHILDREN_ZOOM_FACTOR`
The default zoom factor that is applied to the nested graph area.
`static final double`
`DEFAULT_OUTER_LAYOUT_CONTAINER_HEIGHT_NESTING`
The default height for the outer most layout container of this node in the case of nested content.
`static final double`
`DEFAULT_OUTER_LAYOUT_CONTAINER_WIDTH_NESTING`
The default width for the outer most layout container of this node in the case of nested content.
`protected static final double`
`DEFAULT_SHAPE_PADDING`
The default padding between the node's border and its content.
`protected static final double`
`ZOOMLEVEL_SHOW_NESTED_GRAPH`
The zoom level that needs to be reached for the `doGetContentChildren()` method to return a nested `Graph`.

### Fields inherited from interface org.eclipse.gef.common.activate.IActivatable

`ACTIVE_PROPERTY`

### Fields inherited from interface org.eclipse.gef.common.adapt.IAdaptable

`ADAPTERS_PROPERTY`

### Fields inherited from interface org.eclipse.gef.mvc.fx.parts.IContentPart

`CONTENT_ANCHORAGES_PROPERTY, CONTENT_CHILDREN_PROPERTY, CONTENT_PROPERTY`

### Fields inherited from interface org.eclipse.gef.mvc.fx.parts.ITransformableContentPart

`TRANSFORM_PROVIDER_KEY, TRANSFORM_PROVIDER_ROLE`

### Fields inherited from interface org.eclipse.gef.mvc.fx.parts.IVisualPart

`ANCHORAGES_PROPERTY, ANCHOREDS_PROPERTY, CHILDREN_PROPERTY, PARENT_PROPERTY, REFRESH_VISUAL_PROPERTY`

## Constructor Summary

Constructors
Constructor
Description
`NodePart()`

## Method Summary

Modifier and Type
Method
Description
`protected void`
`doActivate()`
`protected void`
`doAddChildVisual(IVisualPart<? extends Node> child, int index)`
`protected Group`
`doCreateVisual()`
`protected void`
`doDeactivate()`
`protected SetMultimap<? extends Object,String>`
`doGetContentAnchorages()`
`protected List<? extends Object>`
`doGetContentChildren()`
`protected void`
`doRefreshVisual(Group visual)`
`protected void`
`doRemoveChildVisual(IVisualPart<? extends Node> child, int index)`
`Node`
`getContent()`
`Dimension`
`getContentSize()`
`Affine`
`getContentTransform()`
`protected ImageView`
`getIconImageView()`
Returns the `ImageView` that displays the node's icon.
`protected Text`
`getLabelText()`
Returns the `Text` that displays the node's label.
`Node`
`getShape()`
Returns the `Shape` that displays the node's border and background.
`protected void`
`refreshIcon()`
If the given icon is an `Image`, that `Image` will be used as the icon of this `NodePart`.
`protected void`
`refreshLabel()`
Changes the label of this `NodePart` to the given value.
`protected void`
`refreshTooltip()`
Changes the tooltip of this `NodePart` to the given value.
`void`
`setContentSize(Dimension size)`
`void`
`setContentTransform(Affine totalTransform)`

### Methods inherited from class org.eclipse.gef.mvc.fx.parts.AbstractContentPart

`addContentChild, attachToContentAnchorage, contentAnchoragesUnmodifiableProperty, contentChildrenUnmodifiableProperty, contentProperty, detachFromContentAnchorage, doAddContentChild, doAttachToContentAnchorage, doDetachFromContentAnchorage, doRemoveContentChild, doReorderContentChild, getContentAnchoragesUnmodifiable, getContentChildrenUnmodifiable, isFocusable, isSelectable, refreshContentAnchorages, refreshContentChildren, register, registerAtContentPartMap, removeContentChild, reorderContentChild, setContent, unregister, unregisterFromContentPartMap`

### Methods inherited from class org.eclipse.gef.mvc.fx.parts.AbstractVisualPart

`activate, activateAdapters, activateChildren, activeProperty, adaptableProperty, adaptersProperty, addChild, addChild, addChildren, addChildren, anchoragesUnmodifiableProperty, anchoredsUnmodifiableProperty, attachAnchored, attachToAnchorage, attachToAnchorage, childrenUnmodifiableProperty, deactivate, deactivateAdapters, deactivateChildren, detachAnchored, detachFromAnchorage, detachFromAnchorage, determineViewer, dispose, doAttachToAnchorageVisual, doDetachFromAnchorageVisual, getAdaptable, getAdapter, getAdapter, getAdapter, getAdapterKey, getAdapters, getAdapters, getAdapters, getAnchoragesUnmodifiable, getAnchoredsUnmodifiable, getBehaviors, getChildrenUnmodifiable, getHandlers, getParent, getPolicies, getRoot, getVisual, isActive, isRefreshVisual, parentProperty, refreshVisual, refreshVisualProperty, registerAtVisualPartMap, removeChild, removeChildren, reorderChild, setAdaptable, setAdapter, setAdapter, setAdapter, setAdapter, setParent, setRefreshVisual, unregisterFromVisualPartMap, unsetAdapter`

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

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

### Methods inherited from interface org.eclipse.gef.common.activate.IActivatable

`activate, activeProperty, deactivate, isActive`

### Methods inherited from interface org.eclipse.gef.common.adapt.IAdaptable

`adaptersProperty, getAdapter, getAdapter, getAdapter, getAdapterKey, getAdapters, getAdapters, getAdapters, setAdapter, setAdapter, setAdapter, setAdapter, unsetAdapter`

### Methods inherited from interface org.eclipse.gef.common.adapt.IAdaptable.Bound

`adaptableProperty, getAdaptable, setAdaptable`

### Methods inherited from interface org.eclipse.gef.mvc.fx.parts.IContentPart

`addContentChild, attachToContentAnchorage, contentAnchoragesUnmodifiableProperty, contentChildrenUnmodifiableProperty, contentProperty, detachFromContentAnchorage, getContentAnchoragesUnmodifiable, getContentChildrenUnmodifiable, isFocusable, isSelectable, refreshContentAnchorages, refreshContentChildren, removeContentChild, reorderContentChild, setContent`

### Methods inherited from interface org.eclipse.gef.common.dispose.IDisposable

`dispose`

### Methods inherited from interface org.eclipse.gef.mvc.fx.parts.IResizableContentPart

`getVisualSize, setVisualSize`

### Methods inherited from interface org.eclipse.gef.mvc.fx.parts.ITransformableContentPart

`getVisualTransform, setVisualTransform`

### Methods inherited from interface org.eclipse.gef.mvc.fx.parts.IVisualPart

`addChild, addChild, addChildren, addChildren, anchoragesUnmodifiableProperty, anchoredsUnmodifiableProperty, attachAnchored, attachToAnchorage, attachToAnchorage, childrenUnmodifiableProperty, detachAnchored, detachFromAnchorage, detachFromAnchorage, getAnchoragesUnmodifiable, getAnchoredsUnmodifiable, getBehaviors, getChildrenUnmodifiable, getHandlers, getParent, getPolicies, getRoot, getViewer, getVisual, isRefreshVisual, parentProperty, refreshVisual, refreshVisualProperty, removeChild, removeChildren, reorderChild, setParent, setRefreshVisual`

## Field Details

### DEFAULT_SHAPE_PADDING

protected static final double DEFAULT_SHAPE_PADDING
The default padding between the node's border and its content.

See Also:
  - Constant Field Values

### ZOOMLEVEL_SHOW_NESTED_GRAPH

protected static final double ZOOMLEVEL_SHOW_NESTED_GRAPH
The zoom level that needs to be reached for the `doGetContentChildren()` method to return a nested `Graph`.

See Also:
  - Constant Field Values

### DEFAULT_CHILDREN_PANE_WIDTH

protected static final double DEFAULT_CHILDREN_PANE_WIDTH
The default width of the nested graph area.

See Also:
  - Constant Field Values

### DEFAULT_CHILDREN_PANE_HEIGHT

protected static final double DEFAULT_CHILDREN_PANE_HEIGHT
The default height of the nested graph area.

See Also:
  - Constant Field Values

### DEFAULT_NESTED_CHILDREN_ZOOM_FACTOR

public static final double DEFAULT_NESTED_CHILDREN_ZOOM_FACTOR
The default zoom factor that is applied to the nested graph area.

See Also:
  - Constant Field Values

### DEFAULT_OUTER_LAYOUT_CONTAINER_WIDTH_NESTING

public static final double DEFAULT_OUTER_LAYOUT_CONTAINER_WIDTH_NESTING
The default width for the outer most layout container of this node in the case of nested content.

See Also:
  - Constant Field Values

### DEFAULT_OUTER_LAYOUT_CONTAINER_HEIGHT_NESTING

public static final double DEFAULT_OUTER_LAYOUT_CONTAINER_HEIGHT_NESTING
The default height for the outer most layout container of this node in the case of nested content.

See Also:
  - Constant Field Values

### CSS_CLASS

public static final String CSS_CLASS
The CSS class that is applied to the `visual` of this `NodePart`.

See Also:
  - Constant Field Values

### CSS_CLASS_SHAPE

public static final String CSS_CLASS_SHAPE
The CSS class that is applied to the `Rectangle` that displays border and background.

See Also:
  - Constant Field Values

### CSS_CLASS_LABEL

public static final String CSS_CLASS_LABEL
The CSS class that is applied to the `Text` that displays the label.

See Also:
  - Constant Field Values

### CSS_CLASS_ICON

public static final String CSS_CLASS_ICON
The CSS class that is applied to the `Image` that displays the icon.

See Also:
  - Constant Field Values

## Constructor Details

### NodePart

public NodePart()

## Method Details

### doActivate

protected void doActivate()

Overrides:
  `doActivate` in class `AbstractVisualPart<Group>`

### doAddChildVisual

protected void doAddChildVisual(IVisualPart<? extends Node> child, int index)

Overrides:
  `doAddChildVisual` in class `AbstractVisualPart<Group>`

### doCreateVisual

protected Group doCreateVisual()

Specified by:
  `doCreateVisual` in class `AbstractVisualPart<Group>`

### doDeactivate

protected void doDeactivate()

Overrides:
  `doDeactivate` in class `AbstractVisualPart<Group>`

### doGetContentAnchorages

protected SetMultimap<? extends Object,String> doGetContentAnchorages()

Specified by:
  `doGetContentAnchorages` in class `AbstractContentPart<Group>`

### doGetContentChildren

protected List<? extends Object> doGetContentChildren()

Specified by:
  `doGetContentChildren` in class `AbstractContentPart<Group>`

### doRefreshVisual

protected void doRefreshVisual(Group visual)

Specified by:
  `doRefreshVisual` in class `AbstractVisualPart<Group>`

### doRemoveChildVisual

protected void doRemoveChildVisual(IVisualPart<? extends Node> child, int index)

Overrides:
  `doRemoveChildVisual` in class `AbstractVisualPart<Group>`

### getContent

public Node getContent()

Specified by:
  `getContent` in interface `IContentPart<Group>`
Overrides:
  `getContent` in class `AbstractContentPart<Group>`

### getContentSize

public Dimension getContentSize()

Specified by:
  `getContentSize` in interface `IResizableContentPart<Group>`

### getContentTransform

public Affine getContentTransform()

Specified by:
  `getContentTransform` in interface `ITransformableContentPart<Group>`

### getIconImageView

protected ImageView getIconImageView()
Returns the `ImageView` that displays the node's icon.

Returns:
  The `ImageView` that displays the node's icon.

### getLabelText

protected Text getLabelText()
Returns the `Text` that displays the node's label.

Returns:
  The `Text` that displays the node's label.

### getShape

public Node getShape()
Returns the `Shape` that displays the node's border and background.

Returns:
  The `Shape` that displays the node's border and background.

### refreshIcon

protected void refreshIcon()
If the given icon is an `Image`, that `Image` will be used as the icon of this `NodePart`.

### refreshLabel

protected void refreshLabel()
Changes the label of this `NodePart` to the given value.

### refreshTooltip

protected void refreshTooltip()
Changes the tooltip of this `NodePart` to the given value.

### setContentSize

public void setContentSize(Dimension size)

Specified by:
  `setContentSize` in interface `IResizableContentPart<Group>`

### setContentTransform

public void setContentTransform(Affine totalTransform)

Specified by:
  `setContentTransform` in interface `ITransformableContentPart<Group>`