java.lang.Object
com.iamsoft.util.ui.javafx.TreeItemUtil
- See Also:
-
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> boolean
childrenLoaded
(javafx.scene.control.TreeItem<T> pItem) If the specified item is a LazyTreeItem, determines whether its child elements are loaded.static <T> void
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, com.iamsoft.util.TreeUtil.StreamOrder pStreamOrder) List containing argument node and all descendants.static <T> void
static <T> javafx.beans.value.ObservableValue
<javafx.scene.control.TreeItem<T>> getAncestor
(javafx.scene.control.TreeItem<T> pTreeItem, int pDistance) static <T> String
Returns the path of the specified item, excluding root.groupByParent
(Collection<javafx.scene.control.TreeItem<T>> pTreeItems) Deprecated.Use Collectors.groupingBy(Function).static boolean
isVisible
(javafx.scene.control.TreeItem<?> pTreeItem) Determines whether all ancestors are expanded.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> void
setupTreeItemSelection
(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, com.iamsoft.util.TreeUtil.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, com.iamsoft.util.TreeUtil.StreamOrder pOrder, Predicate<javafx.scene.control.TreeItem<T>> pProcessDescendants) Stream containing specified tree item and all of its descendants.
-
Method Details
-
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 TreeUtil.StreamOrder.ABDC order. -
visitorStream
public static <T> Stream<javafx.scene.control.TreeItem<T>> visitorStream(javafx.scene.control.TreeItem<T> pTreeItem, com.iamsoft.util.TreeUtil.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, com.iamsoft.util.TreeUtil.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.
-
getAncestor
public static <T> javafx.beans.value.ObservableValue<javafx.scene.control.TreeItem<T>> getAncestor(javafx.scene.control.TreeItem<T> pTreeItem, int pDistance) - Parameters:
pDistance
- Number of steps up from source node (if positive) or number of steps down from root minus one (if negative).
-
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, com.iamsoft.util.TreeUtil.StreamOrder pStreamOrder) List containing argument node and all descendants. Automatically updated when children are added/removed. List is in TreeUtil.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. -
isVisible
public static boolean isVisible(javafx.scene.control.TreeItem<?> pTreeItem) Determines whether all ancestors are expanded.- Returns:
true
if 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,true
is 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
@Deprecated public static <T> Map<javafx.scene.control.TreeItem<T>,List<javafx.scene.control.TreeItem<T>>> groupByParent(Collection<javafx.scene.control.TreeItem<T>> pTreeItems) Deprecated.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. -
expand
-
collapse
-