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

Вики UniGUI

Core / Reactive

  • Привязка сигналов: Связывает свойства виджетов с типизированными сигналами и синхронизирует изменения в обе стороны.

Widgets / Containers

  • Border: Render-only декоративная рамка без дочерних виджетов.
  • Box: Стандартный визуальный контейнер: цвет фона, текстура, шейдер, рамка, радиус и дочерние виджеты.

Core / Виджеты / Контейнеры

  • DockSide: Определяет внешнюю сторону (LEFT, RIGHT, TOP, BOTTOM), к которой прикрепляется дочерний виджет в DockPanel.

Widgets / Data

  • VirtualTableView: Высокопроизводительная виртуализированная таблица с изменением размера колонок, перетаскиванием, сортировкой и редактированием ячеек.

Core / Виджеты / Данные

  • VirtualTableColumn: Конфигурация столбца для VirtualTableView с заголовком, шириной, выравниванием и режимом переполнения текста.

Widgets / Display

  • TextWidget: Базовый абстрактный виджет отображения текста, поддерживающий строки, RichText, шрифты, градиенты и кисти.
  • Label: Текстовая метка, связанная с интерактивным элементом ввода или управления.
  • Text: Легковесный виджет отображения статических или динамических строк и RichText.
  • TextBlock: Виджет отображения многострочных абзацев текста с поддержкой переноса, межстрочного интервала и выравнивания.
  • RichTextView: Виджет форматированного RichText текста со стилизованными фрагментами, иконками, цветами и ссылками.
  • Separator: Горизонтальный или вертикальный разделитель для визуального зонирования интерфейса.
  • Shape: Виджет векторных геометрических фигур: прямоугольников, скруглений, кругов, овалов и контуров.
  • Path: Виджет векторного пути для произвольных 2D-кривых Безье, ломаных линий и контуров.
  • TextureWidget: Базовый виджет для отрисовки текстур, UV-координат, 9-slice рамок и дескрипторов изображений.
  • ImageView: Виджет отображения текстур, представляющий статические картинки, иконки или спрайты.
  • CanvasWidget: Процедурный холст для рисования произвольной графики через CanvasDrawCallback.
  • Sparkline: Компактный микрографик трендов и телеметрии с градиентной заливкой и точками при наведении.
  • Chart: Виджет визуализации данных с поддержкой столбчатых и линейных графиков, координатных осей и подсказок.

Core / Виджеты / Отображение

  • CanvasDrawCallback: Функциональный интерфейс для пользовательской 2D-отрисовки на CanvasWidget.

Core / Виджеты / Обратная связь

  • OverlayHostAware: Интерфейс для виджетов, динамически рассчитывающих свое положение и компоновку в границах оверлея.
  • WindowManager: Менеджер окон, управляющий z-порядком, стеком фокуса, активными состояниями и расположением окон.

