246 lines
21 KiB
XML
246 lines
21 KiB
XML
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
|
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
|
xmlns:c="clr-namespace:Tweaky"
|
|
xmlns:e="clr-namespace:Tweaky">
|
|
|
|
<Style x:Key="{x:Type e:Float4Editor}" TargetType="{x:Type Control}">
|
|
<Setter Property="Template">
|
|
<Setter.Value>
|
|
<ControlTemplate TargetType="{x:Type Control}">
|
|
<Grid>
|
|
<Grid.ColumnDefinitions>
|
|
<ColumnDefinition Width="Auto" />
|
|
<ColumnDefinition />
|
|
<ColumnDefinition Width="Auto" />
|
|
<ColumnDefinition Width="Auto" />
|
|
<ColumnDefinition />
|
|
<ColumnDefinition Width="Auto" />
|
|
<ColumnDefinition Width="Auto" />
|
|
<ColumnDefinition />
|
|
<ColumnDefinition Width="Auto" />
|
|
<ColumnDefinition Width="Auto" />
|
|
<ColumnDefinition />
|
|
<ColumnDefinition Width="Auto" />
|
|
</Grid.ColumnDefinitions>
|
|
<TextBlock Grid.Column="0" Margin="2,0,2,1" VerticalAlignment="Center">X:</TextBlock>
|
|
<TextBlock Grid.Column="3" Margin="2,0,2,1" VerticalAlignment="Center">Y:</TextBlock>
|
|
<TextBlock Grid.Column="6" Margin="2,0,2,1" VerticalAlignment="Center">Z:</TextBlock>
|
|
<TextBlock Grid.Column="9" Margin="2,0,2,1" VerticalAlignment="Center">W:</TextBlock>
|
|
<Slider SmallChange="{Binding Step, RelativeSource={RelativeSource TemplatedParent}}" Minimum="{Binding Minimum, RelativeSource={RelativeSource TemplatedParent}}" Maximum="{Binding Maximum, RelativeSource={RelativeSource TemplatedParent}}" Grid.Column="1" VerticalAlignment="Stretch" IsEnabled="{Binding IsEnabled, RelativeSource={RelativeSource TemplatedParent}}" Value="{Binding X, RelativeSource={RelativeSource TemplatedParent}, Mode=TwoWay}" />
|
|
<Slider SmallChange="{Binding Step, RelativeSource={RelativeSource TemplatedParent}}" Minimum="{Binding Minimum, RelativeSource={RelativeSource TemplatedParent}}" Maximum="{Binding Maximum, RelativeSource={RelativeSource TemplatedParent}}" Grid.Column="4" VerticalAlignment="Stretch" IsEnabled="{Binding IsEnabled, RelativeSource={RelativeSource TemplatedParent}}" Value="{Binding Y, RelativeSource={RelativeSource TemplatedParent}, Mode=TwoWay}" />
|
|
<Slider SmallChange="{Binding Step, RelativeSource={RelativeSource TemplatedParent}}" Minimum="{Binding Minimum, RelativeSource={RelativeSource TemplatedParent}}" Maximum="{Binding Maximum, RelativeSource={RelativeSource TemplatedParent}}" Grid.Column="7" VerticalAlignment="Stretch" IsEnabled="{Binding IsEnabled, RelativeSource={RelativeSource TemplatedParent}}" Value="{Binding Z, RelativeSource={RelativeSource TemplatedParent}, Mode=TwoWay}" />
|
|
<Slider SmallChange="{Binding Step, RelativeSource={RelativeSource TemplatedParent}}" Minimum="{Binding Minimum, RelativeSource={RelativeSource TemplatedParent}}" Maximum="{Binding Maximum, RelativeSource={RelativeSource TemplatedParent}}" Grid.Column="10" VerticalAlignment="Stretch" IsEnabled="{Binding IsEnabled, RelativeSource={RelativeSource TemplatedParent}}" Value="{Binding W, RelativeSource={RelativeSource TemplatedParent}, Mode=TwoWay}" />
|
|
<TextBlock Grid.Column="2" IsEnabled="{Binding IsEnabled, RelativeSource={RelativeSource TemplatedParent}}" Text="{Binding X, RelativeSource={RelativeSource TemplatedParent}, StringFormat=N2}" />
|
|
<TextBlock Grid.Column="5" IsEnabled="{Binding IsEnabled, RelativeSource={RelativeSource TemplatedParent}}" Text="{Binding Y, RelativeSource={RelativeSource TemplatedParent}, StringFormat=N2}" />
|
|
<TextBlock Grid.Column="8" IsEnabled="{Binding IsEnabled, RelativeSource={RelativeSource TemplatedParent}}" Text="{Binding Z, RelativeSource={RelativeSource TemplatedParent}, StringFormat=N2}" />
|
|
<TextBlock Grid.Column="11" IsEnabled="{Binding IsEnabled, RelativeSource={RelativeSource TemplatedParent}}" Text="{Binding W, RelativeSource={RelativeSource TemplatedParent}, StringFormat=N2}" />
|
|
</Grid>
|
|
</ControlTemplate>
|
|
</Setter.Value>
|
|
</Setter>
|
|
</Style>
|
|
|
|
<Style x:Key="{x:Type e:ColorEditorBase}" TargetType="{x:Type e:ColorEditorBase}">
|
|
<Setter Property="Template">
|
|
<Setter.Value>
|
|
<ControlTemplate TargetType="{x:Type e:ColorEditorBase}">
|
|
<Grid>
|
|
<Grid.ColumnDefinitions>
|
|
<ColumnDefinition Width="Auto" />
|
|
<ColumnDefinition Width="*" />
|
|
</Grid.ColumnDefinitions>
|
|
<Border x:Name="SVGradientBorder" Margin="5" BorderThickness="1" CornerRadius="2" Height="64" Width="64">
|
|
<Border.BorderBrush>
|
|
<LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
|
|
<GradientStop Color="#FFFFFFFF" Offset="0" />
|
|
<GradientStop Color="#80FFFFFF" Offset="1" />
|
|
</LinearGradientBrush>
|
|
</Border.BorderBrush>
|
|
<Grid>
|
|
<Border x:Name="PART_SatValImage" Background="{Binding HueBrush, RelativeSource={RelativeSource TemplatedParent}}" />
|
|
<Border IsHitTestVisible="False">
|
|
<Border.Background>
|
|
<LinearGradientBrush EndPoint="1,0.5" StartPoint="0,0.5">
|
|
<GradientStop Color="White" Offset="0" />
|
|
<GradientStop Color="Transparent" Offset="1" />
|
|
</LinearGradientBrush>
|
|
</Border.Background>
|
|
</Border>
|
|
<Border IsHitTestVisible="False">
|
|
<Border.Background>
|
|
<LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
|
|
<GradientStop Color="#00000000" Offset="0" />
|
|
<GradientStop Color="Black" Offset="1" />
|
|
</LinearGradientBrush>
|
|
</Border.Background>
|
|
</Border>
|
|
<Border CornerRadius="1" BorderThickness="1" IsHitTestVisible="False">
|
|
<Border.BorderBrush>
|
|
<LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
|
|
<GradientStop Color="#80000000" Offset="0" />
|
|
<GradientStop Color="#40000000" Offset="1" />
|
|
</LinearGradientBrush>
|
|
</Border.BorderBrush>
|
|
</Border>
|
|
<Canvas IsHitTestVisible="False" Margin="-3">
|
|
<Path Canvas.Left="{Binding SatIndicatorPosition, RelativeSource={RelativeSource TemplatedParent}}" Canvas.Top="{Binding ValIndicatorPosition, RelativeSource={RelativeSource TemplatedParent}}" x:Name="SatValIndicator" Data="M0,3 L3,0 L6,3 L3,6 Z" Stroke="{DynamicResource Foreground}" Fill="{DynamicResource DarkBackground}">
|
|
<Path.Effect>
|
|
<DropShadowEffect ShadowDepth="1" BlurRadius="1" Opacity="0.5" />
|
|
</Path.Effect>
|
|
</Path>
|
|
</Canvas>
|
|
</Grid>
|
|
</Border>
|
|
|
|
<Grid Grid.Column="1" Margin="0,5,5,5">
|
|
<Grid.ColumnDefinitions>
|
|
<ColumnDefinition Width="Auto" />
|
|
<ColumnDefinition />
|
|
<ColumnDefinition Width="Auto" />
|
|
<ColumnDefinition Width="Auto" />
|
|
<ColumnDefinition />
|
|
<ColumnDefinition Width="Auto" />
|
|
<ColumnDefinition Width="Auto" />
|
|
<ColumnDefinition />
|
|
<ColumnDefinition Width="Auto" />
|
|
<ColumnDefinition Width="Auto" />
|
|
<ColumnDefinition />
|
|
<ColumnDefinition Width="Auto" />
|
|
</Grid.ColumnDefinitions>
|
|
<Grid.RowDefinitions>
|
|
<RowDefinition Height="Auto" />
|
|
<RowDefinition Height="Auto" />
|
|
<RowDefinition Height="Auto" />
|
|
</Grid.RowDefinitions>
|
|
|
|
<Grid Grid.ColumnSpan="8">
|
|
<Grid.ColumnDefinitions>
|
|
<ColumnDefinition Width="*" />
|
|
<ColumnDefinition Width="Auto" />
|
|
</Grid.ColumnDefinitions>
|
|
<Border x:Name="HGradientBorder" BorderThickness="1" Height="30" Margin="0,0,10,0" Background="{DynamicResource PseudoTransparent}" CornerRadius="2">
|
|
<Border.BorderBrush>
|
|
<LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
|
|
<GradientStop Color="#FFFFFFFF" Offset="0" />
|
|
<GradientStop Color="#80FFFFFF" Offset="1" />
|
|
</LinearGradientBrush>
|
|
</Border.BorderBrush>
|
|
|
|
<Grid>
|
|
<Image x:Name="PART_HueImage" Stretch="Fill" Source="/Tweaky;component/hue.png" Height="8" />
|
|
<Canvas IsHitTestVisible="False" Margin="-3">
|
|
<Path Canvas.Left="{Binding HueIndicatorPosition, RelativeSource={RelativeSource TemplatedParent}}" x:Name="HueIndicator" Data="M0,0 L6,0 L3,3 Z M3,3 L3,31 M3,31 L0,34 L6,34 Z" Stroke="{DynamicResource Foreground}" Fill="{DynamicResource DarkBackground}">
|
|
<Path.Effect>
|
|
<DropShadowEffect ShadowDepth="1" BlurRadius="1" Opacity="0.5" Color="White" />
|
|
</Path.Effect>
|
|
</Path>
|
|
</Canvas>
|
|
<Border CornerRadius="1" BorderThickness="1" IsHitTestVisible="False">
|
|
<Border.BorderBrush>
|
|
<LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
|
|
<GradientStop Color="#80000000" Offset="0" />
|
|
<GradientStop Color="#40000000" Offset="1" />
|
|
</LinearGradientBrush>
|
|
</Border.BorderBrush>
|
|
</Border>
|
|
</Grid>
|
|
</Border>
|
|
<Border x:Name="ColorPreviewBorder" BorderThickness="1" Width="200" Height="30" Grid.Column="1" CornerRadius="2">
|
|
<Border.BorderBrush>
|
|
<LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
|
|
<GradientStop Color="#FFFFFFFF" Offset="0" />
|
|
<GradientStop Color="#80FFFFFF" Offset="1" />
|
|
</LinearGradientBrush>
|
|
</Border.BorderBrush>
|
|
<Border CornerRadius="1" BorderThickness="1">
|
|
<Border.BorderBrush>
|
|
<LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
|
|
<GradientStop Color="#80000000" Offset="0" />
|
|
<GradientStop Color="#40000000" Offset="1" />
|
|
</LinearGradientBrush>
|
|
</Border.BorderBrush>
|
|
<Grid>
|
|
<Grid.RowDefinitions>
|
|
<RowDefinition />
|
|
<RowDefinition />
|
|
</Grid.RowDefinitions>
|
|
<Grid.ColumnDefinitions>
|
|
<ColumnDefinition />
|
|
<ColumnDefinition />
|
|
<ColumnDefinition />
|
|
<ColumnDefinition />
|
|
<ColumnDefinition />
|
|
<ColumnDefinition />
|
|
<ColumnDefinition />
|
|
<ColumnDefinition />
|
|
<ColumnDefinition />
|
|
<ColumnDefinition />
|
|
<ColumnDefinition />
|
|
<ColumnDefinition />
|
|
<ColumnDefinition />
|
|
<ColumnDefinition />
|
|
</Grid.ColumnDefinitions>
|
|
<Border Background="White" Grid.Row="0" Grid.Column="0" />
|
|
<Border Background="Silver" Grid.Row="1" Grid.Column="0" />
|
|
<Border Background="Silver" Grid.Row="0" Grid.Column="1" />
|
|
<Border Background="White" Grid.Row="1" Grid.Column="1" />
|
|
<Border Background="White" Grid.Row="0" Grid.Column="2" />
|
|
<Border Background="Silver" Grid.Row="1" Grid.Column="2" />
|
|
<Border Background="Silver" Grid.Row="0" Grid.Column="3" />
|
|
<Border Background="White" Grid.Row="1" Grid.Column="3" />
|
|
<Border Background="White" Grid.Row="0" Grid.Column="4" />
|
|
<Border Background="Silver" Grid.Row="1" Grid.Column="4" />
|
|
<Border Background="Silver" Grid.Row="0" Grid.Column="5" />
|
|
<Border Background="White" Grid.Row="1" Grid.Column="5" />
|
|
<Border Background="White" Grid.Row="0" Grid.Column="6" />
|
|
<Border Background="Silver" Grid.Row="1" Grid.Column="6" />
|
|
<Border Background="Silver" Grid.Row="0" Grid.Column="7" />
|
|
<Border Background="White" Grid.Row="1" Grid.Column="7" />
|
|
<Border Background="White" Grid.Row="0" Grid.Column="8" />
|
|
<Border Background="Silver" Grid.Row="1" Grid.Column="8" />
|
|
<Border Background="Silver" Grid.Row="0" Grid.Column="9" />
|
|
<Border Background="White" Grid.Row="1" Grid.Column="9" />
|
|
<Border Background="White" Grid.Row="0" Grid.Column="10" />
|
|
<Border Background="Silver" Grid.Row="1" Grid.Column="10" />
|
|
<Border Background="Silver" Grid.Row="0" Grid.Column="11" />
|
|
<Border Background="White" Grid.Row="1" Grid.Column="11" />
|
|
<Border Background="White" Grid.Row="0" Grid.Column="12" />
|
|
<Border Background="Silver" Grid.Row="1" Grid.Column="12" />
|
|
<Border Background="Silver" Grid.Row="0" Grid.Column="13" />
|
|
<Border Background="White" Grid.Row="1" Grid.Column="13" />
|
|
<Border Grid.RowSpan="2" Grid.ColumnSpan="7" Background="{Binding ExternalBackgroundBrush, RelativeSource={RelativeSource TemplatedParent}}" Cursor="UpArrow" x:Name="PART_OriginalColorBorder" />
|
|
<Border Grid.RowSpan="2" Grid.Column="7" Grid.ColumnSpan="7" Background="{Binding BackgroundBrush, RelativeSource={RelativeSource TemplatedParent}}" />
|
|
</Grid>
|
|
</Border>
|
|
</Border>
|
|
</Grid>
|
|
<Border Grid.Row="1" Height="10" />
|
|
<TextBlock Grid.Row="3" Margin="2" VerticalAlignment="Center">Red:</TextBlock>
|
|
<Slider Grid.Row="3" Margin="2" Value="{Binding Red, RelativeSource={RelativeSource TemplatedParent}, Mode=TwoWay}" Maximum="1" Grid.Column="1" />
|
|
<TextBlock Grid.Row="3" Margin="2" Grid.Column="2" VerticalAlignment="Center" Text="{Binding Red, StringFormat=N2, RelativeSource={RelativeSource TemplatedParent}}" />
|
|
<TextBlock Grid.Row="3" Margin="2" Grid.Column="3" VerticalAlignment="Center">Green:</TextBlock>
|
|
<Slider Grid.Row="3" Margin="2" Value="{Binding Green, RelativeSource={RelativeSource TemplatedParent}, Mode=TwoWay}" Maximum="1" Grid.Column="4" />
|
|
<TextBlock Grid.Row="3" Margin="2" Grid.Column="5" VerticalAlignment="Center" Text="{Binding Green, StringFormat=N2, RelativeSource={RelativeSource TemplatedParent}}" />
|
|
<TextBlock Grid.Row="3" Margin="2" Grid.Column="6" VerticalAlignment="Center">Blue:</TextBlock>
|
|
<Slider Grid.Row="3" Margin="2" Value="{Binding Blue, RelativeSource={RelativeSource TemplatedParent}, Mode=TwoWay}" Maximum="1" Grid.Column="7" />
|
|
<TextBlock Grid.Row="3" Margin="2" Grid.Column="8" VerticalAlignment="Center" Text="{Binding Blue, StringFormat=N2, RelativeSource={RelativeSource TemplatedParent}}" />
|
|
<TextBlock Visibility="{Binding AlphaGuiVisibility, RelativeSource={RelativeSource TemplatedParent}}" Grid.Row="3" Margin="2" Grid.Column="9" VerticalAlignment="Center">Alpha:</TextBlock>
|
|
<Slider Visibility="{Binding AlphaGuiVisibility, RelativeSource={RelativeSource TemplatedParent}}" Grid.Row="3" Margin="2" Maximum="1" Value="{Binding Alpha, RelativeSource={RelativeSource TemplatedParent}, Mode=TwoWay}" Grid.Column="10" />
|
|
<TextBlock Grid.Row="3" Margin="2" Grid.Column="11" VerticalAlignment="Center" Text="{Binding Alpha, StringFormat=N2, RelativeSource={RelativeSource TemplatedParent}}" />
|
|
</Grid>
|
|
</Grid>
|
|
</ControlTemplate>
|
|
</Setter.Value>
|
|
</Setter>
|
|
<Setter Property="Slider.Maximum" Value="255" />
|
|
<Setter Property="Slider.LargeChange" Value="16" />
|
|
<Setter Property="Slider.SmallChange" Value="1" />
|
|
</Style>
|
|
|
|
<Style x:Key="{x:Type e:FloatArrayColorEditor}" TargetType="{x:Type e:FloatArrayColorEditor}" BasedOn="{StaticResource {x:Type e:ColorEditorBase}}">
|
|
<Setter Property="Slider.Maximum" Value="1" />
|
|
<Setter Property="Slider.LargeChange" Value="0.1" />
|
|
<Setter Property="Slider.SmallChange" Value="0.01" />
|
|
</Style>
|
|
|
|
</ResourceDictionary> |