Skip to content

Commit

Permalink
Move each control style into a separate resource dictionary
Browse files Browse the repository at this point in the history
  • Loading branch information
Evangelink authored and punker76 committed Sep 25, 2019
1 parent 9098cc8 commit b1bf70f
Show file tree
Hide file tree
Showing 43 changed files with 2,931 additions and 2,868 deletions.
172 changes: 172 additions & 0 deletions src/MahApps.Metro/Styles/Controls.Buttons.Mui.xaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,172 @@
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:converters="clr-namespace:MahApps.Metro.Converters">

<Style x:Key="MahApps.Styles.Button.System.Base.Mui" TargetType="ButtonBase">
<Setter Property="Background" Value="Transparent"/>
<Setter Property="BorderThickness" Value="0"/>
<Setter Property="HorizontalContentAlignment" Value="Center"/>
<Setter Property="VerticalContentAlignment" Value="Center"/>
<Setter Property="Padding" Value="1"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type ButtonBase}">
<Border Name="Chrome"
Background="{TemplateBinding Background}"
BorderThickness="{TemplateBinding BorderThickness}"
BorderBrush="{TemplateBinding BorderBrush}"
SnapsToDevicePixels="true">
<ContentPresenter Margin="{TemplateBinding Padding}"
VerticalAlignment="{TemplateBinding VerticalContentAlignment}"
HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}"
RecognizesAccessKey="True"
SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}"/>
</Border>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>

<Style x:Key="MahApps.Styles.Button.System.Alert.Mui" TargetType="ButtonBase" BasedOn="{StaticResource MahApps.Styles.Button.System.Base.Mui}">
<Setter Property="Cursor" Value="Hand" />
<Setter Property="Margin" Value="8"/>
<Setter Property="Padding" Value="4"/>
<Style.Triggers>
<Trigger Property="IsMouseOver" Value="True">
<Setter Property="Opacity" Value=".7" />
</Trigger>
<Trigger Property="IsPressed" Value="True">
<Setter Property="Opacity" Value=".4" />
</Trigger>
</Style.Triggers>
</Style>

<Style x:Key="MahApps.Styles.Button.System.Mui" TargetType="ButtonBase" BasedOn="{StaticResource MahApps.Styles.Button.System.Base.Mui}">
<Setter Property="Width" Value="{DynamicResource MahApps.Sizes.Button.System.Width.Mui}" />
<Setter Property="Height" Value="{DynamicResource MahApps.Sizes.Button.System.Height.Mui}" />
<Setter Property="Foreground" Value="{DynamicResource MahApps.Brushes.ButtonText.Mui}"/>
<Style.Triggers>
<Trigger Property="IsMouseOver" Value="True">
<Setter Property="Background" Value="{DynamicResource MahApps.Brushes.SystemButtonBackgroundOnMoseOver.Mui}" />
<Setter Property="Foreground" Value="{DynamicResource MahApps.Brushes.SystemButtonForegroundOnMoseOver.Mui}"/>
</Trigger>
<Trigger Property="IsPressed" Value="True">
<Setter Property="Background" Value="{DynamicResource MahApps.Brushes.SystemButtonBackgroundIsPressed.Mui}" />
<Setter Property="Foreground" Value="{DynamicResource MahApps.Brushes.SystemButtonForegroundIsPressed.Mui}" />
</Trigger>
<Trigger Property="IsEnabled" Value="false">
<Setter Property="Foreground" Value="{DynamicResource MahApps.Brushes.ButtonTextDisabled.Mui}" />
</Trigger>
</Style.Triggers>
</Style>

<Style x:Key="MahApps.Styles.Button.System.Close.Mui" TargetType="ButtonBase" BasedOn="{StaticResource MahApps.Styles.Button.System.Mui}">
<Setter Property="Width" Value="{DynamicResource MahApps.Sizes.Button.Close.Width.Mui}" />
<Setter Property="Background" Value="{DynamicResource MahApps.Brushes.CloseButtonBackground.Mui}" />
<Style.Triggers>
<Trigger Property="IsMouseOver" Value="True">
<Setter Property="Background" Value="{DynamicResource MahApps.Brushes.CloseButtonBackgroundOnMoseOver.Mui}" />
<Setter Property="Foreground" Value="{DynamicResource MahApps.Brushes.CloseButtonForegroundOnMoseOver.Mui}"/>
</Trigger>
<Trigger Property="IsPressed" Value="True">
<Setter Property="Background" Value="{DynamicResource MahApps.Brushes.CloseButtonBackgroundIsPressed.Mui}" />
<Setter Property="Foreground" Value="{DynamicResource MahApps.Brushes.CloseButtonForegroundIsPressed.Mui}" />
</Trigger>
<Trigger Property="IsEnabled" Value="false">
<Setter Property="Foreground" Value="{DynamicResource MahApps.Brushes.ButtonTextDisabled.Mui}" />
</Trigger>
</Style.Triggers>
</Style>

