emby-toolbox/EmbyToolbox/Themes/UiComponentStyles.xaml
Emby Toolbox 6264b487fe Initial commit: Emby Toolbox (conversion scroll fix, bulk Del for tracks).
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-05-12 21:33:47 +05:00

943 lines
49 KiB
XML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:controls="clr-namespace:System.Windows.Controls;assembly=PresentationFramework">
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="UiLayout.xaml" />
</ResourceDictionary.MergedDictionaries>
<Style TargetType="Window">
<Setter Property="FontFamily" Value="Segoe UI" />
<Setter Property="FontSize" Value="12" />
<Setter Property="Foreground" Value="{DynamicResource Ui.Brush.Text}" />
<Setter Property="Background" Value="{DynamicResource Ui.Brush.Window}" />
<Setter Property="UseLayoutRounding" Value="True" />
<Setter Property="TextOptions.TextFormattingMode" Value="Display" />
</Style>
<Style x:Key="UiTextH1" TargetType="TextBlock">
<Setter Property="FontSize" Value="20" />
<Setter Property="FontWeight" Value="SemiBold" />
<Setter Property="Foreground" Value="{DynamicResource Ui.Brush.Text}" />
<Setter Property="LineHeight" Value="26" />
</Style>
<Style x:Key="UiTextH2" TargetType="TextBlock">
<Setter Property="FontSize" Value="14" />
<Setter Property="FontWeight" Value="SemiBold" />
<Setter Property="Foreground" Value="{DynamicResource Ui.Brush.Text}" />
<Setter Property="LineHeight" Value="20" />
</Style>
<Style x:Key="UiTextBody" TargetType="TextBlock">
<Setter Property="FontSize" Value="12" />
<Setter Property="LineHeight" Value="18" />
<Setter Property="Foreground" Value="{DynamicResource Ui.Brush.Text}" />
</Style>
<Style x:Key="UiTextCaption" TargetType="TextBlock">
<Setter Property="FontSize" Value="11" />
<Setter Property="LineHeight" Value="15" />
<Setter Property="Foreground" Value="{DynamicResource Ui.Brush.Caption}" />
</Style>
<Style x:Key="UiTextMuted" TargetType="TextBlock">
<Setter Property="FontSize" Value="12" />
<Setter Property="LineHeight" Value="18" />
<Setter Property="Foreground" Value="{DynamicResource Ui.Brush.Muted}" />
</Style>
<Style x:Key="UiTextError" TargetType="TextBlock">
<Setter Property="FontSize" Value="12" />
<Setter Property="LineHeight" Value="18" />
<Setter Property="Foreground" Value="{DynamicResource Ui.Brush.ErrorText}" />
</Style>
<Style x:Key="UiTextSuccess" TargetType="TextBlock">
<Setter Property="FontSize" Value="12" />
<Setter Property="LineHeight" Value="18" />
<Setter Property="Foreground" Value="{DynamicResource Ui.Brush.Success}" />
</Style>
<!-- Базовый цвет для "обычных" TextBlock/Label без явного стиля -->
<Style TargetType="TextBlock">
<Setter Property="Foreground" Value="{DynamicResource Ui.Brush.Text}" />
</Style>
<Style TargetType="Label">
<Setter Property="Foreground" Value="{DynamicResource Ui.Brush.Text}" />
</Style>
<Style x:Key="UiSectionCard" TargetType="Border">
<Setter Property="Background" Value="{DynamicResource Ui.Brush.SurfaceSubtle}" />
<Setter Property="BorderBrush" Value="{DynamicResource Ui.Brush.Border}" />
<Setter Property="BorderThickness" Value="1" />
<Setter Property="CornerRadius" Value="0" />
<Setter Property="Padding" Value="14,12" />
</Style>
<!-- Primary: основное действие -->
<Style x:Key="UiButtonPrimary" TargetType="Button">
<Style.Resources>
<Style TargetType="AccessText">
<Setter Property="Foreground" Value="White" />
</Style>
<Style TargetType="TextBlock">
<Setter Property="Foreground" Value="White" />
</Style>
</Style.Resources>
<Setter Property="FocusVisualStyle" Value="{x:Null}" />
<Setter Property="Foreground" Value="White" />
<Setter Property="TextElement.Foreground" Value="White" />
<Setter Property="MinHeight" Value="{StaticResource Ui.BaseControlHeight}" />
<Setter Property="Padding" Value="10,2" />
<Setter Property="VerticalContentAlignment" Value="Center" />
<Setter Property="FontSize" Value="12" />
<Setter Property="SnapsToDevicePixels" Value="True" />
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="Button">
<Border x:Name="FocusRing" Background="Transparent" BorderThickness="2" BorderBrush="Transparent"
CornerRadius="6" SnapsToDevicePixels="True">
<Border x:Name="Bd" CornerRadius="5" Margin="0" SnapsToDevicePixels="True" BorderThickness="0"
Background="{DynamicResource Ui.Brush.Btn.Primary}">
<ContentPresenter HorizontalAlignment="Center" VerticalAlignment="Center"
Margin="{TemplateBinding Padding}"
RecognizesAccessKey="True"
TextElement.Foreground="White" />
</Border>
</Border>
<ControlTemplate.Triggers>
<MultiTrigger>
<MultiTrigger.Conditions>
<Condition Property="IsMouseOver" Value="True" />
<Condition Property="IsEnabled" Value="True" />
</MultiTrigger.Conditions>
<Setter TargetName="Bd" Property="Background" Value="{DynamicResource Ui.Brush.Btn.PrimaryHover}" />
</MultiTrigger>
<Trigger Property="IsPressed" Value="True">
<Setter TargetName="Bd" Property="Background" Value="{DynamicResource Ui.Brush.Btn.PrimaryPressed}" />
</Trigger>
<Trigger Property="IsKeyboardFocused" Value="True">
<Setter TargetName="FocusRing" Property="BorderBrush" Value="{DynamicResource Ui.Brush.Btn.Primary}" />
</Trigger>
<Trigger Property="IsEnabled" Value="False">
<Setter Property="Opacity" Value="0.5" />
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<!-- Secondary -->
<Style x:Key="UiButtonSecondary" TargetType="Button">
<Setter Property="FocusVisualStyle" Value="{x:Null}" />
<Setter Property="Foreground" Value="{DynamicResource Ui.Brush.Text}" />
<Setter Property="MinHeight" Value="{StaticResource Ui.BaseControlHeight}" />
<Setter Property="Padding" Value="10,2" />
<Setter Property="VerticalContentAlignment" Value="Center" />
<Setter Property="FontSize" Value="12" />
<Setter Property="SnapsToDevicePixels" Value="True" />
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="Button">
<Border x:Name="FocusRing" Background="Transparent" BorderThickness="2" BorderBrush="Transparent"
CornerRadius="6" SnapsToDevicePixels="True">
<Border x:Name="Bd" CornerRadius="5" SnapsToDevicePixels="True"
BorderThickness="1" BorderBrush="{DynamicResource Ui.Brush.Btn.SecondaryBorder}"
Background="{DynamicResource Ui.Brush.Btn.SecondaryBg}">
<ContentPresenter HorizontalAlignment="Center" VerticalAlignment="Center"
Margin="{TemplateBinding Padding}"
RecognizesAccessKey="True" />
</Border>
</Border>
<ControlTemplate.Triggers>
<MultiTrigger>
<MultiTrigger.Conditions>
<Condition Property="IsMouseOver" Value="True" />
<Condition Property="IsEnabled" Value="True" />
</MultiTrigger.Conditions>
<Setter TargetName="Bd" Property="Background" Value="{DynamicResource Ui.Brush.Btn.SecondaryHover}" />
</MultiTrigger>
<Trigger Property="IsPressed" Value="True">
<Setter TargetName="Bd" Property="Background" Value="{DynamicResource Ui.Brush.Btn.SecondaryPressed}" />
</Trigger>
<Trigger Property="IsKeyboardFocused" Value="True">
<Setter TargetName="FocusRing" Property="BorderBrush" Value="{DynamicResource Ui.Brush.Btn.Primary}" />
</Trigger>
<Trigger Property="IsEnabled" Value="False">
<Setter Property="Opacity" Value="0.5" />
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<!-- Danger: как secondary, акцент на hover (опасное действие) -->
<Style x:Key="UiButtonDanger" TargetType="Button">
<Setter Property="FocusVisualStyle" Value="{x:Null}" />
<Setter Property="Foreground" Value="{DynamicResource Ui.Brush.Text}" />
<Setter Property="MinHeight" Value="{StaticResource Ui.BaseControlHeight}" />
<Setter Property="Padding" Value="10,2" />
<Setter Property="VerticalContentAlignment" Value="Center" />
<Setter Property="FontSize" Value="12" />
<Setter Property="SnapsToDevicePixels" Value="True" />
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="Button">
<Border x:Name="FocusRing" Background="Transparent" BorderThickness="2" BorderBrush="Transparent"
CornerRadius="6" SnapsToDevicePixels="True">
<Border x:Name="Bd" CornerRadius="5" SnapsToDevicePixels="True"
BorderThickness="1" BorderBrush="{DynamicResource Ui.Brush.Btn.SecondaryBorder}"
Background="{DynamicResource Ui.Brush.Btn.SecondaryBg}">
<ContentPresenter HorizontalAlignment="Center" VerticalAlignment="Center"
Margin="{TemplateBinding Padding}"
RecognizesAccessKey="True" />
</Border>
</Border>
<ControlTemplate.Triggers>
<MultiTrigger>
<MultiTrigger.Conditions>
<Condition Property="IsMouseOver" Value="True" />
<Condition Property="IsEnabled" Value="True" />
</MultiTrigger.Conditions>
<Setter TargetName="Bd" Property="Background" Value="{DynamicResource Ui.Brush.Btn.DangerHover}" />
</MultiTrigger>
<Trigger Property="IsPressed" Value="True">
<Setter TargetName="Bd" Property="Background" Value="{DynamicResource Ui.Brush.Btn.DangerPressed}" />
</Trigger>
<Trigger Property="IsKeyboardFocused" Value="True">
<Setter TargetName="FocusRing" Property="BorderBrush" Value="{DynamicResource Ui.Brush.Btn.Primary}" />
</Trigger>
<Trigger Property="IsEnabled" Value="False">
<Setter Property="Opacity" Value="0.5" />
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<!-- Segoe MDL2 Assets: единый вид иконок (системные глифы Windows) -->
<Style x:Key="UiMdlGlyphButton" TargetType="TextBlock">
<Setter Property="FontFamily" Value="Segoe MDL2 Assets" />
<Setter Property="FontSize" Value="16" />
<Setter Property="Foreground" Value="{DynamicResource Ui.Brush.Muted}" />
<Setter Property="VerticalAlignment" Value="Center" />
<Setter Property="Margin" Value="0,0,7,0" />
</Style>
<Style x:Key="UiMdlGlyphOnPrimary" TargetType="TextBlock" BasedOn="{StaticResource UiMdlGlyphButton}">
<Setter Property="Foreground" Value="White" />
</Style>
<Style x:Key="UiMdlGlyphTab" TargetType="TextBlock">
<Setter Property="FontFamily" Value="Segoe MDL2 Assets" />
<Setter Property="FontSize" Value="16" />
<Setter Property="Foreground" Value="{DynamicResource Ui.Brush.Caption}" />
<Setter Property="VerticalAlignment" Value="Center" />
<Setter Property="Margin" Value="0,0,7,0" />
</Style>
<Style x:Key="UiMdlGlyphTree" TargetType="TextBlock">
<Setter Property="FontFamily" Value="Segoe MDL2 Assets" />
<Setter Property="FontSize" Value="15" />
<Setter Property="Foreground" Value="{DynamicResource Ui.Brush.Muted}" />
<Setter Property="VerticalAlignment" Value="Center" />
<Setter Property="Margin" Value="0,0,7,0" />
</Style>
<Style x:Key="UiMdlGlyphEmpty" TargetType="TextBlock">
<Setter Property="FontFamily" Value="Segoe MDL2 Assets" />
<Setter Property="FontSize" Value="24" />
<Setter Property="Foreground" Value="{DynamicResource Ui.Brush.Caption}" />
<Setter Property="HorizontalAlignment" Value="Center" />
</Style>
<!-- Компактная кнопка только с Segoe MDL2 глифом -->
<Style x:Key="UiButtonIconOnlySecondary" TargetType="Button" BasedOn="{StaticResource UiButtonSecondary}">
<Setter Property="Padding" Value="0" />
<Setter Property="HorizontalContentAlignment" Value="Center" />
<Setter Property="VerticalContentAlignment" Value="Center" />
<Setter Property="Width" Value="36" />
<Setter Property="MinWidth" Value="36" />
<Setter Property="MaxWidth" Value="36" />
<Setter Property="Height" Value="{StaticResource Ui.BaseControlHeight}" />
<Setter Property="MinHeight" Value="{StaticResource Ui.BaseControlHeight}" />
<Setter Property="MaxHeight" Value="{StaticResource Ui.BaseControlHeight}" />
</Style>
<Style x:Key="UiMdlGlyphIconOnlyMuted" TargetType="TextBlock">
<Setter Property="FontFamily" Value="Segoe MDL2 Assets" />
<Setter Property="FontSize" Value="16" />
<Setter Property="Foreground" Value="{DynamicResource Ui.Brush.Muted}" />
<Setter Property="VerticalAlignment" Value="Center" />
<Setter Property="HorizontalAlignment" Value="Center" />
<Setter Property="Margin" Value="0" />
</Style>
<Style x:Key="UiSplitChevronMuted" TargetType="TextBlock">
<Setter Property="FontFamily" Value="Segoe MDL2 Assets" />
<Setter Property="FontSize" Value="10" />
<Setter Property="Foreground" Value="{DynamicResource Ui.Brush.Muted}" />
<Setter Property="VerticalAlignment" Value="Center" />
<Setter Property="Margin" Value="6,2,0,0" />
</Style>
<!-- Ghost: второстепенные действия -->
<Style x:Key="UiButtonGhost" TargetType="Button">
<Setter Property="FocusVisualStyle" Value="{x:Null}" />
<Setter Property="Foreground" Value="{DynamicResource Ui.Brush.Text}" />
<Setter Property="MinHeight" Value="{StaticResource Ui.BaseControlHeight}" />
<Setter Property="Padding" Value="10,2" />
<Setter Property="VerticalContentAlignment" Value="Center" />
<Setter Property="FontSize" Value="12" />
<Setter Property="SnapsToDevicePixels" Value="True" />
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="Button">
<Border x:Name="FocusRing" Background="Transparent" BorderThickness="2" BorderBrush="Transparent"
CornerRadius="6" SnapsToDevicePixels="True">
<Border x:Name="Bd" CornerRadius="5" SnapsToDevicePixels="True"
BorderThickness="1" BorderBrush="{DynamicResource Ui.Brush.Btn.GhostBorder}"
Background="Transparent">
<ContentPresenter HorizontalAlignment="Center" VerticalAlignment="Center"
Margin="{TemplateBinding Padding}"
RecognizesAccessKey="True" />
</Border>
</Border>
<ControlTemplate.Triggers>
<MultiTrigger>
<MultiTrigger.Conditions>
<Condition Property="IsMouseOver" Value="True" />
<Condition Property="IsEnabled" Value="True" />
</MultiTrigger.Conditions>
<Setter TargetName="Bd" Property="Background" Value="{DynamicResource Ui.Brush.Btn.GhostHover}" />
</MultiTrigger>
<Trigger Property="IsPressed" Value="True">
<Setter TargetName="Bd" Property="Background" Value="{DynamicResource Ui.Brush.Btn.SecondaryHover}" />
</Trigger>
<Trigger Property="IsKeyboardFocused" Value="True">
<Setter TargetName="FocusRing" Property="BorderBrush" Value="{DynamicResource Ui.Brush.Btn.Primary}" />
</Trigger>
<Trigger Property="IsEnabled" Value="False">
<Setter Property="Opacity" Value="0.5" />
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<!-- TextBox: без внутришаблонного Binding/плейсхолдера (избегаем BAML/триггеров TemplatedParent). Плейсхолдер — в UI отдельным TextBlock. -->
<Style x:Key="UiTextInput" TargetType="TextBox">
<Setter Property="Background" Value="Transparent" />
<Setter Property="BorderThickness" Value="0" />
<Setter Property="Foreground" Value="{DynamicResource Ui.Brush.Text}" />
<Setter Property="FontSize" Value="12" />
<Setter Property="MinHeight" Value="{StaticResource Ui.BaseControlHeight}" />
<Setter Property="Height" Value="{StaticResource Ui.BaseControlHeight}" />
<Setter Property="Padding" Value="0" />
<Setter Property="VerticalContentAlignment" Value="Center" />
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="TextBox">
<Border x:Name="FieldRoot" CornerRadius="0" SnapsToDevicePixels="True" BorderThickness="1" Padding="0"
BorderBrush="{DynamicResource Ui.Brush.InputBorder}" Background="{DynamicResource Ui.Brush.InputBackground}">
<ScrollViewer x:Name="PART_ContentHost" Focusable="false" VerticalContentAlignment="Center" Padding="{StaticResource Ui.InputPadding}" />
</Border>
<ControlTemplate.Triggers>
<Trigger Property="IsMouseOver" Value="True">
<Setter TargetName="FieldRoot" Property="BorderBrush" Value="{DynamicResource Ui.Brush.Border}" />
</Trigger>
<Trigger Property="IsKeyboardFocusWithin" Value="True">
<Setter TargetName="FieldRoot" Property="BorderBrush" Value="{DynamicResource Ui.Brush.Accent}" />
</Trigger>
<Trigger Property="IsEnabled" Value="False">
<Setter TargetName="FieldRoot" Property="Background" Value="{DynamicResource Ui.Brush.InputDisabledBg}" />
<Setter Property="Foreground" Value="{DynamicResource Ui.Brush.TextDisabled}" />
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<Style x:Key="UiPathField" TargetType="TextBox" BasedOn="{StaticResource UiTextInput}">
<Setter Property="IsReadOnly" Value="True" />
</Style>
<Style x:Key="UiPasswordInput" TargetType="PasswordBox">
<Setter Property="Background" Value="Transparent" />
<Setter Property="FontSize" Value="12" />
<Setter Property="MinHeight" Value="{StaticResource Ui.BaseControlHeight}" />
<Setter Property="Height" Value="{StaticResource Ui.BaseControlHeight}" />
<Setter Property="VerticalContentAlignment" Value="Center" />
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="PasswordBox">
<Border x:Name="FieldRoot" CornerRadius="0" SnapsToDevicePixels="True" BorderThickness="1"
BorderBrush="{DynamicResource Ui.Brush.InputBorder}" Background="{DynamicResource Ui.Brush.InputBackground}">
<ScrollViewer x:Name="PART_ContentHost" Focusable="false" VerticalContentAlignment="Center" Padding="{StaticResource Ui.InputPadding}" />
</Border>
<ControlTemplate.Triggers>
<Trigger Property="IsMouseOver" Value="True">
<Setter TargetName="FieldRoot" Property="BorderBrush" Value="{DynamicResource Ui.Brush.Border}" />
</Trigger>
<Trigger Property="IsKeyboardFocusWithin" Value="True">
<Setter TargetName="FieldRoot" Property="BorderBrush" Value="{DynamicResource Ui.Brush.Accent}" />
</Trigger>
<Trigger Property="IsEnabled" Value="False">
<Setter TargetName="FieldRoot" Property="Background" Value="{DynamicResource Ui.Brush.InputDisabledBg}" />
<Setter Property="Foreground" Value="{DynamicResource Ui.Brush.TextDisabled}" />
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<Style x:Key="UiComboItem" TargetType="ComboBoxItem">
<Setter Property="Height" Value="{StaticResource Ui.BaseControlHeight}" />
<Setter Property="FontSize" Value="12" />
<Setter Property="Padding" Value="8,4" />
<Setter Property="Foreground" Value="{DynamicResource Ui.Brush.Text}" />
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="ComboBoxItem">
<Border x:Name="B" SnapsToDevicePixels="True" Padding="{TemplateBinding Padding}" Background="Transparent" BorderBrush="Transparent" BorderThickness="0">
<ContentPresenter />
</Border>
<ControlTemplate.Triggers>
<Trigger Property="IsHighlighted" Value="True">
<Setter TargetName="B" Property="Background" Value="{DynamicResource Ui.Brush.DataRowSelected}" />
</Trigger>
<Trigger Property="IsEnabled" Value="False">
<Setter Property="Opacity" Value="0.45" />
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<Style x:Key="UiCombo" TargetType="ComboBox">
<Setter Property="FocusVisualStyle" Value="{x:Null}" />
<Setter Property="FontSize" Value="12" />
<Setter Property="Foreground" Value="{DynamicResource Ui.Brush.Text}" />
<Setter Property="ItemContainerStyle" Value="{StaticResource UiComboItem}" />
<Setter Property="IsEditable" Value="False" />
<Setter Property="Height" Value="{StaticResource Ui.BaseControlHeight}" />
<Setter Property="MinHeight" Value="{StaticResource Ui.BaseControlHeight}" />
<Setter Property="Padding" Value="0" />
<Setter Property="VerticalContentAlignment" Value="Center" />
<Setter Property="SnapsToDevicePixels" Value="True" />
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="ComboBox">
<Grid SnapsToDevicePixels="True">
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*" MinWidth="0" />
<ColumnDefinition Width="22" />
</Grid.ColumnDefinitions>
<Border x:Name="Bd" Grid.ColumnSpan="2" Panel.ZIndex="0" SnapsToDevicePixels="True" BorderBrush="{DynamicResource Ui.Brush.InputBorder}" BorderThickness="1" Background="{DynamicResource Ui.Brush.InputBackground}" />
<ToggleButton x:Name="OpenHit" Grid.ColumnSpan="2" Panel.ZIndex="1" Focusable="False" VerticalAlignment="Stretch" HorizontalAlignment="Stretch" TabIndex="0"
IsChecked="{Binding IsDropDownOpen, Mode=TwoWay, RelativeSource={RelativeSource TemplatedParent}}">
<ToggleButton.Template>
<ControlTemplate TargetType="ToggleButton">
<Border Background="Transparent" SnapsToDevicePixels="True" />
</ControlTemplate>
</ToggleButton.Template>
</ToggleButton>
<ContentPresenter x:Name="ContentSite" Grid.Column="0" Panel.ZIndex="2" IsHitTestVisible="False" Margin="8,4,6,4" VerticalAlignment="Center" HorizontalAlignment="Left" SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}"
Content="{TemplateBinding SelectionBoxItem}" ContentStringFormat="{TemplateBinding SelectionBoxItemStringFormat}" ContentTemplate="{TemplateBinding ItemTemplate}" ContentTemplateSelector="{TemplateBinding ItemTemplateSelector}" />
<Path x:Name="Arrow" Grid.Column="1" Panel.ZIndex="2" IsHitTestVisible="False" VerticalAlignment="Center" HorizontalAlignment="Center" SnapsToDevicePixels="True" Fill="{DynamicResource Ui.Brush.Muted}" Data="M0,0 L3.2,2.2 L6.2,0 Z" />
</Grid>
<Popup x:Name="PART_Popup" AllowsTransparency="True" StaysOpen="False" IsOpen="{TemplateBinding IsDropDownOpen}" Focusable="False" Placement="Bottom" VerticalOffset="0" HorizontalOffset="0" PopupAnimation="None" PlacementTarget="{Binding ElementName=Bd}" SnapsToDevicePixels="True">
<Border MinWidth="{Binding ActualWidth, ElementName=Bd, Mode=OneWay}" MaxHeight="320" SnapsToDevicePixels="True" BorderBrush="{DynamicResource Ui.Brush.Border}" BorderThickness="1" Background="{DynamicResource Ui.Brush.SurfaceSubtle}">
<ScrollViewer CanContentScroll="True" MinHeight="1" MinWidth="0" MaxHeight="320" BorderThickness="0" Padding="0">
<ItemsPresenter SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}" KeyboardNavigation.DirectionalNavigation="Contained" />
</ScrollViewer>
</Border>
</Popup>
</Grid>
<ControlTemplate.Triggers>
<Trigger Property="IsMouseOver" Value="True">
<Setter TargetName="Bd" Property="Background" Value="{DynamicResource Ui.Brush.ComboHoverBg}" />
</Trigger>
<Trigger Property="IsEnabled" Value="False">
<Setter Property="Opacity" Value="0.5" />
</Trigger>
<Trigger Property="IsDropDownOpen" Value="True">
<Setter TargetName="Bd" Property="BorderBrush" Value="{DynamicResource Ui.Brush.Accent}" />
</Trigger>
<MultiTrigger>
<MultiTrigger.Conditions>
<Condition Property="IsDropDownOpen" Value="False" />
<Condition Property="IsKeyboardFocusWithin" Value="True" />
</MultiTrigger.Conditions>
<Setter TargetName="Bd" Property="BorderBrush" Value="{DynamicResource Ui.Brush.Accent}" />
</MultiTrigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<Style x:Key="UiDatePicker" TargetType="DatePicker">
<Setter Property="Height" Value="{StaticResource Ui.BaseControlHeight}" />
<Setter Property="MinHeight" Value="{StaticResource Ui.BaseControlHeight}" />
<Setter Property="FontSize" Value="12" />
<Setter Property="Background" Value="{DynamicResource Ui.Brush.InputBackground}" />
<Setter Property="BorderBrush" Value="{DynamicResource Ui.Brush.InputBorder}" />
<Setter Property="BorderThickness" Value="1" />
<Setter Property="SnapsToDevicePixels" Value="True" />
</Style>
<!-- CheckBox: modern box 18, check + stroke -->
<Style x:Key="UiCheckBox" TargetType="CheckBox">
<Setter Property="FontSize" Value="12" />
<Setter Property="MinHeight" Value="{StaticResource Ui.BaseControlHeight}" />
<Setter Property="Margin" Value="0,0,0,8" />
<Setter Property="VerticalContentAlignment" Value="Center" />
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="CheckBox">
<StackPanel Orientation="Horizontal">
<Viewbox Width="18" Height="18" SnapsToDevicePixels="True" VerticalAlignment="Center">
<Grid Width="18" Height="18">
<Border x:Name="Box" CornerRadius="0" BorderBrush="{DynamicResource Ui.Brush.BorderSubtle}" BorderThickness="1" Background="{DynamicResource Ui.Brush.Surface}" />
<Path x:Name="Mark" Data="M 3.2,8.2 L 6.2,11.1 12.1,3.1" Stroke="White" StrokeThickness="1.6" StrokeLineJoin="Round" Visibility="Collapsed" />
</Grid>
</Viewbox>
<ContentPresenter Margin="10,0,0,0" VerticalAlignment="Center" />
</StackPanel>
<ControlTemplate.Triggers>
<Trigger Property="IsChecked" Value="True">
<Setter TargetName="Box" Property="Background" Value="{DynamicResource Ui.Brush.Accent}" />
<Setter TargetName="Box" Property="BorderBrush" Value="{DynamicResource Ui.Brush.Accent}" />
<Setter TargetName="Mark" Property="Visibility" Value="Visible" />
</Trigger>
<MultiTrigger>
<MultiTrigger.Conditions>
<Condition Property="IsMouseOver" Value="True" />
<Condition Property="IsChecked" Value="False" />
</MultiTrigger.Conditions>
<Setter TargetName="Box" Property="Background" Value="{DynamicResource Ui.Brush.ControlHover}" />
</MultiTrigger>
<Trigger Property="IsEnabled" Value="False">
<Setter Property="Opacity" Value="0.45" />
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<Style x:Key="UiRadio" TargetType="RadioButton">
<Setter Property="FontSize" Value="12" />
<Setter Property="MinHeight" Value="{StaticResource Ui.BaseControlHeight}" />
<Setter Property="Margin" Value="0,0,0,8" />
<Setter Property="VerticalContentAlignment" Value="Center" />
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="RadioButton">
<StackPanel Orientation="Horizontal">
<Viewbox Width="18" Height="18">
<Grid Width="18" Height="18">
<Border x:Name="Outer" CornerRadius="9" BorderBrush="{DynamicResource Ui.Brush.BorderSubtle}" BorderThickness="1" Background="{DynamicResource Ui.Brush.Surface}" />
<Ellipse x:Name="Inner" Width="8" Height="8" Fill="{DynamicResource Ui.Brush.Accent}" Opacity="0" HorizontalAlignment="Center" VerticalAlignment="Center" />
</Grid>
</Viewbox>
<ContentPresenter Margin="10,0,0,0" VerticalAlignment="Center" />
</StackPanel>
<ControlTemplate.Triggers>
<Trigger Property="IsChecked" Value="True">
<Setter TargetName="Inner" Property="Opacity" Value="1" />
<Setter TargetName="Outer" Property="BorderBrush" Value="{DynamicResource Ui.Brush.Accent}" />
</Trigger>
<MultiTrigger>
<MultiTrigger.Conditions>
<Condition Property="IsMouseOver" Value="True" />
<Condition Property="IsChecked" Value="False" />
</MultiTrigger.Conditions>
<Setter TargetName="Outer" Property="Background" Value="{DynamicResource Ui.Brush.ControlHover}" />
</MultiTrigger>
<Trigger Property="IsEnabled" Value="False">
<Setter Property="Opacity" Value="0.45" />
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<Style TargetType="RadioButton" BasedOn="{StaticResource UiRadio}" />
<Style TargetType="CheckBox" BasedOn="{StaticResource UiCheckBox}" />
<Style x:Key="UiContextMenu" TargetType="ContextMenu">
<Setter Property="Background" Value="{DynamicResource Ui.Brush.SurfaceSubtle}" />
<Setter Property="Foreground" Value="{DynamicResource Ui.Brush.Text}" />
<Setter Property="BorderBrush" Value="{DynamicResource Ui.Brush.Border}" />
<Setter Property="BorderThickness" Value="1" />
<Setter Property="Padding" Value="2" />
</Style>
<Style TargetType="ContextMenu" BasedOn="{StaticResource UiContextMenu}" />
<Style TargetType="MenuItem">
<Setter Property="Foreground" Value="{DynamicResource Ui.Brush.Text}" />
<Setter Property="Background" Value="Transparent" />
<Setter Property="Padding" Value="8,4" />
<Style.Triggers>
<Trigger Property="IsHighlighted" Value="True">
<Setter Property="Background" Value="{DynamicResource Ui.Brush.DataRowSelected}" />
<Setter Property="Foreground" Value="{DynamicResource Ui.Brush.Text}" />
</Trigger>
<Trigger Property="IsEnabled" Value="False">
<Setter Property="Foreground" Value="{DynamicResource Ui.Brush.TextDisabled}" />
</Trigger>
</Style.Triggers>
</Style>
<Style x:Key="UiDataGridTextElement" TargetType="TextBlock">
<Setter Property="Foreground" Value="{DynamicResource Ui.Brush.Text}" />
<Setter Property="VerticalAlignment" Value="Center" />
<Setter Property="Padding" Value="{StaticResource Ui.DataGridCellPadding}" />
<Setter Property="TextTrimming" Value="CharacterEllipsis" />
</Style>
<Style x:Key="UiDataGridTextEdit" TargetType="TextBox">
<Setter Property="Foreground" Value="{DynamicResource Ui.Brush.Text}" />
<Setter Property="Background" Value="Transparent" />
<Setter Property="BorderBrush" Value="Transparent" />
<Setter Property="BorderThickness" Value="0" />
<Setter Property="Padding" Value="{StaticResource Ui.DataGridCellPadding}" />
<Setter Property="VerticalContentAlignment" Value="Center" />
</Style>
<Style x:Key="UiDataGrid" TargetType="DataGrid">
<Setter Property="Foreground" Value="{DynamicResource Ui.Brush.Text}" />
<Setter Property="Background" Value="{DynamicResource Ui.Brush.Surface}" />
<Setter Property="BorderBrush" Value="{DynamicResource Ui.Brush.BorderSubtle}" />
<Setter Property="BorderThickness" Value="1" />
<Setter Property="RowBackground" Value="{DynamicResource Ui.Brush.DataRowA}" />
<Setter Property="AlternatingRowBackground" Value="{DynamicResource Ui.Brush.DataRowB}" />
<Setter Property="RowHeight" Value="{StaticResource Ui.BaseControlHeight}" />
<Setter Property="FontSize" Value="12" />
<Setter Property="GridLinesVisibility" Value="Horizontal" />
<Setter Property="HeadersVisibility" Value="Column" />
<Setter Property="CanUserAddRows" Value="False" />
<Setter Property="AutoGenerateColumns" Value="False" />
<Setter Property="SelectionMode" Value="Single" />
<Setter Property="SelectionUnit" Value="FullRow" />
<Setter Property="RowHeaderWidth" Value="0" />
</Style>
<Style x:Key="UiDataGridColumnHeader" TargetType="DataGridColumnHeader">
<Setter Property="FontWeight" Value="SemiBold" />
<Setter Property="FontSize" Value="12" />
<Setter Property="Height" Value="{StaticResource Ui.BaseControlHeight}" />
<Setter Property="Background" Value="{DynamicResource Ui.Brush.DataHeader}" />
<Setter Property="BorderBrush" Value="{DynamicResource Ui.Brush.DataLine}" />
<Setter Property="BorderThickness" Value="0,0,1,1" />
<Setter Property="Padding" Value="{StaticResource Ui.DataGridCellPadding}" />
<Setter Property="VerticalContentAlignment" Value="Center" />
<Setter Property="Foreground" Value="{DynamicResource Ui.Brush.Text}" />
</Style>
<Style x:Key="UiDataGridCell" TargetType="DataGridCell">
<Setter Property="Foreground" Value="{DynamicResource Ui.Brush.Text}" />
<Setter Property="BorderThickness" Value="0" />
<Setter Property="FocusVisualStyle" Value="{x:Null}" />
<Setter Property="Padding" Value="{StaticResource Ui.DataGridCellPadding}" />
<Setter Property="VerticalContentAlignment" Value="Center" />
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="DataGridCell">
<Border x:Name="Cbd" Padding="{TemplateBinding Padding}" Background="Transparent" SnapsToDevicePixels="True">
<ContentPresenter x:Name="ContentSite" VerticalAlignment="Center" SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}" />
</Border>
</ControlTemplate>
</Setter.Value>
</Setter>
<Style.Triggers>
<Trigger Property="IsSelected" Value="True">
<Setter Property="Foreground" Value="{DynamicResource Ui.Brush.Text}" />
</Trigger>
<MultiTrigger>
<MultiTrigger.Conditions>
<Condition Property="IsSelected" Value="True" />
<Condition Property="Selector.IsSelectionActive" Value="False" />
</MultiTrigger.Conditions>
<Setter Property="Foreground" Value="{DynamicResource Ui.Brush.Text}" />
</MultiTrigger>
<MultiTrigger>
<MultiTrigger.Conditions>
<Condition Property="IsSelected" Value="True" />
<Condition Property="IsMouseOver" Value="True" />
</MultiTrigger.Conditions>
<Setter Property="Foreground" Value="{DynamicResource Ui.Brush.Text}" />
</MultiTrigger>
</Style.Triggers>
</Style>
<Style x:Key="UiDataGridRow" TargetType="DataGridRow">
<Setter Property="Foreground" Value="{DynamicResource Ui.Brush.Text}" />
<Style.Triggers>
<MultiTrigger>
<MultiTrigger.Conditions>
<Condition Property="IsSelected" Value="False" />
<Condition Property="IsMouseOver" Value="True" />
</MultiTrigger.Conditions>
<Setter Property="Background" Value="{DynamicResource Ui.Brush.DataRowHover}" />
</MultiTrigger>
<MultiTrigger>
<MultiTrigger.Conditions>
<Condition Property="IsSelected" Value="True" />
<Condition Property="IsMouseOver" Value="False" />
</MultiTrigger.Conditions>
<Setter Property="Background" Value="{DynamicResource Ui.Brush.DataRowSelected}" />
</MultiTrigger>
<MultiTrigger>
<MultiTrigger.Conditions>
<Condition Property="IsSelected" Value="True" />
<Condition Property="IsMouseOver" Value="True" />
</MultiTrigger.Conditions>
<Setter Property="Background" Value="{DynamicResource Ui.Brush.DataRowSelectHover}" />
</MultiTrigger>
<Trigger Property="IsSelected" Value="True">
<Setter Property="Foreground" Value="{DynamicResource Ui.Brush.Text}" />
</Trigger>
</Style.Triggers>
</Style>
<Style x:Key="UiTabItem" TargetType="TabItem">
<Setter Property="Padding" Value="0" />
<Setter Property="MinHeight" Value="0" />
<Setter Property="FontSize" Value="12" />
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="TabItem">
<Border x:Name="B" SnapsToDevicePixels="True" BorderThickness="0" Padding="12,0" MinHeight="32" BorderBrush="Transparent" Background="Transparent" Margin="0,0,1,0">
<Grid MinHeight="32">
<ContentPresenter x:Name="C" ContentSource="Header" VerticalAlignment="Center" TextElement.Foreground="{DynamicResource Ui.Brush.Caption}" />
<Border x:Name="Underline" Height="2" VerticalAlignment="Bottom" Background="Transparent" SnapsToDevicePixels="True" />
</Grid>
</Border>
<ControlTemplate.Triggers>
<Trigger Property="IsSelected" Value="True">
<Setter TargetName="C" Property="TextElement.Foreground" Value="{DynamicResource Ui.Brush.Text}" />
<Setter TargetName="Underline" Property="Background" Value="{DynamicResource Ui.Brush.Accent}" />
</Trigger>
<MultiTrigger>
<MultiTrigger.Conditions>
<Condition Property="IsSelected" Value="True" />
<Condition Property="IsMouseOver" Value="True" />
</MultiTrigger.Conditions>
<Setter TargetName="B" Property="Background" Value="{DynamicResource Ui.Brush.DataHeader}" />
</MultiTrigger>
<MultiTrigger>
<MultiTrigger.Conditions>
<Condition Property="IsSelected" Value="False" />
<Condition Property="IsMouseOver" Value="True" />
</MultiTrigger.Conditions>
<Setter TargetName="B" Property="Background" Value="{DynamicResource Ui.Brush.TabHover}" />
</MultiTrigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<Style x:Key="UiTabControl" TargetType="TabControl">
<Setter Property="ItemContainerStyle" Value="{StaticResource UiTabItem}" />
<Setter Property="Background" Value="Transparent" />
<Setter Property="BorderThickness" Value="0" />
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="TabControl">
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="Auto" />
<RowDefinition Height="*" />
</Grid.RowDefinitions>
<Border Grid.Row="0" Background="{DynamicResource Ui.Brush.TabStrip}" BorderBrush="{DynamicResource Ui.Brush.BorderSubtle}" BorderThickness="0,0,0,1" Padding="8,0,0,0" SnapsToDevicePixels="True">
<TabPanel x:Name="HeaderPanel" IsItemsHost="True" />
</Border>
<Border Grid.Row="1" Background="{DynamicResource Ui.Brush.Surface}" BorderBrush="{DynamicResource Ui.Brush.Border}" BorderThickness="1" Padding="10,8" SnapsToDevicePixels="True">
<ContentPresenter x:Name="PART_SelectedContentHost" ContentSource="SelectedContent" />
</Border>
</Grid>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<Style x:Key="UiProgressBar" TargetType="ProgressBar">
<Setter Property="Height" Value="3" />
<Setter Property="Foreground" Value="{DynamicResource Ui.Brush.Accent}" />
<Setter Property="Background" Value="{DynamicResource Ui.Brush.Track}" />
</Style>
<Style x:Key="UiSliderRepeat" TargetType="RepeatButton">
<Setter Property="SnapsToDevicePixels" Value="True" />
<Setter Property="IsTabStop" Value="False" />
<Setter Property="Focusable" Value="False" />
<Setter Property="OverridesDefaultStyle" Value="True" />
<Setter Property="Height" Value="20" />
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="RepeatButton">
<Border Background="Transparent" SnapsToDevicePixels="True" />
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<Style x:Key="UiScrollBarThumb" TargetType="Thumb">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="Thumb">
<Border x:Name="ThumbBorder"
Background="{DynamicResource Ui.Brush.ScrollBarThumb}"
BorderBrush="{DynamicResource Ui.Brush.Border}"
BorderThickness="1"
CornerRadius="2"
SnapsToDevicePixels="True" />
<ControlTemplate.Triggers>
<Trigger Property="IsMouseOver" Value="True">
<Setter TargetName="ThumbBorder" Property="Background" Value="{DynamicResource Ui.Brush.ScrollBarThumbHover}" />
</Trigger>
<Trigger Property="IsDragging" Value="True">
<Setter TargetName="ThumbBorder" Property="Background" Value="{DynamicResource Ui.Brush.Muted}" />
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<Style x:Key="UiScrollBarButton" TargetType="RepeatButton">
<Setter Property="OverridesDefaultStyle" Value="True" />
<Setter Property="Focusable" Value="False" />
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="RepeatButton">
<Border Background="{DynamicResource Ui.Brush.ScrollBarTrack}" SnapsToDevicePixels="True" />
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<Style TargetType="ScrollBar">
<Setter Property="Background" Value="{DynamicResource Ui.Brush.ScrollBarTrack}" />
<Setter Property="Width" Value="12" />
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="ScrollBar">
<Grid Background="{TemplateBinding Background}">
<Track x:Name="PART_Track" IsDirectionReversed="True">
<Track.DecreaseRepeatButton>
<RepeatButton x:Name="PART_DecreaseButton"
Command="ScrollBar.LineUpCommand"
Style="{DynamicResource UiScrollBarButton}" />
</Track.DecreaseRepeatButton>
<Track.Thumb>
<Thumb Style="{DynamicResource UiScrollBarThumb}" />
</Track.Thumb>
<Track.IncreaseRepeatButton>
<RepeatButton x:Name="PART_IncreaseButton"
Command="ScrollBar.LineDownCommand"
Style="{DynamicResource UiScrollBarButton}" />
</Track.IncreaseRepeatButton>
</Track>
</Grid>
<ControlTemplate.Triggers>
<Trigger Property="Orientation" Value="Horizontal">
<Setter Property="Height" Value="12" />
<Setter Property="Width" Value="Auto" />
<Setter TargetName="PART_Track" Property="IsDirectionReversed" Value="False" />
<Setter TargetName="PART_DecreaseButton" Property="Command" Value="ScrollBar.LineLeftCommand" />
<Setter TargetName="PART_IncreaseButton" Property="Command" Value="ScrollBar.LineRightCommand" />
</Trigger>
<Trigger Property="Orientation" Value="Vertical">
<Setter Property="Width" Value="12" />
<Setter Property="Height" Value="Auto" />
<Setter TargetName="PART_Track" Property="IsDirectionReversed" Value="True" />
<Setter TargetName="PART_DecreaseButton" Property="Command" Value="ScrollBar.LineUpCommand" />
<Setter TargetName="PART_IncreaseButton" Property="Command" Value="ScrollBar.LineDownCommand" />
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<Style x:Key="UiSlider" TargetType="Slider">
<Setter Property="FocusVisualStyle" Value="{x:Null}" />
<Setter Property="Height" Value="20" />
<Setter Property="IsSnapToTickEnabled" Value="False" />
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="Slider">
<Grid SnapsToDevicePixels="True">
<Border x:Name="TrackB" Height="3" VerticalAlignment="Center" SnapsToDevicePixels="True" Background="{DynamicResource Ui.Brush.Track}" />
<Track x:Name="PART_Track" VerticalAlignment="Center">
<Track.DecreaseRepeatButton>
<RepeatButton Command="{x:Static controls:Slider.DecreaseLarge}" Style="{StaticResource UiSliderRepeat}" />
</Track.DecreaseRepeatButton>
<Track.Thumb>
<Thumb Width="7" Height="16" SnapsToDevicePixels="True" Focusable="True">
<Thumb.Template>
<ControlTemplate TargetType="Thumb">
<Border x:Name="T" Background="{DynamicResource Ui.Brush.SliderThumb}" SnapsToDevicePixels="True" BorderBrush="{DynamicResource Ui.Brush.Border}" BorderThickness="1" />
<ControlTemplate.Triggers>
<Trigger Property="IsMouseOver" Value="True">
<Setter TargetName="T" Property="Background" Value="{DynamicResource Ui.Brush.Muted}" />
</Trigger>
<Trigger Property="IsDragging" Value="True">
<Setter TargetName="T" Property="Background" Value="{DynamicResource Ui.Brush.Text}" />
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Thumb.Template>
</Thumb>
</Track.Thumb>
<Track.IncreaseRepeatButton>
<RepeatButton Command="{x:Static controls:Slider.IncreaseLarge}" Style="{StaticResource UiSliderRepeat}" />
</Track.IncreaseRepeatButton>
</Track>
</Grid>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<Style x:Key="UiLog" TargetType="TextBox" BasedOn="{x:Null}">
<Setter Property="FontFamily" Value="Cascadia Mono,Consolas" />
<Setter Property="FontSize" Value="12" />
<Setter Property="Foreground" Value="{DynamicResource Ui.Brush.LogText}" />
<Setter Property="IsReadOnly" Value="True" />
<Setter Property="TextWrapping" Value="NoWrap" />
<Setter Property="AcceptsReturn" Value="True" />
<Setter Property="ScrollViewer.VerticalScrollBarVisibility" Value="Auto" />
<Setter Property="MinHeight" Value="100" />
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="TextBox">
<Border x:Name="Lg" SnapsToDevicePixels="True" CornerRadius="0" BorderBrush="{DynamicResource Ui.Brush.LogBorder}" BorderThickness="1" Background="{DynamicResource Ui.Brush.LogBg}" Padding="6,4">
<ScrollViewer x:Name="PART_ContentHost" Focusable="false" />
</Border>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<Style x:Key="UiToolBar" TargetType="ToolBar">
<Setter Property="Background" Value="{DynamicResource Ui.Brush.Toolbar}" />
<Setter Property="BorderBrush" Value="{DynamicResource Ui.Brush.BorderSubtle}" />
<Setter Property="BorderThickness" Value="0,0,0,1" />
<Setter Property="Height" Value="32" />
<Setter Property="Padding" Value="8,0" />
<Setter Property="VerticalAlignment" Value="Center" />
</Style>
<Style x:Key="UiStatusBar" TargetType="StatusBar">
<Setter Property="Background" Value="{DynamicResource Ui.Brush.StatusBar}" />
<Setter Property="Foreground" Value="{DynamicResource Ui.Brush.Text}" />
<Setter Property="FontSize" Value="12" />
<Setter Property="Height" Value="22" />
<Setter Property="BorderBrush" Value="{DynamicResource Ui.Brush.BorderSubtle}" />
<Setter Property="BorderThickness" Value="0,1,0,0" />
</Style>
</ResourceDictionary>