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.mvc.fx.parts.IContentPart

`contentAnchoragesUnmodifiable, contentChildrenUnmodifiable, content`

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

`anchoragesUnmodifiable, anchoredsUnmodifiable, childrenUnmodifiable, parent, refreshVisual`

### 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.common.activate.IActivatable

`active`

### Nested Class Summary

Nested Classes
`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
`static String` `CSS_CLASS` The CSS class that is applied to the `visual` of this `NodePart`.
`static String` `CSS_CLASS_ICON` The CSS class that is applied to the `Image` that displays the icon.
`static String` `CSS_CLASS_LABEL` The CSS class that is applied to the `Text` that displays the label.
`static String` `CSS_CLASS_SHAPE` The CSS class that is applied to the `Rectangle` that displays border and background.
`protected static double` `DEFAULT_CHILDREN_PANE_HEIGHT` The default height of the nested graph area.
`protected static double` `DEFAULT_CHILDREN_PANE_WIDTH` The default width of the nested graph area.
`static double` `DEFAULT_NESTED_CHILDREN_ZOOM_FACTOR` The default zoom factor that is applied to the nested graph area.
`static 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 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 double` `DEFAULT_SHAPE_PADDING` The default padding between the node's border and its content.
`protected static 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.mvc.fx.parts.ITransformableContentPart

`TRANSFORM_PROVIDER_KEY, TRANSFORM_PROVIDER_ROLE`

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

`ANCHORAGES_PROPERTY, ANCHOREDS_PROPERTY, CHILDREN_PROPERTY, PARENT_PROPERTY, REFRESH_VISUAL_PROPERTY`

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

`ADAPTERS_PROPERTY`

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

`ACTIVE_PROPERTY`

### Constructor Summary

Constructors
Constructor and Description
`NodePart()`

### Method Summary

All Methods Instance Methods Concrete Methods
`protected void` `doActivate()`
`protected void` `doAddChildVisual(IVisualPart<? extends Node> child, int index)`
`protected Group` `doCreateVisual()`
`protected void` `doDeactivate()`
`protected com.google.common.collect.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.mvc.fx.parts.ITransformableContentPart

`getVisualTransform, setVisualTransform`

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

`getVisualSize, setVisualSize`

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

### 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.common.activate.IActivatable

`activate, activeProperty, deactivate, isActive`

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

`dispose`

### Field Detail

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

#### NodePart

    public NodePart()

### Method Detail

#### 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 com.google.common.collect.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>`