Widgets / Interaction

  • Button: Стандартная интерактивная кнопка с композируемой поверхностью, иконкой, текстом и переходами состояний.
  • HoldButton: Кнопка подтверждения, требующая удержания нажатой в течение заданного времени.
  • ToolButton: Компактная квадратная кнопка панели инструментов с иконкой, подсказкой и стилем тулбара.
  • IconButton: Кнопка с графической иконкой без текстовой подписи.
  • ToggleButton: Двухпозиционная кнопка, сохраняющая состояние выбора при нажатии.
  • ToggleToolButton: Двухпозиционная кнопка панели инструментов, объединяющая стиль ToolButton и функционал ToggleButton.
  • ToggleSwitch: Скользящий переключатель с плавной анимацией бегунка и опциональной подписью.
  • Checkbox: Квадратный флажок с поддержкой двухпозиционного и трёхпозиционного (неопределённого) режимов.
  • RadioButton: Круглый переключатель для взаимоисключающего выбора внутри RadioGroup.
  • TextInput: Базовое однострочное поле ввода текста с выделением, перемещением курсора, буфером обмена и фокусной рамкой.
  • TextField: Стандартное однострочное редактируемое текстовое поле.
  • NumberField: Поле ввода чисел с поддержкой ограничений диапазона, шага изменения и настройки перетаскиванием.
  • PasswordField: Защищённое поле ввода пароля, маскирующее символы точками или указанным глифом.
  • SearchField: Поле поиска с иконкой лупы, кнопкой очистки крестиком и дебаунсом отправки запросов.
  • TimeSpanField: Поле ввода временных интервалов, форматирующее значения вида 1h 30m или 45s в java.time.Duration.
  • TextArea: Многострочный текстовый редактор с переносом строк, навигацией курсора, выделением и полосой прокрутки.
  • Slider: Элемент управления диапазоном значений с перетаскиваемым бегунком и шагом изменения.
  • ScrollBar: Интерактивная полоса прокрутки для прокрутки содержимого по вертикали или горизонтали.
  • DropDownBox: Раскрывающийся контейнер с кнопкой-заголовком и выпадающим списком в режиме popup или inline.
  • ComboBox: Элемент выбора значения из выпадающего списка с возможностью прокрутки опций.
  • ColorPicker: Интерактивный компонент выбора цвета с ползунками каналов RGBA, вводом hex и всплывающей палитрой.
  • DatePicker: Виджет выбора даты с текстовым полем ввода ISO-формата и интерактивным всплывающим календарем.
  • TreeListPicker: Типизированный выпадающий список для выбора объектов предметной области с провайдером названий.
  • SearchableGridPickerWidget: Абстрактный диалоговый компонент выбора элементов в виртуализированной сетке с поисковой фильтрацией, предпросмотром и подсказками.
  • CodeEditor: Продвинутый редактор кода с подсветкой синтаксиса, диагностикой ошибок, нумерацией строк и автодополнением.
  • XmlCodeEditor: Специализированный редактор XML/XAML разметки интерфейсов с валидацией схемы, форматированием и автодополнением тегов.
  • AdminConsole: Интерактивная консоль разработчика и администратора с выполнением команд, историей и выводом логов.

Core / Виджеты / Взаимодействие

  • RadioGroup: Контроллер, управляющий взаимоисключающим выбором и состоянием группы радиокнопок.
  • CodeLanguagePreset: Перечисление встроенных пресетов языков для подсветки синтаксиса и валидации.
  • CodeLanguagePresets: Фабричный реестр, поставляющий токенизаторы и валидаторы для языковых пресетов.
  • CodeTokenizer: Функциональный интерфейс для разбиения исходного кода на токены с цветовыми стилями.
  • CodeToken: Неизменяемый токен диапазона символов, связывающий индексы с визуальным стилем TokenStyle.
  • TokenStyle: Дескриптор визуального стиля для синтаксических токенов, включая цвет текста.
  • CodeValidator: Функциональный интерфейс статического анализа текста, формирующий диагностические сообщения об ошибках.
  • CodeDiagnostic: Запись диагностики, представляющая ошибку, предупреждение или подсказку в заданном диапазоне кода.
  • CompletionProvider: Интерфейс формирования предложений автодополнения на основе контекста курсора.
  • CompletionItem: Элемент предложения автодополнения со стилизованной меткой, вставляемым текстом и диапазоном замены.
  • CompletionContext: Контекстная запись, передаваемая провайдерам автодополнения, содержащая текст редактора и позицию курсора.
  • CodeTokenizationContext: Контекстная запись, передаваемая токенизаторам, содержащая исходный текст и идентификатор языка.
  • CodeValidationContext: Контекстная запись, передаваемая валидаторам кода, содержащая текст документа и идентификатор языка.
  • AdminCommandRegistry: Центральный реестр команд консоли с поддержкой автодополнения аргументов, псевдонимов и обработчиков.

