Перейти к содержанию

DockNode

Иерархический узел дерева докинга: листовой узел (LEAF) со вкладками DockPane или узел разделения (SPLIT), делящий детей горизонтально или вертикально.

Обзор

DockNode — древовидный узел структуры докинга.

  • Листовой узел (LEAF): Содержит список сгруппированных вкладок DockPane и индекс выбранной вкладки selectedIndex.
  • Разделительный узел (SPLIT): Разделяет два дочерних поддерева (first, second) по горизонтали или вертикали с пропорцией splitRatio.

Связанные ссылки

  • DockPane: Дескриптор отдельной панели докинга, содержащей виджет содержимого, заголовок вкладки, иконку, признак несохраненных правок и стражи закрытия.
  • DockingManager: Невизуальный контроллер раскладки, управляющий иерархическим деревом докинга, добавлением панелей, разделениями, порядком вкладок и снимками раскладки.

API

DockNode::containsPane(String)

Рекурсивно проверяет, содержится ли панель с указанным ID в данном поддереве.

Параметр Тип Описание
paneId String Идентификатор искомой панели.

Возвращает boolean: True, если поддерево содержит панель с указанным ID..

DockNode::empty()

Проверяет, пуст ли узел и не содержит ли дочерних панелей.

Возвращает boolean: True, если узел не содержит панелей..

DockNode::findPane(String)

Рекурсивно выполняет поиск панели по строковому идентификатору.

Параметр Тип Описание
paneId String Идентификатор искомой панели.

Возвращает DockPane: Найденная панель DockPane или null, если не найдена..

DockNode::first()

Возвращает первый дочерний узел (слева или сверху).

Возвращает DockNode: Запрошенный дочерний узел..

DockNode::id()

Возвращает уникальный строковый идентификатор узла дерева.

Возвращает String: Уникальный идентификатор узла..

DockNode::isLeaf()

Проверяет, является ли узел листовым и содержит ли вкладки.

Возвращает boolean: True, если это листовой узел, содержащий вкладки..

DockNode::isSplit()

Проверяет, является ли узел разделительным и содержит ли два дочерних поддерева.

Возвращает boolean: True, если это разделительный узел, содержащий два дочерних узла..

DockNode::kind()

Возвращает тип узла дерева (LEAF или SPLIT).

Возвращает Kind: Тип классификации узла (LEAF или SPLIT)..

DockNode::leaf()

Создает пустой листовой узел дерева докинга.

Возвращает DockNode: Созданный экземпляр узла DockNode..

DockNode::leaf(DockPane)

Создает листовой узел дерева докинга с начальной панелью.

Параметр Тип Описание
pane DockPane Панель DockPane для размещения в листовом узле.

Возвращает DockNode: Созданный экземпляр узла DockNode..

DockNode::orientation()

Возвращает ориентацию разделения дочерних узлов (HORIZONTAL или VERTICAL).

Возвращает DockSplitOrientation: Ориентация разделения или null для листовых узлов..

DockNode::panes()

Возвращает неизменяемый список панелей докинга, размещенных в листовом узле.

Возвращает List: Неизменяемый список вкладок DockPane в данном листовом узле..

DockNode::second()

Возвращает второй дочерний узел (справа или снизу).

Возвращает DockNode: Запрошенный дочерний узел..

DockNode::selectedIndex()

Возвращает индекс текущей выбранной активной вкладки в листовом узле.

Возвращает int: Индекс выбранной вкладки (начиная с нуля)..

DockNode::selectedPane()

Возвращает активную выбранную панель DockPane в листовом узле.

Возвращает DockPane: Активная выбранная панель DockPane или null, если пусто..

DockNode::split(DockSplitOrientation, DockNode, DockNode, float)

Создает разделительный узел, объединяющий два дочерних узла с заданной ориентацией и коэффициентом.

Параметр Тип Описание
orientation DockSplitOrientation Ориентация разделения между двумя дочерними узлами.
first DockNode Первый дочерний узел.
second DockNode Второй дочерний узел.
splitRatio float Коэффициент разделения пространства (от 0.0 до 1.0).

Возвращает DockNode: Созданный экземпляр узла DockNode..

DockNode::splitRatio()

Возвращает коэффициент разделения пространства между дочерними узлами.

Возвращает float: Коэффициент разделения между двумя дочерними узлами..