fullPath
Возвращает строковое представление полного пути к текущему элементу (TreeItem) в дереве (TreeView).
Функция строит путь от корня до текущего узла с учётом настроек:
можно включать или исключать корневой элемент (
includeRoot);можно включать или исключать сам текущий элемент (
includeSelf);можно настроить, как каждый элемент преобразуется в текст (
textOf);можно настроить, какой разделитель будет использоваться между элементами (
delimiterOf).
Пример:
Root
└─ Users
└─ AdminВызов:
cell.fullPath()Вернёт:
Root / Users / AdminПараметры
Parameters
учитывать ли корневой узел. По умолчанию true. ⚠️ Свойство TreeView.isShowRoot игнорируется — корень включается или исключается только этим параметром.
учитывать ли текущий элемент (this.treeItem). По умолчанию true. Если false, строка строится до родителя.
функция преобразования TreeItem<T> → String. По умолчанию it.value?.toString().orEmpty(). Можно подменить, например:
textOf = { it.value?.name ?: "<unnamed>" }функция, возвращающая разделитель между двумя соседними элементами пути. Вызывается для каждой пары элементов (left, right) с их индексами.
Параметры:
i: индекс текущего элемента в списке (0..lastIndex-1);lastIndex: индекс последнего элемента пути;left: текущий элемент;right: следующий элемент.
По умолчанию всегда возвращает " / ".
Это даёт гибкость. Например:
delimiterOf = { _, _, left, _ ->
if (left.value.toString() == "Root") ":" else "."
}Для дерева Root → Users → Admin даст результат:
Root:Users.AdminВозвращаемое значение
Строка с полным путём или пустая строка, если путь построить невозможно (например, если элемент null или исключены все звенья).