mirror of
https://github.com/sourcegit-scm/sourcegit
synced 2025-06-08 04:15:00 +00:00
95 lines
No EOL
5.5 KiB
XML
95 lines
No EOL
5.5 KiB
XML
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
|
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
|
xmlns:controls="clr-namespace:SourceGit.Views.Controls">
|
|
<Style x:Key="Style.TextBox" TargetType="{x:Type TextBox}">
|
|
<Setter Property="SnapsToDevicePixels" Value="True"/>
|
|
<Setter Property="OverridesDefaultStyle" Value="True"/>
|
|
<Setter Property="FocusVisualStyle" Value="{x:Null}"/>
|
|
<Setter Property="VerticalAlignment" Value="Center"/>
|
|
<Setter Property="VerticalContentAlignment" Value="Center"/>
|
|
<Setter Property="Foreground" Value="{DynamicResource Brush.FG1}"/>
|
|
<Setter Property="CaretBrush" Value="{DynamicResource Brush.FG1}"/>
|
|
<Setter Property="Background" Value="Transparent"/>
|
|
<Setter Property="BorderBrush" Value="{DynamicResource Brush.Border1}"/>
|
|
<Setter Property="BorderThickness" Value="1"/>
|
|
<Setter Property="ContextMenu">
|
|
<Setter.Value>
|
|
<ContextMenu>
|
|
<MenuItem Command="ApplicationCommands.Copy" />
|
|
<MenuItem Command="ApplicationCommands.Cut" />
|
|
<MenuItem Command="ApplicationCommands.Paste" />
|
|
</ContextMenu>
|
|
</Setter.Value>
|
|
</Setter>
|
|
<Setter Property="Validation.ErrorTemplate">
|
|
<Setter.Value>
|
|
<ControlTemplate>
|
|
<AdornedElementPlaceholder x:Name="Target">
|
|
<Border x:Name="Border" BorderBrush="#FFDB000C" BorderThickness="1">
|
|
<Grid Background="Transparent" HorizontalAlignment="Right" VerticalAlignment="Top">
|
|
<Path Width="10" Height="10" Data="M 1,0 L8,0 L8,7 z" Fill="#FFDC000C"/>
|
|
<Popup x:Name="Tips" IsOpen="False" Placement="Right" VerticalOffset="-4" PlacementTarget="{Binding ElementName=Border}" AllowsTransparency="True">
|
|
<Grid Background="Transparent" Height="32">
|
|
<Border Background="#FFDB000C" Margin="4">
|
|
<Border.Effect>
|
|
<DropShadowEffect BlurRadius="4" ShadowDepth="0" Color="Black" Opacity=".8"/>
|
|
</Border.Effect>
|
|
</Border>
|
|
<Border Margin="4">
|
|
<TextBlock Foreground="White" Margin="12,0" VerticalAlignment="Center" Text="{Binding [0].ErrorContent}"/>
|
|
</Border>
|
|
</Grid>
|
|
</Popup>
|
|
</Grid>
|
|
</Border>
|
|
</AdornedElementPlaceholder>
|
|
|
|
<ControlTemplate.Triggers>
|
|
<MultiDataTrigger>
|
|
<MultiDataTrigger.Conditions>
|
|
<Condition Binding="{Binding ElementName=Target, Path=AdornedElement.IsKeyboardFocusWithin, Mode=OneWay}" Value="True" />
|
|
<Condition Binding="{Binding ElementName=Target, Path=AdornedElement.(Validation.HasError), Mode=OneWay}" Value="True" />
|
|
</MultiDataTrigger.Conditions>
|
|
<Setter TargetName="Tips" Property="IsOpen" Value="True"/>
|
|
</MultiDataTrigger>
|
|
</ControlTemplate.Triggers>
|
|
</ControlTemplate>
|
|
</Setter.Value>
|
|
</Setter>
|
|
<Setter Property="Template">
|
|
<Setter.Value>
|
|
<ControlTemplate TargetType="{x:Type TextBox}">
|
|
<Border
|
|
x:Name="Border"
|
|
Background="{TemplateBinding Background}"
|
|
SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}"
|
|
BorderThickness="{TemplateBinding BorderThickness}"
|
|
BorderBrush="{TemplateBinding BorderBrush}">
|
|
<ScrollViewer
|
|
x:Name="PART_ContentHost"
|
|
Margin="{TemplateBinding Padding}"
|
|
VerticalAlignment="Center"
|
|
Background="Transparent"
|
|
BorderThickness="0"
|
|
IsTabStop="False"
|
|
RenderOptions.ClearTypeHint="Enabled"
|
|
CanContentScroll="True"
|
|
SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}"/>
|
|
</Border>
|
|
|
|
<ControlTemplate.Triggers>
|
|
<Trigger Property="IsMouseOver" Value="true">
|
|
<Setter TargetName="Border" Property="BorderBrush" Value="{DynamicResource Brush.Accent1}"/>
|
|
</Trigger>
|
|
<Trigger Property="AcceptsReturn" Value="True">
|
|
<Setter TargetName="PART_ContentHost" Property="VerticalAlignment" Value="Top"/>
|
|
</Trigger>
|
|
</ControlTemplate.Triggers>
|
|
</ControlTemplate>
|
|
</Setter.Value>
|
|
</Setter>
|
|
</Style>
|
|
|
|
<Style TargetType="{x:Type TextBox}" BasedOn="{StaticResource Style.TextBox}"/>
|
|
<Style TargetType="{x:Type controls:TextEdit}" BasedOn="{StaticResource Style.TextBox}"/>
|
|
</ResourceDictionary> |