# Lattice.UI [![Windows App SDK](img.shields.io)](#) [![Developer](img.shields.io)](git.frigat.duckdns.org) [![License](img.shields.io)](#) **Lattice.UI** — это библиотека нативных элементов управления WinUI 3, реализующая сложную систему докинга и управления окнами в стиле Visual Studio 2026. Она визуализирует абстрактное дерево компоновки из `Lattice.Core` и обеспечивает плавное взаимодействие пользователя с интерфейсом. ## ✨ Основные компоненты - **LatticeDockHost**: Корневой оркестратор, управляющий слоями контента и визуальными подсказками докинга. - **LatticePane**: Универсальный контейнер для панелей и документов с поддержкой заголовков, контекстных кнопок и закрытия. - **LatticeSplitter**: Тонкий интерактивный разделитель для динамического изменения размеров областей. - **DockAnchorOverlay**: Система визуальных подсказок («ромб» докинга) и превью зон сброса (Drop Zones). - **LatticeContextualToolbar**: Адаптивная панель инструментов, автоматически меняющая набор кнопок при смене фокуса между вкладками. ## 🛠 Технологии - **Windows App SDK 1.8+**: Использование последних достижений WinUI 3. - **Fluent UI 2**: Дизайн, полностью соответствующий стандартам Windows 11 (Mica Alt, закругления 4-8px, Segoe Fluent Icons). - **Design Tokens**: Полная темизация через систему ресурсов (`SharedResources.xaml`). ## 📦 Установка и настройка 1. Добавьте ссылку на проект `Lattice.UI` в ваше решение. 2. В файле `App.xaml` вашего приложения подключите стили библиотеки: ```xml ``` ### 🚀 Быстрый старт (XAML) ``` ``` ### 📐 Математика докинга - Библиотека использует алгоритм «Конверта» для расчета зон приземления: - Центр: Объединение в группу вкладок. - Края (L/R/T/B): Разделение текущей области на две части в соответствующей ориентации. ### 🔗 Ссылки - Core Engine: Lattice.Core - Репозиторий: git.frigat.duckdns.org - Разработчик: FrigaT