# Lattice.UI
[](#)
[](git.frigat.duckdns.org)
[](#)
**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