Core / Виджеты / Карта

  • MapMarkerHandle: Дескриптор для удобной настройки положения, экранного размера, масштабирования от зума, опорной точки (pivot) и видимости маркера на MapCanvas.
  • MapProjection: Движок линейной проекции для преобразования между внешними мировыми координатами и внутренними координатами карты MapCanvas.

Core / Виджеты / Навигация

  • BreadcrumbItem: Дескриптор навигационного элемента, представляющий шаг или крошку в цепочке навигации.
  • Menu: Всплывающее или выпадающее меню, содержащее вертикальный список командных пунктов меню и разделителей.
  • MenuItem: Выбираемый элемент меню, поддерживающий обычные действия, флажки, команды, горячие клавиши или каскадные подменю.
  • TreeViewNode: Узел иерархической структуры TreeView с текстом, иконкой, состоянием раскрытия и дочерними узлами.

Core / Debugging

  • DebugOverlaySettings: Настройки положения, масштаба и выборки встроенного оверлея производительности.

Core / Text

  • DefaultFontRegistry: Стандартный реестр шрифтов, загружающий TrueType и Type1 шрифты из файлов, потоков или системных шрифтов ОС без зависимостей от Minecraft.

Core / Виджеты / Drag-and-Drop

  • DragController: Контроллер жеста перетаскивания, подключаемый к любому виджету через композицию для инициации drag-and-drop с ghost-предпросмотром, порогом смещения и автопрокруткой.
  • DragDropEvent: Маршрутизируемое событие, доставляемое в целевую зону сброса при отпускании указателя с принятым payload.
  • DragGhost: Отрисовщик визуального ghost-представления перетаскиваемых элементов, отображаемый в слое оверлея под курсором.
  • DragLeaveEvent: Маршрутизируемое событие, уведомляющее о выходе указателя перетаскивания из зоны сброса или прерывании жеста.
  • DragOutcome: Описывает конечный результат жеста drag-and-drop в UniGUI: успешный сброс, сброс без цели или отмена.
  • DragOverEvent: Маршрутизируемое событие, опрашивающее зоны сброса под указателем в процессе перемещения перетаскивания и тиков анимации.
  • DragPayload: Неизменяемый контейнер передаваемых данных (payload), переносящий идентификатор, тип, текст предпросмотра и пользовательский объект между источником и целью сброса.
  • DragRoutedEvent: Абстрактный базовый класс для маршрутизируемых событий drag-and-drop, передающих активную сессию DragSession по иерархии виджетов.
  • DragSession: Состояние и контроллер активного жеста перетаскивания, управляющий координатами указателя, активной целью сброса, позиционированием ghost, индикаторами вставки и автопрокруткой.
  • DropController: Контроллер цели сброса, подключаемый к любому виджету через композицию для фильтрации payload и обработки событий drag enter, over, leave и drop.
  • ReorderController: Контроллер переупорядочивания при перетаскивании, подключаемый к контейнерам (VBox, HBox, PanelWidget) с поддержкой линий вставки и автоматического изменения порядка элементов.

Widgets / Containers

  • DockPanel: Контейнер разметки, прикрепляющий дочерние виджеты к внешним границам (слева, справа, сверху, снизу).

