Files
Lattice/Lattice.Themes.Fluent/Main.xaml
2026-01-18 16:33:35 +03:00

60 lines
3.5 KiB
XML

<ResourceDictionary
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:muxc="using:Microsoft.UI.Xaml.Controls">
<ResourceDictionary.MergedDictionaries>
<!-- Порядок важен! -->
<ResourceDictionary Source="ms-appx:///Lattice.Themes.Fluent/Brushes.xaml" />
<ResourceDictionary Source="ms-appx:///Lattice.Themes.Fluent/Geometry.xaml" />
<ResourceDictionary Source="ms-appx:///Lattice.Themes.Fluent/Typography.xaml" />
<ResourceDictionary Source="ms-appx:///Lattice.Themes.Fluent/Tokens.xaml" />
</ResourceDictionary.MergedDictionaries>
<!-- Fluent-специфичные стили -->
<Style x:Key="LatticeTabViewStyle" TargetType="muxc:TabView">
<Setter Property="Background" Value="{StaticResource Lattice.Brush.Background.Primary}" />
<Setter Property="BorderBrush" Value="{StaticResource Lattice.Brush.Border.Primary}" />
<Setter Property="BorderThickness" Value="{StaticResource Lattice.BorderThickness.Thin}" />
<Setter Property="CornerRadius" Value="{StaticResource Lattice.CornerRadius.Medium}" />
<!-- TabStripBackground заменяем на стиль TabViewItem -->
</Style>
<!-- Стиль для TabViewItem -->
<Style x:Key="LatticeTabViewItemStyle" TargetType="muxc:TabViewItem">
<Setter Property="Background" Value="{ThemeResource TabViewItemHeaderBackground}" />
<Setter Property="BorderBrush" Value="{StaticResource Lattice.Brush.Border.Primary}" />
<Setter Property="BorderThickness" Value="{StaticResource Lattice.BorderThickness.Thin}" />
<Setter Property="CornerRadius" Value="{StaticResource Lattice.CornerRadius.Small}" />
<Setter Property="Margin" Value="2,0,0,0" />
</Style>
<Style x:Key="LatticePanelStyle" TargetType="Border">
<Setter Property="Background" Value="{StaticResource Lattice.Brush.Background.Primary}" />
<Setter Property="BorderBrush" Value="{StaticResource Lattice.Brush.Panel.Border}" />
<Setter Property="BorderThickness" Value="{StaticResource Lattice.BorderThickness.Panel}" />
<Setter Property="CornerRadius" Value="{StaticResource Lattice.CornerRadius.Panel}" />
<Setter Property="Padding" Value="{StaticResource Lattice.Spacing.Panel}" />
<Setter Property="Margin" Value="{StaticResource Lattice.Spacing.Panel}" />
</Style>
<!-- Стиль для Splitter (используем VisualStateManager вместо триггеров) -->
<Style x:Key="LatticeSplitterStyle" TargetType="Rectangle">
<Setter Property="Fill" Value="{StaticResource Lattice.Brush.Splitter.Normal}" />
<Setter Property="Width" Value="{StaticResource Lattice.Size.Splitter.Width}" />
<Setter Property="Height" Value="Auto" />
<Setter Property="VerticalAlignment" Value="Stretch" />
<Setter Property="HorizontalAlignment" Value="Center" />
</Style>
<!-- VisualState для Splitter (нужно применять в контроле, использующем этот Rectangle) -->
<VisualStateGroup x:Key="SplitterVisualStateGroup">
<VisualState x:Name="Normal" />
<VisualState x:Name="PointerOver">
<VisualState.Setters>
<Setter Target="splitterRectangle.Fill"
Value="{StaticResource Lattice.Brush.Splitter.Hover}" />
</VisualState.Setters>
</VisualState>
</VisualStateGroup>
</ResourceDictionary>