2020-08-06 01:01:10 -07:00
|
|
|
<UserControl x:Class="SourceGit.UI.DiffViewer"
|
|
|
|
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
|
|
|
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
|
|
|
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
|
|
|
|
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
|
2020-11-19 23:45:04 -08:00
|
|
|
xmlns:sourcegit="clr-namespace:SourceGit"
|
|
|
|
mc:Ignorable="d"
|
2020-08-06 01:01:10 -07:00
|
|
|
FontFamily="Consolas">
|
|
|
|
<Border BorderThickness="1" BorderBrush="{StaticResource Brush.Border2}">
|
2020-11-24 01:14:44 -08:00
|
|
|
<Grid x:Name="area" SizeChanged="OnSizeChanged">
|
2020-08-06 01:01:10 -07:00
|
|
|
<Grid.RowDefinitions>
|
|
|
|
<RowDefinition Height="26"/>
|
|
|
|
<RowDefinition Height="*"/>
|
|
|
|
</Grid.RowDefinitions>
|
|
|
|
|
2020-11-24 01:14:44 -08:00
|
|
|
<Grid.Resources>
|
|
|
|
<Style x:Key="Style.DataGridText.LineNumber" TargetType="{x:Type TextBlock}">
|
|
|
|
<Setter Property="FontFamily" Value="Consolas"/>
|
|
|
|
<Setter Property="Foreground" Value="{StaticResource Brush.FG}"/>
|
|
|
|
<Setter Property="HorizontalAlignment" Value="Right"/>
|
|
|
|
<Setter Property="VerticalAlignment" Value="Center"/>
|
|
|
|
<Setter Property="Padding" Value="8,0"/>
|
|
|
|
</Style>
|
|
|
|
|
|
|
|
<Style x:Key="Style.DataGridText.Block" TargetType="{x:Type TextBlock}">
|
|
|
|
<Setter Property="FontFamily" Value="Consolas"/>
|
|
|
|
<Setter Property="Foreground" Value="{StaticResource Brush.FG}"/>
|
|
|
|
<Setter Property="VerticalAlignment" Value="Center"/>
|
|
|
|
<Setter Property="Padding" Value="0"/>
|
|
|
|
</Style>
|
|
|
|
</Grid.Resources>
|
|
|
|
|
2020-08-06 01:01:10 -07:00
|
|
|
<Border Grid.Row="0" BorderBrush="{StaticResource Brush.Border2}" BorderThickness="0,0,0,1">
|
|
|
|
<Grid Margin="8,4">
|
|
|
|
<Grid.ColumnDefinitions>
|
|
|
|
<ColumnDefinition Width="Auto"/>
|
|
|
|
<ColumnDefinition Width="Auto"/>
|
|
|
|
<ColumnDefinition Width="*"/>
|
|
|
|
</Grid.ColumnDefinitions>
|
|
|
|
|
|
|
|
<StackPanel Grid.Column="0" x:Name="orgFileNamePanel" Orientation="Horizontal">
|
|
|
|
<Path Width="10" Style="{StaticResource Style.Icon}" Data="{StaticResource Icon.File}"/>
|
|
|
|
<TextBlock x:Name="orgFileName" Margin="4,0,0,0" VerticalAlignment="Center" Foreground="{StaticResource Brush.FG}"/>
|
|
|
|
<TextBlock Margin="8,0" VerticalAlignment="Center" Text="→" Foreground="{StaticResource Brush.FG}"/>
|
|
|
|
</StackPanel>
|
|
|
|
|
|
|
|
<StackPanel Grid.Column="1" Orientation="Horizontal">
|
|
|
|
<Path Width="10" Style="{StaticResource Style.Icon}" Data="{StaticResource Icon.File}"/>
|
|
|
|
<TextBlock x:Name="fileName" Margin="4,0" VerticalAlignment="Center" Foreground="{StaticResource Brush.FG}"/>
|
|
|
|
<Path x:Name="loading" Width="10" Style="{StaticResource Style.Icon}" Data="{StaticResource Icon.Loading}"/>
|
|
|
|
</StackPanel>
|
|
|
|
|
2020-11-19 23:45:04 -08:00
|
|
|
<StackPanel Grid.Column="2" x:Name="textChangeOptions" Orientation="Horizontal" HorizontalAlignment="Right">
|
2020-08-06 01:01:10 -07:00
|
|
|
<Button Width="26" Click="Go2Next" ToolTip="Next Difference" Background="Transparent">
|
|
|
|
<Path Width="10" Style="{StaticResource Style.Icon}" Data="{StaticResource Icon.MoveDown}"/>
|
|
|
|
</Button>
|
|
|
|
|
|
|
|
<Button Click="Go2Prev" ToolTip="Previous Difference" Background="Transparent">
|
|
|
|
<Path Width="10" Style="{StaticResource Style.Icon}" Data="{StaticResource Icon.MoveUp}"/>
|
|
|
|
</Button>
|
2020-11-19 23:45:04 -08:00
|
|
|
|
|
|
|
<ToggleButton
|
|
|
|
Margin="8,0,0,0"
|
|
|
|
Style="{StaticResource Style.ToggleButton.SplitDirection}"
|
|
|
|
ToolTip="Toggle One-Side/Two-Sides"
|
|
|
|
IsChecked="{Binding Source={x:Static sourcegit:App.Preference}, Path=UIUseOneSideDiff, Mode=TwoWay}"
|
|
|
|
Checked="ChangeDiffMode" Unchecked="ChangeDiffMode"/>
|
2020-08-06 01:01:10 -07:00
|
|
|
</StackPanel>
|
|
|
|
</Grid>
|
|
|
|
</Border>
|
|
|
|
|
2020-11-24 01:14:44 -08:00
|
|
|
<Grid Grid.Row="1" x:Name="textChangeTwoSides">
|
2020-08-06 01:01:10 -07:00
|
|
|
<Grid.ColumnDefinitions>
|
2020-11-24 01:14:44 -08:00
|
|
|
<ColumnDefinition Width="*"/>
|
|
|
|
<ColumnDefinition Width="*"/>
|
2020-08-06 01:01:10 -07:00
|
|
|
</Grid.ColumnDefinitions>
|
|
|
|
|
2020-11-24 01:14:44 -08:00
|
|
|
<DataGrid
|
|
|
|
Grid.Column="0"
|
|
|
|
x:Name="textChangeOldSide"
|
|
|
|
GridLinesVisibility="Vertical"
|
|
|
|
VerticalGridLinesBrush="{StaticResource Brush.Border2}"
|
|
|
|
FrozenColumnCount="1"
|
|
|
|
ScrollViewer.ScrollChanged="OnTwoSidesScroll"
|
|
|
|
ContextMenuOpening="OnTextChangeContextMenuOpening">
|
|
|
|
|
|
|
|
<DataGrid.RowStyle>
|
|
|
|
<Style TargetType="{x:Type DataGridRow}" BasedOn="{StaticResource Style.DataGridRow}">
|
|
|
|
<EventSetter Event="RequestBringIntoView" Handler="OnLineRequestBringIntoView"/>
|
|
|
|
</Style>
|
|
|
|
</DataGrid.RowStyle>
|
|
|
|
|
|
|
|
<DataGrid.Columns>
|
|
|
|
<DataGridTextColumn Width="Auto" IsReadOnly="True" Binding="{Binding OldLine}" ElementStyle="{StaticResource Style.DataGridText.LineNumber}"/>
|
|
|
|
|
|
|
|
<DataGridTemplateColumn Width="Auto" IsReadOnly="True">
|
|
|
|
<DataGridTemplateColumn.CellTemplate>
|
|
|
|
<DataTemplate>
|
|
|
|
<Grid>
|
|
|
|
<Border Background="{Binding BG}" BorderThickness="0"/>
|
|
|
|
<TextBlock Text="{Binding Content}" Background="Transparent" Foreground="{Binding FG}" FontFamily="Consolas" FontSize="12" FontStyle="{Binding Style}" Margin="0" Padding="0"/>
|
|
|
|
</Grid>
|
|
|
|
</DataTemplate>
|
|
|
|
</DataGridTemplateColumn.CellTemplate>
|
|
|
|
</DataGridTemplateColumn>
|
|
|
|
</DataGrid.Columns>
|
|
|
|
</DataGrid>
|
|
|
|
|
|
|
|
<DataGrid
|
2020-11-19 23:45:04 -08:00
|
|
|
Grid.Column="1"
|
2020-11-24 01:14:44 -08:00
|
|
|
x:Name="textChangeNewSide"
|
|
|
|
GridLinesVisibility="Vertical"
|
|
|
|
VerticalGridLinesBrush="{StaticResource Brush.Border2}"
|
|
|
|
FrozenColumnCount="1"
|
|
|
|
ScrollViewer.ScrollChanged="OnTwoSidesScroll"
|
|
|
|
ContextMenuOpening="OnTextChangeContextMenuOpening">
|
|
|
|
|
|
|
|
<DataGrid.RowStyle>
|
|
|
|
<Style TargetType="{x:Type DataGridRow}" BasedOn="{StaticResource Style.DataGridRow}">
|
|
|
|
<EventSetter Event="RequestBringIntoView" Handler="OnLineRequestBringIntoView"/>
|
|
|
|
</Style>
|
|
|
|
</DataGrid.RowStyle>
|
|
|
|
|
|
|
|
<DataGrid.Columns>
|
|
|
|
<DataGridTextColumn Width="Auto" IsReadOnly="True" Binding="{Binding NewLine}" ElementStyle="{StaticResource Style.DataGridText.LineNumber}"/>
|
|
|
|
|
|
|
|
<DataGridTemplateColumn Width="Auto" IsReadOnly="True">
|
|
|
|
<DataGridTemplateColumn.CellTemplate>
|
|
|
|
<DataTemplate>
|
|
|
|
<Grid>
|
|
|
|
<Border Background="{Binding BG}" BorderThickness="0"/>
|
|
|
|
<TextBlock Text="{Binding Content}" Background="Transparent" Foreground="{Binding FG}" FontFamily="Consolas" FontSize="12" FontStyle="{Binding Style}" Margin="0" Padding="0"/>
|
|
|
|
</Grid>
|
|
|
|
</DataTemplate>
|
|
|
|
</DataGridTemplateColumn.CellTemplate>
|
|
|
|
</DataGridTemplateColumn>
|
|
|
|
</DataGrid.Columns>
|
|
|
|
</DataGrid>
|
2020-08-06 01:01:10 -07:00
|
|
|
</Grid>
|
|
|
|
|
2020-11-24 01:14:44 -08:00
|
|
|
<DataGrid
|
|
|
|
Grid.Row="1"
|
|
|
|
x:Name="textChangeOneSide"
|
|
|
|
GridLinesVisibility="Vertical"
|
|
|
|
VerticalGridLinesBrush="{StaticResource Brush.Border2}"
|
|
|
|
FrozenColumnCount="2"
|
|
|
|
ContextMenuOpening="OnTextChangeContextMenuOpening">
|
|
|
|
|
|
|
|
<DataGrid.RowStyle>
|
|
|
|
<Style TargetType="{x:Type DataGridRow}" BasedOn="{StaticResource Style.DataGridRow}">
|
|
|
|
<EventSetter Event="RequestBringIntoView" Handler="OnLineRequestBringIntoView"/>
|
|
|
|
</Style>
|
|
|
|
</DataGrid.RowStyle>
|
|
|
|
|
|
|
|
<DataGrid.Columns>
|
|
|
|
<DataGridTextColumn Width="Auto" IsReadOnly="True" Binding="{Binding OldLine}" ElementStyle="{StaticResource Style.DataGridText.LineNumber}"/>
|
|
|
|
<DataGridTextColumn Width="Auto" IsReadOnly="True" Binding="{Binding NewLine}" ElementStyle="{StaticResource Style.DataGridText.LineNumber}"/>
|
|
|
|
|
|
|
|
<DataGridTemplateColumn Width="Auto" IsReadOnly="True">
|
|
|
|
<DataGridTemplateColumn.CellTemplate>
|
|
|
|
<DataTemplate>
|
|
|
|
<Grid>
|
|
|
|
<Border Background="{Binding BG}" BorderThickness="0"/>
|
|
|
|
<TextBlock Text="{Binding Content}" Background="Transparent" Foreground="{Binding FG}" FontFamily="Consolas" FontSize="12" FontStyle="{Binding Style}" Margin="0" Padding="0"/>
|
|
|
|
</Grid>
|
|
|
|
</DataTemplate>
|
|
|
|
</DataGridTemplateColumn.CellTemplate>
|
|
|
|
</DataGridTemplateColumn>
|
|
|
|
</DataGrid.Columns>
|
|
|
|
</DataGrid>
|
|
|
|
|
2020-08-06 01:01:10 -07:00
|
|
|
<Border x:Name="sizeChange" Grid.Row="1" ClipToBounds="True" Background="{StaticResource Brush.BG3}" Visibility="Collapsed">
|
|
|
|
<StackPanel Orientation="Vertical" VerticalAlignment="Center">
|
2020-09-25 01:30:28 -07:00
|
|
|
<Label x:Name="txtSizeChangeTitle" Content="BINARY DIFF" Margin="0,0,0,32" FontSize="18" FontWeight="UltraBold" Foreground="{StaticResource Brush.FG2}" HorizontalAlignment="Center"/>
|
2020-08-06 01:01:10 -07:00
|
|
|
<Path Width="64" Height="64" Style="{StaticResource Style.Icon}" Data="{StaticResource Icon.Binary}" Fill="{StaticResource Brush.FG2}"/>
|
|
|
|
<Grid Margin="0,16,0,0" HorizontalAlignment="Center" TextElement.FontSize="18" TextElement.FontWeight="UltraBold">
|
|
|
|
<Grid.RowDefinitions>
|
|
|
|
<RowDefinition Height="32"/>
|
|
|
|
<RowDefinition Height="32"/>
|
|
|
|
</Grid.RowDefinitions>
|
|
|
|
|
|
|
|
<Grid.ColumnDefinitions>
|
|
|
|
<ColumnDefinition Width="64"/>
|
|
|
|
<ColumnDefinition Width="Auto"/>
|
|
|
|
</Grid.ColumnDefinitions>
|
|
|
|
|
|
|
|
<Label Grid.Row="0" Grid.Column="0" Content="OLD :" Foreground="{StaticResource Brush.FG2}"/>
|
|
|
|
<Label Grid.Row="0" Grid.Column="1" x:Name="txtOldSize" Foreground="{StaticResource Brush.FG2}" HorizontalAlignment="Right"/>
|
|
|
|
<Label Grid.Row="1" Grid.Column="0" Content="NEW :" Foreground="{StaticResource Brush.FG2}"/>
|
|
|
|
<Label Grid.Row="1" Grid.Column="1" x:Name="txtNewSize" Foreground="{StaticResource Brush.FG2}" HorizontalAlignment="Right"/>
|
|
|
|
</Grid>
|
|
|
|
</StackPanel>
|
|
|
|
</Border>
|
|
|
|
|
|
|
|
<Border x:Name="noChange" Grid.Row="1" Background="{StaticResource Brush.BG3}" Visibility="Collapsed">
|
|
|
|
<StackPanel Orientation="Vertical" VerticalAlignment="Center" Opacity=".2">
|
|
|
|
<Path Width="64" Height="64" Style="{StaticResource Style.Icon}" Data="{StaticResource Icon.Check}"/>
|
|
|
|
<Label Margin="0,8,0,0" Content="NO CHANGES OR ONLY EOL CHANGES" FontSize="18" FontWeight="UltraBold" HorizontalAlignment="Center"/>
|
|
|
|
</StackPanel>
|
|
|
|
</Border>
|
|
|
|
|
|
|
|
<Border x:Name="mask" Grid.RowSpan="2" Background="{StaticResource Brush.BG3}" Visibility="Collapsed">
|
|
|
|
<StackPanel Orientation="Vertical" VerticalAlignment="Center" Opacity=".2">
|
|
|
|
<Path Width="64" Height="64" Style="{StaticResource Style.Icon}" Data="{StaticResource Icon.Diff}"/>
|
|
|
|
<Label Margin="0,8,0,0" Content="SELECT FILE TO VIEW CHANGES" FontSize="18" FontWeight="UltraBold" HorizontalAlignment="Center"/>
|
|
|
|
</StackPanel>
|
|
|
|
</Border>
|
|
|
|
</Grid>
|
|
|
|
</Border>
|
|
|
|
</UserControl>
|