Core / Виджеты / Докинг

  • DockArea: Целевая зона назначения для операций докинга: краевые разделения (LEFT, RIGHT, TOP, BOTTOM), группировка во вкладки (CENTER, TAB) или плавающие окна (FLOAT).
  • DockColor: Семантические роли цветов темы DockTheme для стилизации вкладок, разделителей, обрамления плавающих окон и зон предпросмотра сброса.
  • DockDragController: Обрабатывает жесты drag-and-drop для вкладок докинга внутри DockingRoot, вычисляя предпросмотр сброса, отрыв в окно и намерения докинга.
  • DockDropIntent: Разрешенное намерение сброса докинга, содержащее целевую область, границы предпросмотра и идентификаторы исходной и целевой панелей.
  • DockingManager: Невизуальный контроллер раскладки, управляющий иерархическим деревом докинга, добавлением панелей, разделениями, порядком вкладок и снимками раскладки.
  • DockLayoutSnapshot: Неизменяемый снимок, представляющий рекурсивное дерево раскладки докинга и выбранные панели для сериализации и сохранения состояния.
  • DockLayoutSnapshotCodec: Компактный строковый сериализатор и десериализатор формата DLS1 для сохранения раскладок докинга между перезапусками приложения.
  • DockNode: Иерархический узел дерева докинга: листовой узел (LEAF) со вкладками DockPane или узел разделения (SPLIT), делящий детей горизонтально или вертикально.
  • DockPane: Дескриптор отдельной панели докинга, содержащей виджет содержимого, заголовок вкладки, иконку, признак несохраненных правок и стражи закрытия.
  • DockPaneKind: Классификация панели докинга: DOCUMENT (основное содержимое рабочей области) или TOOL (вспомогательное инструментальное окно).
  • DockPolicy: Политика интеграции докинга для окон: FULL (полноценный докинг и прием сброса), GUEST_ONLY (может стыковаться, но не принимает сброс) или DISABLED.
  • DockSplitOrientation: Ориентация разделения между соседними узлами докинга: HORIZONTAL (бок о бок) или VERTICAL (друг над другом).
  • DockTheme: Тема оформления системы докинга, настраивающая палитру цветов (DockColor), геометрию вкладок, разделители, тени и ручки изменения размера окон.
  • ResizeGripStyle: Интерфейс стилизации и отрисовки угловых ручек изменения размера окна, включая встроенные стили TRIANGLE и LINES.

Виджеты / Докинг

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

Core / Render

  • DrawList: Буфер команд рисования одного кадра, записывающий аппаратно-независимые примитивы, переиспользующий команды из пула и предоставляющий многослойную запись (channels).
  • DrawScope: Безопасный draw-list фасад для рендереров виджетов: транслирует высокоуровневые вызовы отрисовки в backend-нейтральные команды, автоматически корректирует pivot трансформаций и предоставляет garbage-free примитивы.

Виджеты / Эффекты

  • PostProcessingLayer: Обертка виджета, применяющая шейдерные эффекты постобработки и масштаб рендеринга к дочернему контенту.

Core / Events

  • EventEmitter: Контракт для объектов, способных регистрировать слушателей и рассылать типизированные события.
  • EventScope: Контейнер управления жизненным циклом подписок на события.
  • FastEventBus: Сверхбыстрый lock-free event bus без рефлексии, хэш-мап и аллокаций памяти при диспетчеризации.

Виджеты / Обратная связь

  • ContextMenu: Всплывающее контекстное меню, управляющее иерархическими элементами, обработчиками действий и автозакрытием.
  • LoadingIndicator: Виджет индикатора загрузки с поддержкой режимов кольца, полосы, пульсации и точек.
  • NotificationView: Виджет карточки уведомления с поддержкой уровней важности, заголовков, текста, кнопок действий и шкалы таймера.
  • OverlayLayer: Полноэкранный слой оверлеев, управляющий модальными подложками, диалогами, всплывающими окнами и проверкой попаданий.
  • Popup: Всплывающий виджет, позиционируемый относительно целевых элементов интерфейса или экранных координат.
  • ProgressBar: Линейный индикатор прогресса, отображающий детерминированное или неопределенное состояние выполнения.
  • Spinner: Вращающийся индикатор прогресса (спиннер) для отображения фоновых операций.
  • Toast: Краткое всплывающее уведомление (тост) со значками статуса, форматированным текстом и автоматическим скрытием.
  • Tooltip: Всплывающая подсказка (тултип), отображающая вспомогательный текст, форматированный контент и таймеры задержки.
  • WindowWidget: Оконный виджет в стиле рабочего стола с поддержкой заголовка, перетаскивания, изменения размера, сворачивания и модальности.

Widgets / Containers

  • FlexBox: Flex-контейнер, настраиваемый напрямую через свойства LayoutStyle, аналог CSS display: flex.

