# Class TreeTableRow<T>

java.lang.Object
javafx.scene.Node
javafx.scene.Parent
javafx.scene.layout.Region
javafx.scene.control.Control
javafx.scene.control.Labeled
javafx.scene.control.Cell<T>
javafx.scene.control.IndexedCell<T>
javafx.scene.control.TreeTableRow<T>

Type Parameters:
  `T` - The type of the item contained within the Cell.

All Implemented Interfaces:
  `Styleable`, `EventTarget`, `Skinnable`

public class TreeTableRow<T> extends IndexedCell<T>

TreeTableRow is an `IndexedCell`, but rarely needs to be used by developers creating TreeTableView instances. The only time TreeTableRow is likely to be encountered at all by a developer is if they wish to create a custom `rowFactory` that replaces an entire row of a TreeTableView.

More often than not, it is actually easier for a developer to customize individual cells in a row, rather than the whole row itself. To do this, you can specify a custom `cellFactory` on each TreeTableColumn instance.

Since:
  JavaFX 8.0
See Also:
  - `TreeTableView`
  - `TreeTableColumn`
  - `TreeTableCell`
  - `IndexedCell`
  - `Cell`

- ## Property Summary

  Properties
  Type
  Property
  Description
  `final ObjectProperty<Node>`
  `disclosureNode`
  The disclosure node is commonly seen represented as a triangle that rotates on screen to indicate whether or not the TreeItem that it is placed beside is expanded or collapsed.
  `final ReadOnlyObjectProperty<TreeItem<T>>`
  `treeItem`
  Each TreeTableCell represents at most a single `TreeItem`, which is represented by this property.
  `final ReadOnlyObjectProperty<TreeTableView<T>>`
  `treeTableView`
  A TreeTableCell is explicitly linked to a single `TreeTableView` instance, which is represented by this property.

  ### Properties declared in class javafx.scene.control.IndexedCell

  `index`

  ### Properties declared in class javafx.scene.control.Cell

  `editable, editing, empty, item, selected`

  ### Properties declared in class javafx.scene.control.Labeled

  `alignment, contentDisplay, ellipsisString, font, graphic, graphicTextGap, labelPadding, lineSpacing, mnemonicParsing, textAlignment, textFill, textOverrun, text, textTruncated, underline, wrapText`

  ### Properties declared in class javafx.scene.control.Control

  `contextMenu, skin, tooltip`

  ### Properties declared in class javafx.scene.layout.Region

  `background, border, cacheShape, centerShape, height, insets, maxHeight, maxWidth, minHeight, minWidth, opaqueInsets, padding, prefHeight, prefWidth, scaleShape, shape, snapToPixel, width`

  ### Properties declared in class javafx.scene.Parent

  `needsLayout`

  ### Properties declared in class javafx.scene.Node

  `accessibleHelp, accessibleRoleDescription, accessibleRole, accessibleText, blendMode, boundsInLocal, boundsInParent, cacheHint, cache, clip, cursor, depthTest, disabled, disable, effectiveNodeOrientation, effect, eventDispatcher, focused, focusTraversable, focusVisible, focusWithin, hover, id, inputMethodRequests, layoutBounds, layoutX, layoutY, localToParentTransform, localToSceneTransform, managed, mouseTransparent, nodeOrientation, onContextMenuRequested, onDragDetected, onDragDone, onDragDropped, onDragEntered, onDragExited, onDragOver, onInputMethodTextChanged, onKeyPressed, onKeyReleased, onKeyTyped, onMouseClicked, onMouseDragEntered, onMouseDragExited, onMouseDragged, onMouseDragOver, onMouseDragReleased, onMouseEntered, onMouseExited, onMouseMoved, onMousePressed, onMouseReleased, onRotate, onRotationFinished, onRotationStarted, onScrollFinished, onScroll, onScrollStarted, onSwipeDown, onSwipeLeft, onSwipeRight, onSwipeUp, onTouchMoved, onTouchPressed, onTouchReleased, onTouchStationary, onZoomFinished, onZoom, onZoomStarted, opacity, parent, pickOnBounds, pressed, rotate, rotationAxis, scaleX, scaleY, scaleZ, scene, style, translateX, translateY, translateZ, viewOrder, visible`

