## Uses of Class
javafx.scene.control.TreeItem

- Packages that use TreeItem
  Package | Description
  --- | ---
  javafx.scene.control | The JavaFX User Interface Controls (UI Controls or just Controls) are specialized Nodes in the JavaFX Scenegraph especially suited for reuse in many different application contexts.
  javafx.scene.control.cell | The `javafx.scene.control.cell` package is where all cell-related classes are located, other than the core classes such as `Cell`, `IndexedCell`, `ListCell`, `TreeCell`, and `TableCell`.

- - ### Uses of TreeItem in javafx.scene.control

    Subclasses of TreeItem in javafx.scene.control
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `CheckBoxTreeItem<T>` | TreeItem subclass that adds support for being in selected, unselected, and indeterminate states.

    Methods in javafx.scene.control that return TreeItem
    Modifier and Type | Method | Description
    --- | --- | ---
    `TreeItem<T>` | TreeView.`getEditingItem()` | Returns the TreeItem that is currently being edited in the TreeView, or null if no item is being edited.
    `protected TreeItem<S>` | TreeTableView.TreeTableViewFocusModel.`getModelItem​(int index)` | Returns the item at the given index.
    `TreeItem<S>` | TreeTableView.TreeTableViewSelectionModel.`getModelItem​(int index)` | Returns the item at the given index.
    `TreeItem<T>` | TreeItem.`getParent()` | The parent of this TreeItem.
    `TreeItem<S>` | TreeTableView.`getRoot()` | Returns the current root node of this TreeTableView, or null if no root node is specified.
    `TreeItem<T>` | TreeView.`getRoot()` | Returns the current root node of this TreeView, or null if no root node is specified.
    `TreeItem<S>` | TreeTableColumn.CellEditEvent.`getRowValue()` | Convenience method that returns the value for the row (that is, from the TableView `items` list), for the row contained within the `TablePosition` returned in `TreeTableColumn.CellEditEvent.getTreeTablePosition()`.
    `TreeItem<T>` | TreeItem.TreeModificationEvent.`getSource()` | Returns the TreeItem upon which this event occurred.
    `TreeItem<T>` | TreeCell.`getTreeItem()` | Returns the TreeItem currently set in this TreeCell.
    `TreeItem<T>` | TreeItem.TreeModificationEvent.`getTreeItem()` | Returns the TreeItem that this event occurred upon.
    `TreeItem<S>` | TreeTablePosition.`getTreeItem()` | Returns the `TreeItem` that backs the `TablePositionBase.getRow()` row}.
    `TreeItem<T>` | TreeTableRow.`getTreeItem()` | Returns the TreeItem currently set in this TreeTableRow.
    `TreeItem<S>` | TreeTableView.EditEvent.`getTreeItem()` | Returns the `TreeItem` upon which the edit took place.
    `TreeItem<S>` | TreeTableView.`getTreeItem​(int row)` | Returns the TreeItem in the given index, or null if it is out of bounds.
    `TreeItem<T>` | TreeView.EditEvent.`getTreeItem()` | Returns the `TreeItem` upon which the edit took place.
    `TreeItem<T>` | TreeView.`getTreeItem​(int row)` | Returns the TreeItem in the given index, or null if it is out of bounds.
    `TreeItem<S>` | TreeTableColumn.CellDataFeatures.`getValue()` | Returns the value passed in to the constructor.
    `TreeItem<T>` | TreeItem.`nextSibling()` | Returns the next sibling of the TreeItem.
    `TreeItem<T>` | TreeItem.`nextSibling​(TreeItem<T> afterNode)` | Returns the next sibling after the given node.
    `TreeItem<T>` | TreeItem.`previousSibling()` | Returns the previous sibling of the TreeItem.
    `TreeItem<T>` | TreeItem.`previousSibling​(TreeItem<T> beforeNode)` | Returns the previous sibling after the given node.

    Methods in javafx.scene.control that return types with arguments of type TreeItem
    Modifier and Type | Method | Description
    --- | --- | ---
    `ReadOnlyObjectProperty<Comparator<TreeItem<S>>>` | TreeTableView.`comparatorProperty()` | The comparator property is a read-only property that is representative of the current state of the `sort order` list.
    `ReadOnlyObjectProperty<TreeItem<T>>` | TreeView.`editingItemProperty()` | A property used to represent the TreeItem currently being edited in the TreeView, if editing is taking place, or null if no item is being edited.
    `ObjectProperty<FocusModel<TreeItem<T>>>` | TreeView.`focusModelProperty()` | The FocusModel provides the API through which it is possible to control focus on zero or one rows of the TreeView.
    `List<? extends TreeItem<T>>` | TreeItem.TreeModificationEvent.`getAddedChildren()` | Returns the children added to the TreeItem in this event, or an empty list if no children were added.
    `ObservableList<TreeItem<T>>` | TreeItem.`getChildren()` | The children of this TreeItem.
    `Comparator<TreeItem<S>>` | TreeTableView.`getComparator()` | Gets the value of the property comparator.
    `FocusModel<TreeItem<T>>` | TreeView.`getFocusModel()` | Returns the currently installed `FocusModel`.
    `List<? extends TreeItem<T>>` | TreeItem.TreeModificationEvent.`getRemovedChildren()` | Returns the children removed from the TreeItem in this event, or an empty list if no children were added.
    `MultipleSelectionModel<TreeItem<T>>` | TreeView.`getSelectionModel()` | Returns the currently installed selection model.
    `ReadOnlyObjectProperty<TreeItem<T>>` | TreeItem.`parentProperty()` | A property that represents the parent of this TreeItem.
    `ObjectProperty<TreeItem<S>>` | TreeTableView.`rootProperty()` | Property representing the root node of the TreeTableView.
    `ObjectProperty<TreeItem<T>>` | TreeView.`rootProperty()` | Property representing the root node of the TreeView.
    `ObjectProperty<MultipleSelectionModel<TreeItem<T>>>` | TreeView.`selectionModelProperty()` | The SelectionModel provides the API through which it is possible to select single or multiple items within a TreeView, as well as inspect which rows have been selected by the user.
    `ReadOnlyObjectProperty<TreeItem<T>>` | TreeCell.`treeItemProperty()` | Each TreeCell represents at most a single `TreeItem`, which is represented by this property.
    `ReadOnlyObjectProperty<TreeItem<T>>` | TreeTableRow.`treeItemProperty()` | Each TreeTableCell represents at most a single `TreeItem`, which is represented by this property.

    Methods in javafx.scene.control with parameters of type TreeItem
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | TreeView.`edit​(TreeItem<T> item)` | Instructs the TreeView to begin editing the given TreeItem, if the TreeView is `editable`.
    `ObservableValue<T>` | TreeTableColumn.`getCellObservableValue​(TreeItem<S> item)` | Attempts to return an ObservableValue<T> for the given item (which is of type S).
    `static int` | TreeTableView.`getNodeLevel​(TreeItem<?> node)` | Deprecated. This method does not correctly calculate the distance from the given TreeItem to the root of the TreeTableView.
    `static int` | TreeView.`getNodeLevel​(TreeItem<?> node)` | Deprecated. This method does not correctly calculate the distance from the given TreeItem to the root of the TreeView.
    `int` | TreeTableView.`getRow​(TreeItem<S> item)` | Returns the index position of the given TreeItem, assuming that it is currently accessible through the tree hierarchy (most notably, that all parent tree items are expanded).
    `int` | TreeView.`getRow​(TreeItem<T> item)` | Returns the index position of the given TreeItem, assuming that it is currently accessible through the tree hierarchy (most notably, that all parent tree items are expanded).
    `int` | TreeTableView.`getTreeItemLevel​(TreeItem<?> node)` | Returns the number of levels of 'indentation' of the given TreeItem, based on how many times getParent() can be recursively called.
    `int` | TreeView.`getTreeItemLevel​(TreeItem<?> node)` | Returns the number of levels of 'indentation' of the given TreeItem, based on how many times getParent() can be recursively called.
    `TreeItem<T>` | TreeItem.`nextSibling​(TreeItem<T> afterNode)` | Returns the next sibling after the given node.
    `TreeItem<T>` | TreeItem.`previousSibling​(TreeItem<T> beforeNode)` | Returns the previous sibling after the given node.
    `void` | TreeTableView.`setRoot​(TreeItem<S> value)` | Sets the root node in this TreeTableView.
    `void` | TreeView.`setRoot​(TreeItem<T> value)` | Sets the root node in this TreeView.
    `void` | TreeCell.`updateTreeItem​(TreeItem<T> treeItem)` | Updates the TreeItem associated with this TreeCell.
    `void` | TreeTableRow.`updateTreeItem​(TreeItem<T> treeItem)` | Updates the TreeItem associated with this TreeTableCell.

    Method parameters in javafx.scene.control with type arguments of type TreeItem
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | TreeTableView.TreeTableViewSelectionModel.`selectRange​(int minRow, TableColumnBase<TreeItem<S>,​?> minColumn, int maxRow, TableColumnBase<TreeItem<S>,​?> maxColumn)` | Selects the cells in the range (minRow, minColumn) to (maxRow, maxColumn), inclusive.
    `void` | TreeView.`setFocusModel​(FocusModel<TreeItem<T>> value)` | Sets the `FocusModel` to be used in the TreeView.
    `void` | TreeView.`setSelectionModel​(MultipleSelectionModel<TreeItem<T>> value)` | Sets the `MultipleSelectionModel` to be used in the TreeView.

    Constructors in javafx.scene.control with parameters of type TreeItem
    Constructor | Description
    --- | ---
    `CellDataFeatures​(TreeTableView<S> treeTableView, TreeTableColumn<S,​T> tableColumn, TreeItem<S> value)` | Instantiates a CellDataFeatures instance with the given properties set as read-only values of this instance.
    `EditEvent​(TreeTableView<S> source, EventType<? extends TreeTableView.EditEvent> eventType, TreeItem<S> treeItem, S oldValue, S newValue)` | Creates a new EditEvent instance to represent an edit event.
    `EditEvent​(TreeView<T> source, EventType<? extends TreeView.EditEvent> eventType, TreeItem<T> treeItem, T oldValue, T newValue)` | Creates a new EditEvent instance to represent an edit event.
    `TreeModificationEvent​(EventType<? extends Event> eventType, TreeItem<T> treeItem)` | Constructs a basic TreeModificationEvent - this is useful in situations where the tree item has not received a new value, has not changed between expanded/collapsed states, and whose children has not changed.
    `TreeModificationEvent​(EventType<? extends Event> eventType, TreeItem<T> treeItem, boolean expanded)` | Constructs a TreeModificationEvent for when the TreeItem has had its `expandedProperty()` changed.
    `TreeModificationEvent​(EventType<? extends Event> eventType, TreeItem<T> treeItem, List<? extends TreeItem<T>> added, List<? extends TreeItem<T>> removed)` | Constructs a TreeModificationEvent for when the TreeItem has had its children list changed.
    `TreeModificationEvent​(EventType<? extends Event> eventType, TreeItem<T> treeItem, T newValue)` | Constructs a TreeModificationEvent for when the TreeItem has had its `valueProperty()` changed.
    `TreeTableView​(TreeItem<S> root)` | Creates a TreeTableView with the provided root node.
    `TreeView​(TreeItem<T> root)` | Creates a TreeView with the provided root node.

    Constructor parameters in javafx.scene.control with type arguments of type TreeItem
    Constructor | Description
    --- | ---
    `TreeModificationEvent​(EventType<? extends Event> eventType, TreeItem<T> treeItem, List<? extends TreeItem<T>> added, List<? extends TreeItem<T>> removed)` | Constructs a TreeModificationEvent for when the TreeItem has had its children list changed.

  - ### Uses of TreeItem in javafx.scene.control.cell

    Methods in javafx.scene.control.cell that return types with arguments of type TreeItem
    Modifier and Type | Method | Description
    --- | --- | ---
    `ObjectProperty<StringConverter<TreeItem<T>>>` | CheckBoxTreeCell.`converterProperty()` | The `StringConverter` property.
    `StringConverter<TreeItem<T>>` | CheckBoxTreeCell.`getConverter()` | Returns the `StringConverter` used in this cell.
    `Callback<TreeItem<T>,​ObservableValue<Boolean>>` | CheckBoxTreeCell.`getSelectedStateCallback()` | Returns the `Callback` that is bound to by the CheckBox shown on screen.
    `ObjectProperty<Callback<TreeItem<T>,​ObservableValue<Boolean>>>` | CheckBoxTreeCell.`selectedStateCallbackProperty()` | Property representing the `Callback` that is bound to by the CheckBox shown on screen.

    Method parameters in javafx.scene.control.cell with type arguments of type TreeItem
    Modifier and Type | Method | Description
    --- | --- | ---
    `static <T> Callback<TreeView<T>,​TreeCell<T>>` | CheckBoxTreeCell.`forTreeView​(Callback<TreeItem<T>,​ObservableValue<Boolean>> getSelectedProperty)` | Creates a cell factory for use in a TreeView control.
    `static <T> Callback<TreeView<T>,​TreeCell<T>>` | CheckBoxTreeCell.`forTreeView​(Callback<TreeItem<T>,​ObservableValue<Boolean>> getSelectedProperty, StringConverter<TreeItem<T>> converter)` | Creates a cell factory for use in a TreeView control.
    `static <T> Callback<TreeView<T>,​TreeCell<T>>` | CheckBoxTreeCell.`forTreeView​(Callback<TreeItem<T>,​ObservableValue<Boolean>> getSelectedProperty, StringConverter<TreeItem<T>> converter)` | Creates a cell factory for use in a TreeView control.
    `void` | CheckBoxTreeCell.`setConverter​(StringConverter<TreeItem<T>> value)` | Sets the `StringConverter` to be used in this cell.
    `void` | CheckBoxTreeCell.`setSelectedStateCallback​(Callback<TreeItem<T>,​ObservableValue<Boolean>> value)` | Sets the `Callback` that is bound to by the CheckBox shown on screen.

    Constructor parameters in javafx.scene.control.cell with type arguments of type TreeItem
    Constructor | Description
    --- | ---
    `CheckBoxTreeCell​(Callback<TreeItem<T>,​ObservableValue<Boolean>> getSelectedProperty)` | Creates a `CheckBoxTreeCell` for use in a TreeView control via a cell factory.
    `CheckBoxTreeCell​(Callback<TreeItem<T>,​ObservableValue<Boolean>> getSelectedProperty, StringConverter<TreeItem<T>> converter)` | Creates a `CheckBoxTreeCell` for use in a TreeView control via a cell factory.
    `CheckBoxTreeCell​(Callback<TreeItem<T>,​ObservableValue<Boolean>> getSelectedProperty, StringConverter<TreeItem<T>> converter)` | Creates a `CheckBoxTreeCell` for use in a TreeView control via a cell factory.