<Style x:Key="MahApps.Styles.Button.System.Link.Mui" TargetType="ButtonBase" BasedOn="{StaticResource MahApps.Styles.Button.System.Base.Mui}" >
<Setter Property="Foreground" Value="{DynamicResource MahApps.Brushes.LinkButtonText.Mui}"/>
<Setter Property="Width" Value="NaN" />
<Setter Property="Height" Value="NaN" />
<Setter Property="FontFamily" Value="Segoe UI" />
<Setter Property="FontSize" Value="11" />
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type ButtonBase}">
<Border Name="Chrome"
Background="{TemplateBinding Background}"
BorderThickness="{TemplateBinding BorderThickness}"
BorderBrush="{TemplateBinding BorderBrush}"
SnapsToDevicePixels="true">
<TextBlock DataContext="{TemplateBinding Content}"
Text="{Binding Converter={converters:ToUpperConverter}}"
Margin="{TemplateBinding Padding}"
VerticalAlignment="{TemplateBinding VerticalContentAlignment}"
HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}"
SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}"/>
</Border>
</ControlTemplate>
</Setter.Value>
</Setter>
<Style.Triggers>
<Trigger Property="IsMouseOver" Value="True">
<Setter Property="Foreground" Value="{DynamicResource MahApps.Brushes.LinkButtonTextHover.Mui}"/>
</Trigger>
<Trigger Property="IsPressed" Value="True">
<Setter Property="Foreground" Value="{DynamicResource MahApps.Brushes.LinkButtonTextPressed.Mui}" />
</Trigger>
<Trigger Property="IsEnabled" Value="false">
<Setter Property="Foreground" Value="{DynamicResource MahApps.Brushes.LinkButtonTextDisabled.Mui}" />
</Trigger>
</Style.Triggers>
</Style>

<Style x:Key="MahApps.Styles.Button.Base.Mui" TargetType="{x:Type ButtonBase}">
<Setter Property="FocusVisualStyle" Value="{x:Null}"/>
<Setter Property="Background" Value="{DynamicResource MahApps.Brushes.ButtonBackground.Mui}"/>
<Setter Property="BorderBrush" Value="{DynamicResource MahApps.Brushes.ButtonBorder.Mui}"/>
<Setter Property="BorderThickness" Value="1"/>
<Setter Property="Foreground" Value="{DynamicResource MahApps.Brushes.ButtonText.Mui}"/>
<Setter Property="HorizontalContentAlignment" Value="Center"/>
<Setter Property="VerticalContentAlignment" Value="Center"/>
<Setter Property="Padding" Value="16,3,16,5"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type ButtonBase}">
<Border Name="Chrome"
Background="{TemplateBinding Background}"
BorderBrush="{TemplateBinding BorderBrush}"
BorderThickness="{TemplateBinding BorderThickness}"
SnapsToDevicePixels="true">
<ContentPresenter Name="Presenter" Margin="{TemplateBinding Padding}"
VerticalAlignment="{TemplateBinding VerticalContentAlignment}"
HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}"
RecognizesAccessKey="True"
SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}"/>
</Border>
<ControlTemplate.Triggers>
<Trigger Property="IsEnabled" Value="false">
<Setter Property="Foreground" Value="{DynamicResource MahApps.Brushes.ButtonTextDisabled.Mui}"/>
</Trigger>
<Trigger Property="IsMouseOver" Value="True">
<Setter Property="Background" Value="{DynamicResource MahApps.Brushes.ButtonBackgroundHover.Mui}" />
<Setter Property="BorderBrush" Value="{DynamicResource MahApps.Brushes.ButtonBorderHover.Mui}"/>
<Setter Property="Foreground" Value="{DynamicResource MahApps.Brushes.ButtonTextHover.Mui}"/>
</Trigger>
<Trigger Property="IsPressed" Value="True">
<Setter Property="Background" Value="{DynamicResource MahApps.Brushes.ButtonBackgroundPressed.Mui}" />
<Setter Property="BorderBrush" Value="{DynamicResource MahApps.Brushes.ButtonBorderPressed.Mui}"/>
<Setter Property="Foreground" Value="{DynamicResource MahApps.Brushes.ButtonTextPressed.Mui}"/>
</Trigger>
<Trigger Property="IsFocused" Value="true">
<Setter TargetName="Chrome" Property="BorderBrush" Value="{DynamicResource MahApps.Brushes.Accent.Mui}" />
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>

<Style x:Key="MahApps.Styles.ToggleButton.Mui" BasedOn="{StaticResource MahApps.Styles.Button.Base.Mui}" TargetType="{x:Type ToggleButton}"/>

<Style x:Key="MahApps.Styles.RepeatButton.Mui" BasedOn="{StaticResource MahApps.Styles.Button.Base.Mui}" TargetType="{x:Type RepeatButton}">
<Setter Property="Stylus.IsPressAndHoldEnabled" Value="false"/>
</Style>

<Style x:Key="MahApps.Styles.Button.Mui" BasedOn="{StaticResource MahApps.Styles.Button.Base.Mui}" TargetType="{x:Type Button}"/>

</ResourceDictionary>

0 comments on commit b1bf70f

Please sign in to comment.