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

WindowWidget

Оконный виджет в стиле рабочего стола с поддержкой заголовка, перетаскивания, изменения размера, сворачивания и модальности.

Обзор

WindowWidget — полнофункциональный контейнер плавающего окна в стиле рабочего стола с заголовком, кнопками управления, перетаскиванием, изменением размера, сворачиванием, поддержкой модальности и интеграцией с системой докинга.

Ключевые возможности: - Заголовок с поддержкой обычного и форматированного текста, иконки и кнопок управления (свернуть, закрыть). - Изменение размера по 8 направлениям и углам с настраиваемыми ограничениями минимального размера и стилями углового маркера. - Ограничение перемещения в пределах родительского контейнера (constrainToHost). - Поддержка модального режима с блокирующим затемнением фона. - Бесшовная интеграция с деревьями докинга DockingRoot и панелями DockPane.

Создание и позиционирование оконного виджета

WindowWidget window = new WindowWidget("Settings", settingsForm);
window.position(100, 100).open();

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

  • DockingRoot: Корневой визуальный виджет системы докинга IDE, объединяющий узлы дерева, полосы вкладок, разделители, предпросмотр сброса и отрыв в плавающие окна.
  • OverlayLayer: Полноэкранный слой оверлеев, управляющий модальными подложками, диалогами, всплывающими окнами и проверкой попаданий.
  • WindowManager: Менеджер окон, управляющий z-порядком, стеком фокуса, активными состояниями и расположением окон.

API

WindowWidget()

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

WindowWidget(RichText, Widget)

Создает WindowWidget с заголовком RichText и вложенным виджетом контента.

Параметр Тип Описание
title RichText Компонент заголовка с форматированным текстом RichText.
content Widget Вложенный виджет контента.

WindowWidget(String, Widget)

Создает WindowWidget с простым текстовым заголовком и вложенным виджетом контента.

Параметр Тип Описание
title String Текстовая строка заголовка.
content Widget Вложенный виджет контента.

WindowWidget::acceptsDocking()

Возвращает true, если это окно может принимать перетаскиваемые в него панели.

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

WindowWidget::active()

Возвращает true, если это окно удерживает фокус в своем WindowManager.

Возвращает boolean: True, если окно активно и находится в фокусе..

WindowWidget::arrangeInHost(RectView)

Позиционирует окно внутри границ родительского контейнера.

Параметр Тип Описание
bounds RectView Прямоугольная область границ родительского контейнера.

WindowWidget::captionless()

Возвращает true, если окно отображается без панели заголовка.

Возвращает boolean: True, если у окна отсутствует панель заголовка..

WindowWidget::close()

Закрывает окно.

Возвращает WindowWidget: Текущий экземпляр виджета для цепочки вызовов..

WindowWidget::closeButton()

Возвращает виджет кнопки закрытия в панели заголовка.

Возвращает Button: Экземпляр кнопки в панели заголовка..

WindowWidget::closeButtonVisible()

Возвращает true, если кнопка закрытия окна отображается.

Возвращает boolean: True, если кнопка закрытия отображается..

WindowWidget::closeButtonVisible(boolean)

Устанавливает видимость кнопки закрытия окна.

Параметр Тип Описание
closeButtonVisible boolean Видимость кнопки закрытия в заголовке окна.

Возвращает WindowWidget: Текущий экземпляр виджета для цепочки вызовов..

WindowWidget::closeOnOutsideClick()

Возвращает true, если клик снаружи приводит к закрытию окна.

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

WindowWidget::closeOnOutsideClick(boolean)

Настраивает, закрывается ли окно при клике снаружи.

Параметр Тип Описание
closeOnOutsideClick boolean Закрывать ли виджет автоматически при клике вне его области.

Возвращает WindowWidget: Текущий экземпляр виджета для цепочки вызовов..

WindowWidget::collapseButtonVisible()

Возвращает true, если кнопка сворачивания отображается в заголовке.

Возвращает boolean: True, если кнопка сворачивания отображается..

WindowWidget::collapseButtonVisible(boolean)

Устанавливает видимость кнопки сворачивания в заголовке.

Параметр Тип Описание
visible boolean Флаг целевой видимости.

Возвращает WindowWidget: Текущий экземпляр виджета для цепочки вызовов..

WindowWidget::collapsed()

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

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

WindowWidget::collapsed(boolean)

Устанавливает свернутое состояние окна.

Параметр Тип Описание
collapsed boolean Свернуто ли окно до панели заголовка.

Возвращает WindowWidget: Текущий экземпляр виджета для цепочки вызовов..

WindowWidget::commitDockHost()

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