- ## Field Summary

  ### Fields declared in class javafx.scene.layout.Region

  `USE_COMPUTED_SIZE, USE_PREF_SIZE`

  ### Fields declared in class javafx.scene.Node

  `BASELINE_OFFSET_SAME_AS_HEIGHT`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `TreeTableRow()`
  Creates a default TreeTableRow instance.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `final ObjectProperty<Node>`
  `disclosureNodeProperty()`
  The disclosure node is commonly seen represented as a triangle that rotates on screen to indicate whether or not the TreeItem that it is placed beside is expanded or collapsed.
  `final Node`
  `getDisclosureNode()`
  Returns the current disclosure node set in this TreeTableCell.
  `final TreeItem<T>`
  `getTreeItem()`
  Returns the TreeItem currently set in this TreeTableRow.
  `final TreeTableView<T>`
  `getTreeTableView()`
  Returns the TreeTableView associated with this TreeTableCell.
  `final void`
  `setDisclosureNode(Node value)`
  The node to use as the "disclosure" triangle, or toggle, used for expanding and collapsing items.
  `final ReadOnlyObjectProperty<TreeItem<T>>`
  `treeItemProperty()`
  Each TreeTableCell represents at most a single `TreeItem`, which is represented by this property.
  `final ReadOnlyObjectProperty<TreeTableView<T>>`
  `treeTableViewProperty()`
  A TreeTableCell is explicitly linked to a single `TreeTableView` instance, which is represented by this property.
  `final void`
  `updateTreeItem(TreeItem<T> treeItem)`
  Updates the TreeItem associated with this TreeTableCell.
  `final void`
  `updateTreeTableView(TreeTableView<T> treeTable)`
  Updates the TreeTableView associated with this TreeTableCell.

  ### Methods declared in class javafx.scene.control.IndexedCell

  `getIndex, indexProperty, updateIndex`

  ### Methods declared in class javafx.scene.control.Cell

  `cancelEdit, commitEdit, editableProperty, editingProperty, emptyProperty, getInitialFocusTraversable, getItem, isEditable, isEditing, isEmpty, isItemChanged, isSelected, itemProperty, selectedProperty, setEditable, setItem, startEdit, updateItem, updateSelected`

  ### Methods declared in class javafx.scene.control.Labeled

  `alignmentProperty, contentDisplayProperty, ellipsisStringProperty, fontProperty, getAlignment, getClassCssMetaData, getContentBias, getContentDisplay, getControlCssMetaData, getEllipsisString, getFont, getGraphic, getGraphicTextGap, getInitialAlignment, getLabelPadding, getLineSpacing, getText, getTextAlignment, getTextFill, getTextOverrun, graphicProperty, graphicTextGapProperty, isMnemonicParsing, isTextTruncated, isUnderline, isWrapText, labelPaddingProperty, lineSpacingProperty, mnemonicParsingProperty, setAlignment, setContentDisplay, setEllipsisString, setFont, setGraphic, setGraphicTextGap, setLineSpacing, setMnemonicParsing, setText, setTextAlignment, setTextFill, setTextOverrun, setUnderline, setWrapText, textAlignmentProperty, textFillProperty, textOverrunProperty, textProperty, textTruncatedProperty, underlineProperty, wrapTextProperty`

  ### Methods declared in class javafx.scene.control.Control

  `computeMaxHeight, computeMaxWidth, computeMinHeight, computeMinWidth, contextMenuProperty, createDefaultSkin, getContextMenu, getCssMetaData, getSkin, getTooltip, isResizable, setContextMenu, setSkin, setTooltip, skinProperty, tooltipProperty`

  ### Methods declared in class javafx.scene.layout.Region

  `backgroundProperty, borderProperty, cacheShapeProperty, centerShapeProperty, computePrefHeight, computePrefWidth, getBackground, getBorder, getHeight, getInsets, getMaxHeight, getMaxWidth, getMinHeight, getMinWidth, getOpaqueInsets, getPadding, getPrefHeight, getPrefWidth, getShape, getUserAgentStylesheet, getWidth, heightProperty, insetsProperty, isCacheShape, isCenterShape, isScaleShape, isSnapToPixel, layoutInArea, layoutInArea, layoutInArea, layoutInArea, maxHeight, maxHeightProperty, maxWidth, maxWidthProperty, minHeight, minHeightProperty, minWidth, minWidthProperty, opaqueInsetsProperty, paddingProperty, positionInArea, positionInArea, prefHeight, prefHeightProperty, prefWidth, prefWidthProperty, resize, scaleShapeProperty, setBackground, setBorder, setCacheShape, setCenterShape, setHeight, setMaxHeight, setMaxSize, setMaxWidth, setMinHeight, setMinSize, setMinWidth, setOpaqueInsets, setPadding, setPrefHeight, setPrefSize, setPrefWidth, setScaleShape, setShape, setSnapToPixel, setWidth, shapeProperty, snappedBottomInset, snappedLeftInset, snappedRightInset, snappedTopInset, snapPosition, snapPositionX, snapPositionY, snapSize, snapSizeX, snapSizeY, snapSpace, snapSpaceX, snapSpaceY, snapToPixelProperty, widthProperty`

  ### Methods declared in class javafx.scene.Parent

  `getBaselineOffset, getChildren, getChildrenUnmodifiable, getManagedChildren, getStylesheets, isNeedsLayout, layout, layoutChildren, needsLayoutProperty, requestLayout, requestParentLayout, setNeedsLayout, updateBounds`

  ### Methods declared in class javafx.scene.Node

  `accessibleHelpProperty, accessibleRoleDescriptionProperty, accessibleRoleProperty, accessibleTextProperty, addEventFilter, addEventHandler, applyCss, autosize, blendModeProperty, boundsInLocalProperty, boundsInParentProperty, buildEventDispatchChain, cacheHintProperty, cacheProperty, clipProperty, computeAreaInScreen, contains, contains, cursorProperty, depthTestProperty, disabledProperty, disableProperty, effectiveNodeOrientationProperty, effectProperty, eventDispatcherProperty, executeAccessibleAction, fireEvent, focusedProperty, focusTraversableProperty, focusVisibleProperty, focusWithinProperty, getAccessibleHelp, getAccessibleRole, getAccessibleRoleDescription, getAccessibleText, getBlendMode, getBoundsInLocal, getBoundsInParent, getCacheHint, getClip, getCursor, getDepthTest, getEffect, getEffectiveNodeOrientation, getEventDispatcher, getId, getInitialCursor, getInputMethodRequests, getLayoutBounds, getLayoutX, getLayoutY, getLocalToParentTransform, getLocalToSceneTransform, getNodeOrientation, getOnContextMenuRequested, getOnDragDetected, getOnDragDone, getOnDragDropped, getOnDragEntered, getOnDragExited, getOnDragOver, getOnInputMethodTextChanged, getOnKeyPressed, getOnKeyReleased, getOnKeyTyped, getOnMouseClicked, getOnMouseDragEntered, getOnMouseDragExited, getOnMouseDragged, getOnMouseDragOver, getOnMouseDragReleased, getOnMouseEntered, getOnMouseExited, getOnMouseMoved, getOnMousePressed, getOnMouseReleased, getOnRotate, getOnRotationFinished, getOnRotationStarted, getOnScroll, getOnScrollFinished, getOnScrollStarted, getOnSwipeDown, getOnSwipeLeft, getOnSwipeRight, getOnSwipeUp, getOnTouchMoved, getOnTouchPressed, getOnTouchReleased, getOnTouchStationary, getOnZoom, getOnZoomFinished, getOnZoomStarted, getOpacity, getParent, getProperties, getPseudoClassStates, getRotate, getRotationAxis, getScaleX, getScaleY, getScaleZ, getScene, getStyle, getStyleableParent, getStyleClass, getTransforms, getTranslateX, getTranslateY, getTranslateZ, getTypeSelector, getUserData, getViewOrder, hasProperties, hoverProperty, idProperty, inputMethodRequestsProperty, intersects, intersects, isCache, isDisable, isDisabled, isFocused, isFocusTraversable, isFocusVisible, isFocusWithin, isHover, isManaged, isMouseTransparent, isPickOnBounds, isPressed, isVisible, layoutBoundsProperty, layoutXProperty, layoutYProperty, localToParent, localToParent, localToParent, localToParent, localToParent, localToParentTransformProperty, localToScene, localToScene, localToScene, localToScene, localToScene, localToScene, localToScene, localToScene, localToScene, localToScene, localToSceneTransformProperty, localToScreen, localToScreen, localToScreen, localToScreen, localToScreen, lookup, lookupAll, managedProperty, mouseTransparentProperty, nodeOrientationProperty, notifyAccessibleAttributeChanged, onContextMenuRequestedProperty, onDragDetectedProperty, onDragDoneProperty, onDragDroppedProperty, onDragEnteredProperty, onDragExitedProperty, onDragOverProperty, onInputMethodTextChangedProperty, onKeyPressedProperty, onKeyReleasedProperty, onKeyTypedProperty, onMouseClickedProperty, onMouseDragEnteredProperty, onMouseDragExitedProperty, onMouseDraggedProperty, onMouseDragOverProperty, onMouseDragReleasedProperty, onMouseEnteredProperty, onMouseExitedProperty, onMouseMovedProperty, onMousePressedProperty, onMouseReleasedProperty, onRotateProperty, onRotationFinishedProperty, onRotationStartedProperty, onScrollFinishedProperty, onScrollProperty, onScrollStartedProperty, onSwipeDownProperty, onSwipeLeftProperty, onSwipeRightProperty, onSwipeUpProperty, onTouchMovedProperty, onTouchPressedProperty, onTouchReleasedProperty, onTouchStationaryProperty, onZoomFinishedProperty, onZoomProperty, onZoomStartedProperty, opacityProperty, parentProperty, parentToLocal, parentToLocal, parentToLocal, parentToLocal, parentToLocal, pickOnBoundsProperty, pressedProperty, pseudoClassStateChanged, queryAccessibleAttribute, relocate, removeEventFilter, removeEventHandler, requestFocus, requestFocusTraversal, resizeRelocate, rotateProperty, rotationAxisProperty, scaleXProperty, scaleYProperty, scaleZProperty, sceneProperty, sceneToLocal, sceneToLocal, sceneToLocal, sceneToLocal, sceneToLocal, sceneToLocal, sceneToLocal, sceneToLocal, screenToLocal, screenToLocal, screenToLocal, setAccessibleHelp, setAccessibleRole, setAccessibleRoleDescription, setAccessibleText, setBlendMode, setCache, setCacheHint, setClip, setCursor, setDepthTest, setDisable, setDisabled, setEffect, setEventDispatcher, setEventHandler, setFocused, setFocusTraversable, setHover, setId, setInputMethodRequests, setLayoutX, setLayoutY, setManaged, setMouseTransparent, setNodeOrientation, setOnContextMenuRequested, setOnDragDetected, setOnDragDone, setOnDragDropped, setOnDragEntered, setOnDragExited, setOnDragOver, setOnInputMethodTextChanged, setOnKeyPressed, setOnKeyReleased, setOnKeyTyped, setOnMouseClicked, setOnMouseDragEntered, setOnMouseDragExited, setOnMouseDragged, setOnMouseDragOver, setOnMouseDragReleased, setOnMouseEntered, setOnMouseExited, setOnMouseMoved, setOnMousePressed, setOnMouseReleased, setOnRotate, setOnRotationFinished, setOnRotationStarted, setOnScroll, setOnScrollFinished, setOnScrollStarted, setOnSwipeDown, setOnSwipeLeft, setOnSwipeRight, setOnSwipeUp, setOnTouchMoved, setOnTouchPressed, setOnTouchReleased, setOnTouchStationary, setOnZoom, setOnZoomFinished, setOnZoomStarted, setOpacity, setPickOnBounds, setPressed, setRotate, setRotationAxis, setScaleX, setScaleY, setScaleZ, setStyle, setTranslateX, setTranslateY, setTranslateZ, setUserData, setViewOrder, setVisible, snapshot, snapshot, startDragAndDrop, startFullDrag, styleProperty, toBack, toFront, toString, translateXProperty, translateYProperty, translateZProperty, usesMirroring, viewOrderProperty, visibleProperty`

  ### Methods declared in class java.lang.Object

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

  ### Methods declared in interface javafx.css.Styleable

  `getStyleableNode`

