detect/detect.gui/Assets/RadioButton.axaml
2024-11-13 17:26:19 +08:00

243 lines
13 KiB
XML

<Styles xmlns="https://github.com/avaloniaui"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
<Styles.Resources>
<BoxShadows x:Key="TabRadioButtonShadows">inset 0 0 20 2 #006CC6</BoxShadows>
<SolidColorBrush x:Key="TabRadioButtonPointeroverBackgroundColor" Color="#45afdf" Opacity="0.8" />
<SolidColorBrush x:Key="TabRadioButtonCheckedBackgroundColor" Color="{StaticResource Blue1}" />
</Styles.Resources>
<Style Selector="RadioButton.sidebar">
<Setter Property="FontFamily" Value="{StaticResource Font-Family}" />
<Setter Property="FontSize" Value="18" />
<Setter Property="CornerRadius" Value="6" />
<Setter Property="Foreground" Value="{StaticResource Light}" />
<Setter Property="Height" Value="45" />
<Setter Property="Template">
<ControlTemplate>
<Grid Height="{TemplateBinding Height}">
<Border IsVisible="{TemplateBinding IsChecked}"
Height="{TemplateBinding Height}"
CornerRadius="{TemplateBinding CornerRadius}"
BorderThickness="0"
BoxShadow="{StaticResource TabRadioButtonShadows}"
BorderBrush="{StaticResource Light}"
Background="{StaticResource TabRadioButtonCheckedBackgroundColor}"/>
<Border x:Name="BackBorder"
Height="{TemplateBinding Height}"
CornerRadius="{TemplateBinding CornerRadius}"
Padding="15,0"
BorderThickness="0"
BorderBrush="{StaticResource Light}"
Background="Transparent">
<Grid ColumnDefinitions="Auto, 10, Auto"
HorizontalAlignment="Center"
VerticalAlignment="Center">
<PathIcon Grid.Column="0"
x:Name="ButtonIcon"
Width="21"
Height="21"
Foreground="{TemplateBinding Foreground}" />
<TextBlock Grid.Column="2"
x:Name="ButtonText"
FontSize="{TemplateBinding FontSize}"
Foreground="{TemplateBinding Foreground}"
Text="{TemplateBinding Content}" />
</Grid>
</Border>
</Grid>
</ControlTemplate>
</Setter>
</Style>
<Style Selector="RadioButton.sidebar:checked /template/ PathIcon#ButtonIcon">
<Setter Property="Foreground" Value="{StaticResource Light}" />
</Style>
<Style Selector="RadioButton.sidebar:checked /template/ TextBlock#ButtonText">
<Setter Property="Foreground" Value="{StaticResource Light}" />
</Style>
<Style Selector="RadioButton.sidebar:pointerover Border#BackBorder">
<Setter Property="BoxShadow" Value="{StaticResource TabRadioButtonShadows}" />
<Setter Property="Background" Value="{StaticResource TabRadioButtonPointeroverBackgroundColor}" />
</Style>
<Style Selector="RadioButton.tab-left">
<Setter Property="FontFamily" Value="{StaticResource Font-Family}" />
<Setter Property="FontSize" Value="14" />
<Setter Property="Foreground" Value="{StaticResource Light}" />
<Setter Property="CornerRadius" Value="6" />
<Setter Property="Width" Value="80" />
<Setter Property="Template">
<ControlTemplate>
<Grid Width="{TemplateBinding Width}">
<Border IsVisible="{TemplateBinding IsChecked}"
Width="{TemplateBinding Width}"
CornerRadius="{TemplateBinding CornerRadius}"
BorderThickness="0"
BoxShadow="{StaticResource TabRadioButtonShadows}"
BorderBrush="{StaticResource Light}"
Background="{StaticResource TabRadioButtonCheckedBackgroundColor}"/>
<Border x:Name="BackBorder"
Width="{TemplateBinding Width}"
CornerRadius="{TemplateBinding CornerRadius}"
Padding="10,10"
BorderThickness="0"
BorderBrush="{StaticResource Light}"
Background="Transparent">
<Grid RowDefinitions="Auto, 5, Auto"
HorizontalAlignment="Center"
VerticalAlignment="Center">
<PathIcon Grid.Row="0"
x:Name="ButtonIcon"
Width="21"
Height="21"
Foreground="{TemplateBinding Foreground}" />
<TextBlock Grid.Row="2"
x:Name="ButtonText"
FontSize="{TemplateBinding FontSize}"
Foreground="{TemplateBinding Foreground}"
Text="{TemplateBinding Content}" />
</Grid>
</Border>
</Grid>
</ControlTemplate>
</Setter>
</Style>
<Style Selector="RadioButton.tab-left:checked /template/ PathIcon#ButtonIcon">
<Setter Property="Foreground" Value="{StaticResource Light}" />
</Style>
<Style Selector="RadioButton.tab-left:checked /template/ TextBlock#ButtonText">
<Setter Property="Foreground" Value="{StaticResource Light}" />
</Style>
<Style Selector="RadioButton.tab-left:pointerover Border#BackBorder">
<Setter Property="BoxShadow" Value="{StaticResource TabRadioButtonShadows}" />
<Setter Property="Background" Value="{StaticResource TabRadioButtonPointeroverBackgroundColor}" />
</Style>
<Style Selector="RadioButton.layout">
<Setter Property="FontFamily" Value="{StaticResource Font-Family}" />
<Setter Property="FontSize" Value="14" />
<Setter Property="FontWeight" Value="Bold" />
<Setter Property="Foreground" Value="{StaticResource Light}" />
<Setter Property="CornerRadius" Value="6" />
<Setter Property="Width" Value="48" />
<Setter Property="Height" Value="48" />
<Setter Property="Template">
<ControlTemplate>
<Grid Width="{TemplateBinding Width}">
<Border IsVisible="{TemplateBinding IsChecked}"
Width="{TemplateBinding Width}"
Height="{TemplateBinding Height}"
CornerRadius="{TemplateBinding CornerRadius}"
BorderThickness="0"
BoxShadow="{StaticResource TabRadioButtonShadows}"
BorderBrush="{StaticResource Light}"
Background="{StaticResource TabRadioButtonCheckedBackgroundColor}"/>
<Border x:Name="BackBorder"
Width="{TemplateBinding Width}"
Height="{TemplateBinding Height}"
CornerRadius="{TemplateBinding CornerRadius}"
Padding="10"
BorderThickness="0"
BorderBrush="{StaticResource Light}"
Background="Transparent">
<Grid HorizontalAlignment="Center"
VerticalAlignment="Center">
<PathIcon x:Name="ButtonIcon"
Width="30"
Height="30"
Foreground="{StaticResource Light}" />
</Grid>
</Border>
</Grid>
</ControlTemplate>
</Setter>
</Style>
<Style Selector="RadioButton.layout:checked /template/ PathIcon#ButtonIcon">
<Setter Property="Foreground" Value="{StaticResource Light}" />
</Style>
<Style Selector="RadioButton.layout:checked /template/ TextBlock#ButtonText">
<Setter Property="Foreground" Value="#3A62CB" />
</Style>
<Style Selector="RadioButton.layout:pointerover Border#BackBorder">
<Setter Property="BoxShadow" Value="{StaticResource TabRadioButtonShadows}" />
<Setter Property="Background" Value="{StaticResource TabRadioButtonPointeroverBackgroundColor}" />
</Style>
<!-- <Style Selector="RadioButton.tab-left.small"> -->
<!-- <Setter Property="FontSize" Value="12" /> -->
<!-- </Style> -->
<!-- <Style Selector="RadioButton.tab-left.small /template/ PathIcon#ButtonIcon"> -->
<!-- <Setter Property="Width" Value="15" /> -->
<!-- <Setter Property="Height" Value="15" /> -->
<!-- </Style> -->
<!-- <Style Selector="RadioButton.tab-left.small /template/ Border"> -->
<!-- <Setter Property="Height" Value="25" /> -->
<!-- </Style> -->
<Style Selector="RadioButton.home-app /template/ PathIcon#ButtonIcon">
<Setter Property="Data" Value="{StaticResource HomeAppData}" />
</Style>
<Style Selector="RadioButton.home-task /template/ PathIcon#ButtonIcon">
<Setter Property="Data" Value="{StaticResource HomeCenterData}" />
</Style>
<Style Selector="RadioButton.home-device /template/ PathIcon#ButtonIcon">
<Setter Property="Data" Value="{StaticResource SettingsDeviceData}" />
</Style>
<Style Selector="RadioButton.home-log /template/ PathIcon#ButtonIcon">
<Setter Property="Data" Value="{StaticResource SettingsLogData}" />
</Style>
<Style Selector="RadioButton.home-user /template/ PathIcon#ButtonIcon">
<Setter Property="Data" Value="{StaticResource SettingsUserData}" />
</Style>
<!-- -->
<!-- <Style Selector="RadioButton.center-event /template/ PathIcon#ButtonIcon"> -->
<!-- <Setter Property="Data" Value="{StaticResource CenterEventData}" /> -->
<!-- </Style> -->
<!-- <Style Selector="RadioButton.center-video /template/ PathIcon#ButtonIcon"> -->
<!-- <Setter Property="Data" Value="{StaticResource CenterVideoData}" /> -->
<!-- </Style> -->
<!-- <Style Selector="RadioButton.center-picture /template/ PathIcon#ButtonIcon"> -->
<!-- <Setter Property="Data" Value="{StaticResource CenterPictureData}" /> -->
<!-- </Style> -->
<!-- -->
<!-- <Style Selector="RadioButton.settings-region /template/ PathIcon#ButtonIcon"> -->
<!-- <Setter Property="Data" Value="{StaticResource SettingsRegionData}" /> -->
<!-- </Style> -->
<!-- <Style Selector="RadioButton.settings-device /template/ PathIcon#ButtonIcon"> -->
<!-- <Setter Property="Data" Value="{StaticResource SettingsDeviceData}" /> -->
<!-- </Style> -->
<!-- <Style Selector="RadioButton.settings-algo /template/ PathIcon#ButtonIcon"> -->
<!-- <Setter Property="Data" Value="{StaticResource SettingsAlgoData}" /> -->
<!-- </Style> -->
<!-- <Style Selector="RadioButton.settings-storage /template/ PathIcon#ButtonIcon"> -->
<!-- <Setter Property="Data" Value="{StaticResource SettingsStorageData}" /> -->
<!-- </Style> -->
<!-- <Style Selector="RadioButton.settings-config /template/ PathIcon#ButtonIcon"> -->
<!-- <Setter Property="Data" Value="{StaticResource SettingsConfigData}" /> -->
<!-- </Style> -->
<!-- <Style Selector="RadioButton.settings-user /template/ PathIcon#ButtonIcon"> -->
<!-- <Setter Property="Data" Value="{StaticResource SettingsUserData}" /> -->
<!-- </Style> -->
<!-- <Style Selector="RadioButton.settings-log /template/ PathIcon#ButtonIcon"> -->
<!-- <Setter Property="Data" Value="{StaticResource SettingsLogData}" /> -->
<!-- </Style> -->
<Style Selector="RadioButton.layout1 /template/ PathIcon#ButtonIcon">
<Setter Property="Data" Value="{StaticResource Layout1Data}" />
</Style>
<Style Selector="RadioButton.layout4 /template/ PathIcon#ButtonIcon">
<Setter Property="Data" Value="{StaticResource Layout4Data}" />
</Style>
<Style Selector="RadioButton.layout6 /template/ PathIcon#ButtonIcon">
<Setter Property="Data" Value="{StaticResource Layout6Data}" />
</Style>
<Style Selector="RadioButton.layout8 /template/ PathIcon#ButtonIcon">
<Setter Property="Data" Value="{StaticResource Layout8Data}" />
</Style>
<Style Selector="RadioButton.layout9 /template/ PathIcon#ButtonIcon">
<Setter Property="Data" Value="{StaticResource Layout9Data}" />
</Style>
<Style Selector="RadioButton.layout16 /template/ PathIcon#ButtonIcon">
<Setter Property="Data" Value="{StaticResource Layout16Data}" />
</Style>
</Styles>