namespace Lattice.UI.Docking.Abstractions; /// /// Определяет контракт для темы оформления док-системы. /// public interface IDockTheme { /// /// Получает имя темы. /// string Name { get; } /// /// Получает или задает основной цвет фона. /// string BackgroundColor { get; set; } /// /// Получает или задает цвет фона панелей. /// string PanelBackgroundColor { get; set; } /// /// Получает или задает цвет фона вкладок. /// string TabBackgroundColor { get; set; } /// /// Получает или задает цвет активной вкладки. /// string ActiveTabBackgroundColor { get; set; } /// /// Получает или задает цвет границ. /// string BorderColor { get; set; } /// /// Получает или задает цвет разделителей. /// string SplitterColor { get; set; } /// /// Получает или задает цвет текста. /// string TextColor { get; set; } /// /// Получает или задает цвет акцента. /// string AccentColor { get; set; } /// /// Получает или задает радиус скругления углов. /// double CornerRadius { get; set; } /// /// Получает или задает толщину границ. /// double BorderThickness { get; set; } /// /// Получает или задает ширину разделителей. /// double SplitterWidth { get; set; } /// /// Применяет тему к системе. /// void Apply(); /// /// Сбрасывает тему к значениям по умолчанию. /// void Reset(); } /// /// Предоставляет данные для события показа контекстного меню. /// public class ContextMenuShownEventArgs : EventArgs { /// /// Получает элемент, для которого показано меню. /// public IDockControl Target { get; } /// /// Получает координату X меню. /// public double X { get; } /// /// Получает координату Y меню. /// public double Y { get; } /// /// Инициализирует новый экземпляр класса . /// /// Элемент, для которого показано меню. /// Координата X меню. /// Координата Y меню. /// /// Выбрасывается, если равен null. /// public ContextMenuShownEventArgs(IDockControl target, double x, double y) { Target = target ?? throw new ArgumentNullException(nameof(target)); X = x; Y = y; } }