Core / Виджеты / Графы

  • HeaderModule: Стандартная полоса заголовка модульного узла с иконкой, названием и управлением сворачиванием.
  • NodeGraphAlign: Режимы выравнивания выбранных элементов графа по общим границам.
  • NodeGraphClipboard: Неизменяемый буфер выбранных зарегистрированных типов узлов и внутренних соединений для копирования.
  • NodeGraphConnection: Соединение между двумя портами узлов в NodeGraph.
  • NodeGraphConnectionPolicy: Интерфейс политики валидации и правил формирования соединений между портами.
  • NodeGraphConnectionSnapshot: Сериализуемый снимок соединения между двумя портами узлов.
  • NodeGraphConnectionValidation: Результат валидации предлагаемого соединения между портами узлов.
  • NodeGraphHistory: История undo/redo изменений графа, сгруппированных в именованные транзакции.
  • NodeGraphItem: Элемент-узел на холсте NodeGraph, содержащий виджет содержимого и порты подключения.
  • NodeGraphItemSnapshot: Сериализуемый снимок позиции, размеров, возможностей и портов элемента-узла.
  • NodeGraphPort: Порт подключения на элементе NodeGraphItem для связывания линиями с другими узлами.
  • NodeGraphPortKind: Направление соединения для порта узла: INPUT, OUTPUT или BIDIRECTIONAL.
  • NodeGraphPortRef: Ссылка на конкретный порт узла в графе узлов.
  • NodeGraphPortSide: Сторона визуального размещения порта узла: LEFT, RIGHT, TOP или BOTTOM.
  • NodeGraphPortSnapshot: Сериализуемый снимок состояния, геометрического смещения и настроек порта узла.
  • NodeGraphRegion: Перемещаемая и изменяемая область-комментарий для группировки узлов на холсте графа.
  • NodeGraphRegionSnapshot: Сериализуемое состояние области: заголовок, комментарий, цвет, границы и флаги взаимодействия.
  • NodeGraphSelectionMode: Режимы выделения элементов и соединений в графе: NONE, SINGLE или MULTIPLE.
  • NodeGraphSnapshot: Полный сериализуемый снимок состояния графа узлов, области просмотра, элементов и соединений.
  • NodeGraphViewport: Состояние области просмотра холста графа узлов: позиция панорамирования и масштаб.
  • NodeGraphWidgetResolver: Фабричный колбэк для восстановления виджетов содержимого узлов при десериализации снимка графа.
  • NodeLayoutContext: Сервисы раскладки модуля для измерения и размещения виджетов, а также привязки портов.
  • NodeModule: Композиционный вертикальный модуль раскладки, владеющий виджетами и портами внутри узла.
  • NodePaintContext: Контекст рисования и состояния узла для отрисовки фона пользовательского модуля.
  • NodePaletteModel: Модель без виджетов для просмотра категорий, ранжированного поиска, выбора и прокрутки палитры узлов.
  • NodeStyle: Настройки цветов и геометрии отдельного модульного узла графа.
  • NodeType: Повторно используемое описание вида узла: идентификатор, метаданные палитры, эскизы портов и фабрика.
  • NodeTypeRegistry: Каталог типов узлов для палитры, поиска и восстановления модульных элементов графа.
  • PortRowModule: Стандартная строка модульного узла для портов, подписей, потоковых пинов и inline-редакторов.
  • PortShape: Формы маркеров, различающие типы портов на холсте графа.
  • PortType: Неизменяемое описание ID, имени, цвета, формы маркера и потокового режима типа порта графа.
  • PortTypeRegistry: Каталог типов портов с цветами, формами и направленными правилами совместимости типов данных.
  • RerouteModule: Компактный сквозной модуль-узел для изгиба и ветвления проводов графа.
  • SeparatorModule: Небольшой модуль горизонтального разделителя между группами строк узла.
  • ValueEditor: Контракт типизированного редактора значения по умолчанию входа узла: UI, доступ к значению и сериализация.
  • ValueEditors: Фабрика готовых редакторов значений для распространённых типов входов узла.
  • WidgetModule: Модуль узла, встраивающий произвольный виджет отдельной строкой на всю ширину.

