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

DockLayoutSnapshot

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

Обзор

DockLayoutSnapshot сохраняет снимок всей иерархии дерева докинга для персистентности.

Процесс сохранения

  1. Снятие: DockLayoutSnapshot snapshot = dockingManager.snapshot();
  2. Сериализация: String encoded = DockLayoutSnapshotCodec.encode(snapshot);
  3. Сохранение: Запись строки encoded в файл настроек или профиль проекта.
  4. Восстановление: dockingRoot.restoreLayout(snapshot, paneRegistry);

Создание и восстановление снимка раскладки

DockLayoutSnapshot snapshot = DockLayoutSnapshot.from(dockingManager.rootNode(), "editor-1");

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

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

API

DockLayoutSnapshot(Node)

Создает снимок раскладки с указанным корневым узлом.

Параметр Тип Описание
root Node Корневой сериализованный узел.

DockLayoutSnapshot::from(DockNode)

Создает неизменяемый снимок из живой иерархии узлов DockNode.

Параметр Тип Описание
root DockNode Живой корневой узел докинга для снятия снимка.

Возвращает DockLayoutSnapshot: Неизменяемый снимок иерархии докинга..

DockLayoutSnapshot::from(DockNode, String)

Создает неизменяемый снимок из живой иерархии узлов DockNode с идентификатором активной панели.

Параметр Тип Описание
root DockNode Живой корневой узел докинга для снятия снимка.
activePaneId String Идентификатор активной панели докинга.

Возвращает DockLayoutSnapshot: Неизменяемый снимок иерархии докинга..