- ## Property Details

  - ### treeItem

    public final ReadOnlyObjectProperty<TreeItem<T>> treeItemProperty
    Each TreeTableCell represents at most a single `TreeItem`, which is represented by this property.
    See Also:
      - `getTreeItem()`
      - `treeItemProperty()`

  - ### disclosureNode

    public final ObjectProperty<Node> disclosureNodeProperty
    The disclosure node is commonly seen represented as a triangle that rotates on screen to indicate whether or not the TreeItem that it is placed beside is expanded or collapsed.
    See Also:
      - `getDisclosureNode()`
      - `setDisclosureNode(Node)`
      - `disclosureNodeProperty()`

  - ### treeTableView

    public final ReadOnlyObjectProperty<TreeTableView<T>> treeTableViewProperty
    A TreeTableCell is explicitly linked to a single `TreeTableView` instance, which is represented by this property.
    See Also:
      - `getTreeTableView()`
      - `treeTableViewProperty()`

- ## Constructor Details

  - ### TreeTableRow

    public TreeTableRow()
    Creates a default TreeTableRow instance.

- ## Method Details

  - ### getTreeItem

    public final TreeItem<T> getTreeItem()
    Returns the TreeItem currently set in this TreeTableRow.
    Returns:
      the TreeItem currently set in this TreeTableRow

  - ### treeItemProperty

    public final ReadOnlyObjectProperty<TreeItem<T>> treeItemProperty()
    Each TreeTableCell represents at most a single `TreeItem`, which is represented by this property.
    Returns:
      the tree item property
    See Also:
      - `getTreeItem()`

  - ### setDisclosureNode

    public final void setDisclosureNode(Node value)
    The node to use as the "disclosure" triangle, or toggle, used for expanding and collapsing items. This is only used in the case of an item in the tree which contains child items. If not specified, the TreeTableCell's Skin implementation is responsible for providing a default disclosure node.
    Parameters:
      `value` - the disclosure node

  - ### getDisclosureNode

    public final Node getDisclosureNode()
    Returns the current disclosure node set in this TreeTableCell.
    Returns:
      the disclosure node

  - ### disclosureNodeProperty

    public final ObjectProperty<Node> disclosureNodeProperty()
    The disclosure node is commonly seen represented as a triangle that rotates on screen to indicate whether or not the TreeItem that it is placed beside is expanded or collapsed.
    Returns:
      the disclosure node property
    See Also:
      - `getDisclosureNode()`
      - `setDisclosureNode(Node)`

  - ### getTreeTableView

    public final TreeTableView<T> getTreeTableView()
    Returns the TreeTableView associated with this TreeTableCell.
    Returns:
      the tree table view

  - ### treeTableViewProperty

    public final ReadOnlyObjectProperty<TreeTableView<T>> treeTableViewProperty()
    A TreeTableCell is explicitly linked to a single `TreeTableView` instance, which is represented by this property.
    Returns:
      the tree table view property
    See Also:
      - `getTreeTableView()`

  - ### updateTreeTableView

    public final void updateTreeTableView(TreeTableView<T> treeTable)
    Updates the TreeTableView associated with this TreeTableCell.
    Parameters:
      `treeTable` - The new TreeTableView that should be associated with this TreeTableCell. Note: This function is intended to be used by experts, primarily by those implementing new Skins. It is not common for developers or designers to access this function directly.

  - ### updateTreeItem

    public final void updateTreeItem(TreeItem<T> treeItem)
    Updates the TreeItem associated with this TreeTableCell.
    Parameters:
      `treeItem` - The new TreeItem that should be associated with this TreeTableCell. Note: This function is intended to be used by experts, primarily by those implementing new Skins. It is not common for developers or designers to access this function directly.