Core / Виджеты / Графы / Исполнение

  • GraphExecutionException: Исключение времени выполнения, возникающее, когда граф нельзя безопасно завершить.
  • GraphExecutor: Запускает модель графа без виджетов, переходя по потоковым связям и вычисляя входы по требованию.
  • GraphIssue: Диагностика проверки графа с уровнем важности, затронутым узлом и необязательным портом.
  • GraphModel: Неизменяемый снимок графа без виджетов: узлы, порты, значения входов и связи для проверки или исполнения.
  • GraphResult: Результат исполнения графа: число шагов и последние выходные значения исполняемых узлов.
  • GraphValidator: Статические проверки обязательных входов, циклов чистых data-узлов и недостижимых исполняемых узлов.
  • NodeBehavior: Функциональный контракт вычисления значений узла или выполнения шага потока.
  • NodeContext: Контекст исполнения без UI для чтения входов узла, публикации выходов и управления потоком.

Виджеты / Графы

  • GraphView: Виджет статической или интерактивной диаграммы графа с узлами, ребрами, подписями и всплывающими подсказками.
  • NodeBuilder: Fluent-сборщик модульного элемента-узла из заголовка, портов, редакторов, виджетов и пользовательских модулей.
  • NodeGraph: Интерактивный холст 2D-графа узлов с перемещением блоков, соединениями портов, панорамированием, масштабированием и рамкой выделения.
  • NodePalette: Поисковая overlay-палитра типов узлов для создания узлов в редакторе графа.
  • RegionEditor: Всплывающий overlay-редактор заголовка или многострочного комментария области графа.

Widgets / Containers

  • GridBox: Сетка с равномерным делением на колонки или настраиваемыми шаблонами треков.
  • HBox: Горизонтальный линейный контейнер, размещающий детей слева направо с единым шагом отступа.

Core / Layout

  • LayoutStyle: Правила, по которым родитель измеряет и размещает виджет: размер, отступы, flex, grid, позиция и переполнение.

Widgets / Containers

  • LinearBox: Одномерный flex-контейнер, последовательно размещающий детей вдоль главной оси без переноса строк.

Виджеты / Карта

  • MapCanvas: Интерактивный виджет 2D-карты, расширяющий WorldCanvas поддержкой размеров карты, слоями текстур и сетки, проекцией координат и маркерами.
  • MapMarker: Базовая оболочка маркера для MapCanvas с поддержкой произвольного контента, текстовых меток, состояний выбора и подсветки.

Виджеты / Навигация

  • Accordion: Вертикальный контейнер аккордеона, управляющий стопкой раскрывающихся панелей ExpandablePanel с поддержкой режима одиночного открытия.
  • Breadcrumb: Интерактивная цепочка навигации («хлебные крошки»), отображающая иерархические элементы с настраиваемыми разделителями и обработкой выбора.
  • Carousel: Контейнер карусели со страницами, поддерживающий горизонтальное или вертикальное перелистывание, анимацию переходов, кнопки навигации и индикаторы.
  • ExpandablePanel: Сворачиваемая панель с заголовком, шевроном переключения и плавной анимацией высоты раскрытия.
  • MenuBar: Горизонтальная строка меню верхнего уровня, содержащая выпадающие меню с привязкой к командам и координацией всплывающих списков.
  • NavigationView: Боковая навигация со сворачиваемыми группами пунктов и акцентным выделением выбранного пункта на всю ширину.
  • PageView: Контейнер страниц с сохранением состояния, отображающий ровно одну страницу за раз.
  • TabControl: Вкладочный навигационный контейнер с прокручиваемой строкой заголовков и переключаемой областью содержимого.
  • ToolBar: Компактная панель инструментов с кнопками команд, разделителями и интеграцией с CommandManager.
  • TreeList: Специализированный древовидный список TreeView для иерархической навигации по путям и файловой структуре.
  • TreeView: Иерархический древовидный контейнер со сворачиваемыми узлами, кастомными иконками, инлайн-редактированием и выбором.