WindowWidget::constrainToHost()

Возвращает true, если перемещение окна ограничено границами контейнера.

Возвращает boolean: True, если перемещение окна ограничено границами родительского контейнера..

WindowWidget::constrainToHost(boolean)

Настраивает ограничение перемещения окна границами контейнера.

Параметр Тип Описание
constrainToHost boolean Ограничено ли перемещение окна строго рамками родительского контейнера.

Возвращает WindowWidget: Текущий экземпляр виджета для цепочки вызовов..

WindowWidget::content()

Возвращает вложенный виджет контента окна.

Возвращает Widget: Вложенный виджет контента..

WindowWidget::content(Widget)

Устанавливает вложенный виджет контента окна.

Параметр Тип Описание
content Widget Вложенный виджет контента.

Возвращает WindowWidget: Текущий экземпляр виджета для цепочки вызовов..

WindowWidget::dockDocument(String, String, Widget)

Прикрепляет панель документов во встроенный контейнер докинга этого окна.

Параметр Тип Описание
id String Уникальный строковый идентификатор.
title String Текстовая строка заголовка.
content Widget Вложенный виджет контента.

Возвращает WindowWidget: Текущий экземпляр виджета для цепочки вызовов..

WindowWidget::dockKind()

Возвращает тип панели (DOCUMENT или TOOL) при докинге.

Возвращает DockPaneKind: Тип панели докинга, настроенный для этого окна..

WindowWidget::dockKind(DockPaneKind)

Устанавливает тип классификации панели при докинге.

Параметр Тип Описание
dockKind DockPaneKind Тип исходной панели докинга.

Возвращает WindowWidget: Текущий экземпляр виджета для цепочки вызовов..

WindowWidget::dockPane(DockPane)

Прикрепляет панель во встроенный контейнер докинга этого окна.

Параметр Тип Описание
pane DockPane Экземпляр панели докинга.

Возвращает WindowWidget: Текущий экземпляр виджета для цепочки вызовов..

WindowWidget::dockPaneId()

Возвращает строковый идентификатор панели, представляющей это окно при докинге.

Возвращает String: Строковое значение..

WindowWidget::dockPaneId(String)

Устанавливает строковый идентификатор панели при докинге.

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

Возвращает WindowWidget: Текущий экземпляр виджета для цепочки вызовов..

WindowWidget::dockPolicy()

Возвращает политику докинга (FULL, GUEST_ONLY, DISABLED).

Возвращает DockPolicy: Политика докинга, настроенная для этого окна..

WindowWidget::dockPolicy(DockPolicy)

Устанавливает политику интеграции с системой докинга.

Параметр Тип Описание
dockPolicy DockPolicy Политика размещения докинга.

Возвращает WindowWidget: Текущий экземпляр виджета для цепочки вызовов..

WindowWidget::dockRedockLocked()

Возвращает true, если повторное прикрепление окна в докинг заблокировано.

Возвращает boolean: True, если повторное прикрепление в докинг заблокировано..

WindowWidget::dockRedockLocked(boolean)

Блокирует или разблокирует возможность повторного прикрепления окна в докинг.

Параметр Тип Описание
dockRedockLocked boolean Заблокировано ли повторное прикрепление окна обратно в докинг.

Возвращает WindowWidget: Текущий экземпляр виджета для цепочки вызовов..

WindowWidget::dockSourceId()

Возвращает идентификатор исходного узла докинга, от которого было отсоединено окно.

Возвращает String: Идентификатор исходной панели докинга..

WindowWidget::dockSourcePane()

Возвращает исходное представление DockPane при плавающем состоянии.

Возвращает DockPane: Исходная панель докинга, связанная с этим окном..

WindowWidget::dockSourcePane(DockPane)

Устанавливает исходное представление DockPane.

Параметр Тип Описание
pane DockPane Экземпляр панели докинга.

Возвращает WindowWidget: Текущий экземпляр виджета для цепочки вызовов..

WindowWidget::dockTool(String, String, Widget)

Прикрепляет панель инструментов во встроенный контейнер докинга этого окна.

Параметр Тип Описание
id String Уникальный строковый идентификатор.
title String Текстовая строка заголовка.
content Widget Вложенный виджет контента.

Возвращает WindowWidget: Текущий экземпляр виджета для цепочки вызовов..

WindowWidget::dockable()

Возвращает true, если это окно может быть прикреплено во внешний контейнер докинга.

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

WindowWidget::dockable(boolean)

Включает или отключает возможность прикрепления окна в докинг.

Параметр Тип Описание
dockable boolean Возможность прикрепления окна в контейнер докинга.

