java.lang.Object
com.iamsoft.util.ui.javafx.TreeItemUtil
-
Nested Class Summary
Nested Classes -
Method Summary
Modifier and TypeMethodDescriptionstatic <T> javafx.collections.ObservableList<javafx.scene.control.TreeItem<T>>ancestorObservableList(javafx.scene.control.TreeItem<T> pTreeItem) ObservableList starting with specified node and ending at root.static <T> booleanchildrenLoaded(javafx.scene.control.TreeItem<T> pItem) If the specified item is a LazyTreeItem, determines whether its child elements are loaded.static <T> javafx.beans.property.ReadOnlyObjectProperty<Integer>descendantCountProperty(javafx.scene.control.TreeItem<T> pTreeItem) Property providing the count of argument node and all descendants.static <T> javafx.collections.ObservableList<javafx.scene.control.TreeItem<T>>descendantObservableList(javafx.scene.control.TreeItem<T> pTreeItem) static <T> javafx.collections.ObservableList<javafx.scene.control.TreeItem<T>>descendantObservableList(javafx.scene.control.TreeItem<T> pTreeItem, TreeItemUtil.StreamOrder pStreamOrder) List containing argument node and all descendants.static intgetDepth(javafx.scene.control.TreeItem<?> pItem) static <T> StringReturns the path of the specified item, excluding root.static <T> javafx.scene.control.TreeItem<T>getRoot(javafx.scene.control.TreeItem<T> pItem) groupByParent(Collection<javafx.scene.control.TreeItem<T>> pTreeItems) Group into lists of siblings.static booleanisVisible(javafx.scene.control.TreeItem<?> pTreeItem) Determines whether all ancestors are expanded.static <T> Iterator<javafx.scene.control.TreeItem<T>>parentIterator(javafx.scene.control.TreeItem<T> pTreeItem) Iterator from argument tree item up to and including root tree item.static <T> javafx.collections.ObservableList<javafx.scene.control.TreeItem<T>>peekChildren(javafx.scene.control.TreeItem<T> pItem) If the specified item is a LazyTreeItem, this method provides access to children without triggering child elements loading in case they are not loaded, yet.static <T> Stream<javafx.scene.control.TreeItem<T>>peekStream(javafx.scene.control.TreeItem<T> pItem) Stream containing specified tree item and all of its already loaded descendants.static <T> Stream<javafx.scene.control.TreeItem<T>>peekStream(javafx.scene.control.TreeItem<T> pItem, Predicate<javafx.scene.control.TreeItem<T>> pProcessDescendants) Stream containing specified tree item and all of its already loaded descendants.static <T> voidsetupTreeItemSelection(javafx.scene.control.TreeItem<T> pRoot, Function<javafx.scene.control.TreeItem<T>, javafx.beans.property.Property<Boolean>> pSelectionSupplier, boolean pLazySelection) static <T> javafx.scene.control.TreeItem<T>snapshot(javafx.scene.control.TreeItem<T> pTreeItem) Make copy of tree item with identical hierarchy.static <T> Stream<javafx.scene.control.TreeItem<T>>visitorStream(javafx.scene.control.TreeItem<T> pTreeItem) Stream containing specified tree item and all of its descendants.static <T> Stream<javafx.scene.control.TreeItem<T>>visitorStream(javafx.scene.control.TreeItem<T> pTreeItem, TreeItemUtil.StreamOrder pOrder) Stream containing specified tree item and all of its descendants.static <T> Stream<javafx.scene.control.TreeItem<T>>visitorStream(javafx.scene.control.TreeItem<T> pTreeItem, TreeItemUtil.StreamOrder pOrder, Predicate<javafx.scene.control.TreeItem<T>> pProcessDescendants) Stream containing specified tree item and all of its descendants.
-
Method Details
-
getDepth
public static int getDepth(javafx.scene.control.TreeItem<?> pItem) -
getRoot
public static <T> javafx.scene.control.TreeItem<T> getRoot(javafx.scene.control.TreeItem<T> pItem) -
visitorStream
public static <T> Stream<javafx.scene.control.TreeItem<T>> visitorStream(javafx.scene.control.TreeItem<T> pTreeItem) Stream containing specified tree item and all of its descendants. Depth-first visitor in TreeItemUtil.StreamOrder.ABDC order. -
visitorStream
public static <T> Stream<javafx.scene.control.TreeItem<T>> visitorStream(javafx.scene.control.TreeItem<T> pTreeItem, TreeItemUtil.StreamOrder pOrder) Stream containing specified tree item and all of its descendants. Depth-first visitor. -
visitorStream
public static <T> Stream<javafx.scene.control.TreeItem<T>> visitorStream(javafx.scene.control.TreeItem<T> pTreeItem, TreeItemUtil.StreamOrder pOrder, Predicate<javafx.scene.control.TreeItem<T>> pProcessDescendants) Stream containing specified tree item and all of its descendants. Depth-first visitor.- Parameters:
pProcessDescendants- Specifies whether to process the descendants of a tree item.
-
ancestorObservableList
public static <T> javafx.collections.ObservableList<javafx.scene.control.TreeItem<T>> ancestorObservableList(javafx.scene.control.TreeItem<T> pTreeItem) ObservableList starting with specified node and ending at root. -
descendantObservableList
public static <T> javafx.collections.ObservableList<javafx.scene.control.TreeItem<T>> descendantObservableList(javafx.scene.control.TreeItem<T> pTreeItem) -
descendantObservableList
public static <T> javafx.collections.ObservableList<javafx.scene.control.TreeItem<T>> descendantObservableList(javafx.scene.control.TreeItem<T> pTreeItem, TreeItemUtil.StreamOrder pStreamOrder) List containing argument node and all descendants. Automatically updated when children are added/removed. List is in TreeItemUtil.StreamOrder.ABDC order.- See Also:
-
descendantCountProperty
public static <T> javafx.beans.property.ReadOnlyObjectProperty<Integer> descendantCountProperty(javafx.scene.control.TreeItem<T> pTreeItem) Property providing the count of argument node and all descendants. Count changes are delayed to improve performance and to prevent too frequent updates. -
parentIterator
public static <T> Iterator<javafx.scene.control.TreeItem<T>> parentIterator(javafx.scene.control.TreeItem<T> pTreeItem) Iterator from argument tree item up to and including root tree item.- Parameters:
pTreeItem- First item returned by iterator.- See Also:
-
TreeItem.getParent()
-
isVisible
public static boolean isVisible(javafx.scene.control.TreeItem<?> pTreeItem) Determines whether all ancestors are expanded.- Returns:
trueif all ancestors are expanded.
-
getPath
public static <T> String getPath(javafx.scene.control.TreeItem<T> pItem, Function<T, String> pToStringFunction) Returns the path of the specified item, excluding root. -
setupTreeItemSelection
-
peekStream
public static <T> Stream<javafx.scene.control.TreeItem<T>> peekStream(javafx.scene.control.TreeItem<T> pItem) Stream containing specified tree item and all of its already loaded descendants. -
peekStream
public static <T> Stream<javafx.scene.control.TreeItem<T>> peekStream(javafx.scene.control.TreeItem<T> pItem, Predicate<javafx.scene.control.TreeItem<T>> pProcessDescendants) Stream containing specified tree item and all of its already loaded descendants.- Parameters:
pProcessDescendants- Specifies whether to process the descendants of a tree item.
-
childrenLoaded
public static <T> boolean childrenLoaded(javafx.scene.control.TreeItem<T> pItem) If the specified item is a LazyTreeItem, determines whether its child elements are loaded. Otherwise,trueis returned.- See Also:
-
peekChildren
public static <T> javafx.collections.ObservableList<javafx.scene.control.TreeItem<T>> peekChildren(javafx.scene.control.TreeItem<T> pItem) If the specified item is a LazyTreeItem, this method provides access to children without triggering child elements loading in case they are not loaded, yet.- See Also:
-
groupByParent
public static <T> Map<javafx.scene.control.TreeItem<T>,List<javafx.scene.control.TreeItem<T>>> groupByParent(Collection<javafx.scene.control.TreeItem<T>> pTreeItems) Group into lists of siblings. -
snapshot
public static <T> javafx.scene.control.TreeItem<T> snapshot(javafx.scene.control.TreeItem<T> pTreeItem) Make copy of tree item with identical hierarchy.
-