Core / Textures

  • NineSlice: Определение масштабируемой 9-patch текстуры: 4 неизменяемых угла, 4 растягиваемых края и 1 центральная область.

Core / Render

  • Paint: Дескриптор стиля команд отрисовки, настраивающий цвет, толщину обводки, режимы заливки/контура, Porter-Duff смешивание и пунктирные линии.

Widgets / Containers

  • PanelRowWidget: Двусторонняя строка, выравнивающая виджеты по левому и правому краям.
  • PanelWidget: Базовый контейнер для виджетов с несколькими детьми: управление иерархией, отложенные мутации и порядок отрисовки.

Examples / Demos

  • Ретро-терминал: Полноценный терминал в стиле CRT, собранный из виджетов UniGUI, собственного AdminConsole и цепочки post-processing эффектов.

Core / Render

  • RibbonMesh: Генератор процедурной текстурированной ленты вдоль полилиний для отрисовки дорог, кабелей, трасс, трубопроводов и связей графов.
  • RibbonOptions: Неизменяемый объект настроек для генерации полигональной ленты, угловых стыков, круглых заглушек и UV-трансформаций текстуры.

Core / Text

  • RichText: Неизменяемая модель форматированного текста, объединяющая стилизованные текстовые фрагменты, шрифты, градиенты и inline-элементы.

Widgets / Containers

  • ScrollView: Контейнер области прокрутки (viewport), вмещающий один дочерний виджет и управляющий горизонтальным и вертикальным скроллингом.
  • SettingRow: Специализированная строка настроек с текстовой подписью слева и интерактивным элементом управления справа.

Core / Shaders

  • ShaderDrawOptions: Параметры команд отрисовки шейдеров: управление блендингом, стандартными uniforms и смещением вершин.
  • ShaderHandle: Идентификатор и контейнер UI-шейдеров, ссылающийся на путь к ресурсу или содержащий встроенный GLSL-код.
  • ShaderUniforms: Изменяемая коллекция именованных параметров шейдера (float, int, векторы, цвета), передаваемых в GPU-программы.

Widgets / Containers

  • SplitPanel: Двухсекционный контейнер, разделённый интерактивным перемещаемым разделителем.
  • StackPanel: Контейнер наложения (overlay), размещающий всех детей в одном общем слоте.

Core / Styling

  • Style: Неизменяемые типизированные значения стиля с override-ами состояний и явным fallback.
  • MutableStyle: Fluent-сборщик изменяемого стиля с типизированными свойствами и override-ами состояний.
  • StyleDefinition: Неизменяемое именованное правило с селекторами, renderer-ом, свойствами и анимациями событий.
  • StylePack: Редактируемая тема с переиспользуемыми правилами, привязками виджетов, токенами и анимациями.
  • ThemeTokens: Неизменяемый снимок design-токенов палитры, форм, типографики и отступов.

Widgets / Containers

  • SurfaceWidget: Контейнер с композируемой поверхностью: фон, многослойные текстуры, шейдеры, рамка и радиус скругления.

Core / Text

  • TextEngine: Базовый движок компоновки текста, переноса строк, расчёта метрик и отрисовки встроенного inline-контента.
  • TextOverflowMode: Перечисление режимов обработки текста, превышающего доступные границы виджета (обрезка, многоточие, сжатие, бегущая строка).

Core / Textures

  • TextureGroup: Упорядоченная композитная коллекция слоёв TextureLayer, отрисовываемых последовательно в общих границах.
  • TextureHandle: Backend-нейтральный интерфейс текстурного ресурса, предоставляющий размеры, параметры сэмплирования и доступ к нативному объекту.
  • TextureRegion: Неизменяемая прямоугольная UV-область внутри родительской текстуры для отрисовки спрайтов из атласов.
  • AnimatedTexture: Изменяемая текстура sprite sheet, кадры которой сменяются по игровым тикам из равномерной сетки ячеек.
  • TextureOptions: Неизменяемая конфигурация сэмплирования текстур: min/mag фильтрация, wrap-режимы UV, mipmaps и premultiplied alpha.