Возвращает WindowWidget: Текущий экземпляр виджета для цепочки вызовов..

WindowWidget::dockingEnabled()

Возвращает true, если функции докинга включены для этого окна.

Возвращает boolean: True, если функции докинга включены для этого окна..

WindowWidget::dockingEnabled(boolean)

Включает или отключает интеграцию с системой докинга.

Параметр Тип Описание
dockingEnabled boolean Включена ли поддержка докинга для этого окна.

Возвращает WindowWidget: Текущий экземпляр виджета для цепочки вызовов..

WindowWidget::dockingRoot()

Возвращает внутренний DockingRoot, размещенный внутри окна, или null.

Возвращает DockingRoot: Внутренний экземпляр DockingRoot, управляющий панелями докинга окна..

WindowWidget::draggable()

Возвращает true, если перетаскивание окна за заголовок разрешено.

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

WindowWidget::draggable(boolean)

Включает или отключает возможность перетаскивания окна.

Параметр Тип Описание
draggable boolean Возможность перемещения окна перетаскиванием за заголовок.

Возвращает WindowWidget: Текущий экземпляр виджета для цепочки вызовов..

WindowWidget::dragging()

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

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

WindowWidget::ensureDockHost()

Инициализирует и возвращает встроенный экземпляр DockingRoot в качестве контента.

Возвращает DockingRoot: Внутренний экземпляр DockingRoot, управляющий панелями докинга окна..

WindowWidget::fixedModal()

Возвращает true, если позиция модального окна зафиксирована.

Возвращает boolean: True, если модальное окно зафиксировано на месте..

WindowWidget::fixedModal(boolean)

Настраивает, зафиксировано ли положение модального окна без возможности перетаскивания.

Параметр Тип Описание
fixedModal boolean Заблокировано ли перемещение модального диалога.

Возвращает WindowWidget: Текущий экземпляр виджета для цепочки вызовов..

WindowWidget::headerColor()

Возвращает изменяемый цвет фона панели заголовка окна.

Возвращает MutableColor: Экземпляр изменяемого цвета..

WindowWidget::headerHeight()

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

Возвращает float: Высота панели заголовка окна..

WindowWidget::headerHeight(float)

Устанавливает высоту панели заголовка в пикселях интерфейса.

Параметр Тип Описание
headerHeight float Высота панели заголовка окна в пикселях.

Возвращает WindowWidget: Текущий экземпляр виджета для цепочки вызовов..

WindowWidget::headerSeparatorColor()

Возвращает изменяемый цвет линии-разделителя между заголовком и контентом.

Возвращает MutableColor: Экземпляр изменяемого цвета..

WindowWidget::icon()

Возвращает иконку панели заголовка окна.

Возвращает UiIcon: Иконка в заголовке окна..

WindowWidget::icon(UiIcon)

Устанавливает иконку панели заголовка окна.

Параметр Тип Описание
icon UiIcon Иконка, отображаемая в заголовке окна.

Возвращает WindowWidget: Текущий экземпляр виджета для цепочки вызовов..

WindowWidget::lastDragRootX()

Возвращает последнюю экранную координату X курсора во время перетаскивания.

Возвращает float: Координата положения окна..

WindowWidget::lastDragRootY()

Возвращает последнюю экранную координату Y курсора во время перетаскивания.

Возвращает float: Координата положения окна..

WindowWidget::mergeDockingFrom(WindowWidget)

Объединяет панели докинга из другого окна во встроенный хост докинга этого окна.

Параметр Тип Описание
source WindowWidget Значение параметра для source.

Возвращает boolean: True, если состояние докинга было успешно объединено..

WindowWidget::minWindowSize(float, float)

Устанавливает минимальные ограничения ширины и высоты при изменении размера окна.

Параметр Тип Описание
width float Ширина в пикселях.
height float Высота в пикселях.

Возвращает WindowWidget: Текущий экземпляр виджета для цепочки вызовов..

Возвращает true, если окно открыто в модальном режиме, блокируя нижние слои.

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

WindowWidget::modal(boolean)

Настраивает модальный режим для этого окна.

Параметр Тип Описание
modal boolean Работает ли окно как модальный диалог, блокирующий нижние слои.

Возвращает WindowWidget: Текущий экземпляр виджета для цепочки вызовов..

WindowWidget::open()

Открывает окно.

Возвращает WindowWidget: Текущий экземпляр виджета для цепочки вызовов..

WindowWidget::open(boolean)

Устанавливает состояние открытия окна.

Параметр Тип Описание
open boolean Флаг целевого состояния открытия.