Core / Debugging

  • UiDebugSnapshot: Неизменяемый снимок времени кадра, объёма рендера и работы кэша текстур.

Core / PostEffects

  • UiLayerBounds: Размеры, положение и масштаб разрешения для закадрового буфера слоя пост-эффектов.
  • UiPostEffectBlendMode: Режим наложения и смешивания для шейдерного прохода пост-эффекта.
  • UiPostEffectChain: Неизменяемая ссылка на конвейер пост-эффектов для UI-слоя.
  • UiPostEffectDefinition: Неизменяемое описание пост-эффекта с упорядоченными шейдерными проходами.
  • UiPostEffectPass: Конфигурация одного шейдерного прохода внутри конвейера пост-эффектов.
  • UiPostEffectRegistry: Реестр для регистрации и поиска именованных дефиниций пост-эффектов.
  • UiPostEffectRenderer: Диспетчер отрисовки с автоматическим откатом для слоев с пост-эффектами.
  • UiPostEffectUniforms: Контейнер параметров uniforms пост-эффекта со статическими и динамическими поставщиками значений.
  • UiPostEffects: Каталог стандартных пост-эффектов и встроенных шейдеров для слоев UniGUI.

Core / Screens

  • UiRenderPolicy: Политика частоты обновления и рендера retained UI, управляющая пересборкой кадра по таймингу или сигналам инвалидации.
  • UniHudRender: Точка входа для регистрации и управления слоями внутриигрового HUD.
  • UniRenderLayer: Платформо-независимая конфигурация слоя оверлея или HUD.
  • UniRenderLayerRegistration: Дескриптор зарегистрированного слоя отрисовки с возможностью динамического управления.
  • UniRenderTarget: Целевой хост-контекст отрисовки для слоя UniGUI.
  • UniScreen: Платформо-независимое описание полноэкранного GUI-окна UniGUI.
  • UniScreenOverlayRender: Точка входа для оверлеев, отрисовываемых поверх открытых игровых экранов.

Widgets / Containers

  • VBox: Вертикальный линейный контейнер, размещающий детей сверху вниз с единым шагом отступа.
  • View: Контейнер в виде карточки, объединяющий визуальное оформление Box со встроенным заголовком и вертикальной компоновкой контента.

Widgets / Data

  • VirtualListView: Виртуализированное представление больших наборов элементов в виде адаптивной сетки или списка.

Core / Виджеты

  • WidgetBase: Общая основа виджетов для layout, StylePack, состояния, рендера, событий и анимаций.

Widgets

  • Widget: Базовый контракт любого элемента UI-дерева: жизненный цикл, компоновка, отрисовка, ввод и стили.

Core / Виджеты / Мир

  • AnchorLayer: Слой управления экранными UI-виджетами, привязанными к мировым координатам внутри WorldCanvas.
  • AnchorWidget: Пространственный якорь, привязывающий экранный UI-виджет к мировым координатам с масштабированием от зума, настройкой pivot и отсечением вне экрана.
  • RibbonLayer: Слой WorldCanvas для отрисовки текстурированных или сплошных лент, маршрутов и полилиний в мировых координатах.
  • WorldLayer: Функциональный контракт для фоновых или декоративных слоев отрисовки внутри WorldCanvas.

Виджеты / Мир

  • WorldCanvas: Холст бесконечного 2D/3D пространства с поддержкой панорамирования, зума камеры, преобразования координат, фоновых слоев и привязанных экранных виджетов.

Widgets / Containers

  • WrapPanel: Потоковый flow-контейнер с переносом детей на новую строку или колонку при нехватке места.