Возвращает WindowWidget: Текущий экземпляр виджета для цепочки вызовов..

WindowWidget::openModal()

Открывает это окно в качестве модального диалога.

Возвращает WindowWidget: Текущий экземпляр виджета для цепочки вызовов..

WindowWidget::opened()

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

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

WindowWidget::padding()

Возвращает внутренние отступы содержимого окна.

Возвращает EdgeInsets: Внутренние отступы контента..

WindowWidget::padding(EdgeInsets)

Устанавливает внутренние отступы содержимого окна.

Параметр Тип Описание
padding EdgeInsets Внутренние отступы контента.

Возвращает WindowWidget: Текущий экземпляр виджета для цепочки вызовов..

WindowWidget::position(float, float)

Устанавливает координаты окна в пикселях интерфейса.

Параметр Тип Описание
x float Горизонтальная координата X.
y float Вертикальная координата Y.

Возвращает WindowWidget: Текущий экземпляр виджета для цепочки вызовов..

WindowWidget::releaseAutoDockHost()

Освобождает автоматически созданный хост докинга, если он пуст.

WindowWidget::resizable()

Возвращает true, если изменение размеров окна пользователем разрешено.

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

WindowWidget::resizable(boolean)

Включает или отключает возможность изменения размеров окна.

Параметр Тип Описание
resizable boolean Возможность изменения размеров окна пользователем.

Возвращает WindowWidget: Текущий экземпляр виджета для цепочки вызовов..

WindowWidget::resizeGrip()

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

Возвращает ResizeGripStyle: Визуальный стиль углового маркера изменения размера..

WindowWidget::resizeGrip(ResizeGripStyle)

Устанавливает визуальный стиль углового маркера изменения размера.

Параметр Тип Описание
resizeGrip ResizeGripStyle Визуальный стиль углового маркера изменения размера.

Возвращает WindowWidget: Текущий экземпляр виджета для цепочки вызовов..

WindowWidget::resizeGripVisible()

Возвращает true, если угловой маркер изменения размера отображается.

Возвращает boolean: True, если угловой маркер изменения размера отображается..

WindowWidget::resizeGripVisible(boolean)

Устанавливает, отображается ли угловой маркер изменения размера.

Параметр Тип Описание
visible boolean Флаг целевой видимости.

Возвращает WindowWidget: Текущий экземпляр виджета для цепочки вызовов..

WindowWidget::resizeHandle()

Возвращает идентификатор активного маркера изменения размера (например, BOTTOM_RIGHT).

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

WindowWidget::resizing()

Возвращает true, если в данный момент изменяются размеры окна.

Возвращает boolean: True, если окно в данный момент изменяет свой размер..

WindowWidget::richTitle()

Возвращает компонент заголовка окна RichText.

Возвращает RichText: Компонент заголовка с форматированным текстом RichText..

WindowWidget::richTitle(RichText)

Устанавливает форматированный заголовок окна RichText.

Параметр Тип Описание
title RichText Компонент заголовка с форматированным текстом RichText.

Возвращает WindowWidget: Текущий экземпляр виджета для цепочки вызовов..

WindowWidget::theme()

Возвращает активную тему DockTheme, примененную к обрамлению окна.

Возвращает DockTheme: Значение DockTheme..

WindowWidget::theme(DockTheme)

Применяет пользовательскую тему DockTheme к элементам обрамления и управления окна.

Параметр Тип Описание
theme DockTheme Конфигурация темы докинга.

Возвращает WindowWidget: Текущий экземпляр виджета для цепочки вызовов..

WindowWidget::title()

Возвращает строку заголовка окна.

Возвращает String: Текстовая строка заголовка..

WindowWidget::title(String)

Устанавливает простой текстовый заголовок окна.

Параметр Тип Описание
title String Текстовая строка заголовка.

Возвращает WindowWidget: Текущий экземпляр виджета для цепочки вызовов..

WindowWidget::titleColor()

Возвращает изменяемый цвет текста заголовка окна.

Возвращает MutableColor: Экземпляр изменяемого цвета..

WindowWidget::toggle()

Переключает открытое и закрытое состояние окна.

Возвращает WindowWidget: Текущий экземпляр виджета для цепочки вызовов..

WindowWidget::toggleCollapsed()

Переключает свернутое и развернутое состояние окна.

Возвращает WindowWidget: Текущий экземпляр виджета для цепочки вызовов..

WindowWidget::windowX()

Возвращает горизонтальную координату X окна.

Возвращает float: Координата положения окна..

WindowWidget::windowY()

Возвращает вертикальную координату Y окна.

Возвращает float: Координата положения окна..