mirror of
https://github.com/sourcegit-scm/sourcegit
synced 2025-05-28 07:34:59 +00:00
184 lines
9.8 KiB
XML
184 lines
9.8 KiB
XML
<UserControl x:Class="SourceGit.Views.Widgets.Welcome"
|
|
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"
|
|
xmlns:controls="clr-namespace:SourceGit.Views.Controls"
|
|
xmlns:widgets="clr-namespace:SourceGit.Views.Widgets"
|
|
xmlns:models="clr-namespace:SourceGit.Models"
|
|
xmlns:converters="clr-namespace:SourceGit.Views.Converters"
|
|
mc:Ignorable="d"
|
|
d:DesignHeight="800" d:DesignWidth="800">
|
|
<Grid Background="Transparent" AllowDrop="True" DragEnter="OnPageDragEnter" DragLeave="OnPageDragLeave" Drop="OnPageDrop">
|
|
<Grid.RowDefinitions>
|
|
<RowDefinition Height="Auto"/>
|
|
<RowDefinition Height="Auto"/>
|
|
<RowDefinition Height="*"/>
|
|
</Grid.RowDefinitions>
|
|
|
|
<Grid.ColumnDefinitions>
|
|
<ColumnDefinition Width="*"/>
|
|
<ColumnDefinition Width="600"/>
|
|
<ColumnDefinition Width="*"/>
|
|
</Grid.ColumnDefinitions>
|
|
|
|
<!-- Repositories Tool Bar -->
|
|
<Grid Grid.Row="0" Grid.Column="1" Margin="0,100,0,0">
|
|
<Grid.ColumnDefinitions>
|
|
<ColumnDefinition Width="Auto"/>
|
|
<ColumnDefinition Width="*"/>
|
|
<ColumnDefinition Width="Auto"/>
|
|
<ColumnDefinition Width="Auto"/>
|
|
<ColumnDefinition Width="Auto"/>
|
|
<ColumnDefinition Width="Auto"/>
|
|
</Grid.ColumnDefinitions>
|
|
|
|
<TextBlock
|
|
Grid.Column="0"
|
|
HorizontalAlignment="Left"
|
|
Text="{DynamicResource Text.Welcome.Repositories}"
|
|
FontSize="13pt"/>
|
|
|
|
<Button
|
|
Grid.Column="2"
|
|
Width="32" Height="28"
|
|
Style="{DynamicResource Style.Button.Link}"
|
|
ToolTip="{DynamicResource Text.Welcome.OpenOrInit}"
|
|
Click="OnOpenClicked">
|
|
<Path Width="14" Height="14" Data="{StaticResource Icon.NewTab}" Fill="{DynamicResource Brush.Accent1}"/>
|
|
</Button>
|
|
|
|
<Button
|
|
Grid.Column="3"
|
|
Width="32" Height="28"
|
|
Style="{DynamicResource Style.Button.Link}"
|
|
ToolTip="{DynamicResource Text.Welcome.Clone}"
|
|
Click="OnCloneClicked">
|
|
<Path Width="16" Height="15" Data="{StaticResource Icon.Pull}" Fill="{DynamicResource Brush.Accent1}"/>
|
|
</Button>
|
|
|
|
<Button
|
|
Grid.Column="4"
|
|
Width="32" Height="28"
|
|
Style="{DynamicResource Style.Button.Link}"
|
|
ToolTip="{DynamicResource Text.Welcome.OpenTerminal}"
|
|
Click="OnOpenTerminalClicked">
|
|
<Path Width="16" Height="14" Data="{StaticResource Icon.Terminal}" Fill="{DynamicResource Brush.Accent1}"/>
|
|
</Button>
|
|
|
|
<Button
|
|
Grid.Column="5"
|
|
Width="32" Height="28"
|
|
Style="{DynamicResource Style.Button.Link}"
|
|
ToolTip="{DynamicResource Text.Welcome.Sort}"
|
|
Click="OnSortMethodClicked">
|
|
<Path Width="16" Height="14" Data="{StaticResource Icon.Sort}" Fill="{DynamicResource Brush.Accent1}"/>
|
|
</Button>
|
|
</Grid>
|
|
|
|
<!-- Search Bar -->
|
|
<Grid Grid.Row="1" Grid.Column="1" Margin="2,8" Height="28" VerticalAlignment="Top">
|
|
<Grid.ColumnDefinitions>
|
|
<ColumnDefinition Width="24"/>
|
|
<ColumnDefinition Width="*"/>
|
|
</Grid.ColumnDefinitions>
|
|
|
|
<Border
|
|
Grid.Column="0" Grid.ColumnSpan="2"
|
|
BorderBrush="{DynamicResource Brush.Border2}"
|
|
BorderThickness="1"/>
|
|
<Path
|
|
Grid.Column="0"
|
|
Width="14" Height="14"
|
|
Fill="{DynamicResource Brush.FG2}"
|
|
Data="{StaticResource Icon.Search}"
|
|
IsHitTestVisible="False"/>
|
|
<controls:TextEdit
|
|
x:Name="filter"
|
|
Grid.Column="1"
|
|
Height="24"
|
|
Margin="0"
|
|
Placeholder="{DynamicResource Text.Welcome.Search}"
|
|
BorderThickness="0"
|
|
TextChanged="OnSearchFilterChanged"/>
|
|
</Grid>
|
|
|
|
<!-- Repositories List -->
|
|
<Grid Grid.Row="2" Grid.Column="1" Margin="0,0,0,80" AllowDrop="True" Drop="OnDropFolder">
|
|
<Grid.Resources>
|
|
<converters:IntToBookmarkBrush x:Key="IntToBookmarkBrush"/>
|
|
</Grid.Resources>
|
|
|
|
<!-- Wrap panel -->
|
|
<ScrollViewer HorizontalScrollBarVisibility="Disabled" VerticalScrollBarVisibility="Auto">
|
|
<ItemsControl x:Name="repoList">
|
|
<ItemsControl.ItemsPanel>
|
|
<ItemsPanelTemplate>
|
|
<VirtualizingStackPanel Orientation="Vertical"/>
|
|
</ItemsPanelTemplate>
|
|
</ItemsControl.ItemsPanel>
|
|
|
|
<ItemsControl.ItemTemplate>
|
|
<DataTemplate>
|
|
<Border
|
|
Height="36"
|
|
Margin="2"
|
|
BorderThickness="1" BorderBrush="{DynamicResource Brush.Border2}"
|
|
Background="{DynamicResource Brush.Contents}">
|
|
<Grid Margin="8,0">
|
|
<Grid.ColumnDefinitions>
|
|
<ColumnDefinition Width="Auto"/>
|
|
<ColumnDefinition Width="Auto"/>
|
|
<ColumnDefinition Width="Auto"/>
|
|
<ColumnDefinition Width="*"/>
|
|
<ColumnDefinition Width="Auto"/>
|
|
<ColumnDefinition Width="Auto"/>
|
|
<ColumnDefinition Width="Auto"/>
|
|
<ColumnDefinition Width="Auto"/>
|
|
</Grid.ColumnDefinitions>
|
|
|
|
<Button Grid.Column="0" Background="Transparent" Width="16" BorderThickness="0" ToolTip="{DynamicResource Text.RepoCM.Bookmark}" Click="OnChangeRepositoryBookmark">
|
|
<Path Width="8" Fill="{Binding Bookmark, Converter={StaticResource IntToBookmarkBrush}}">
|
|
<Path.Data>
|
|
<EllipseGeometry Center="0,0" RadiusX="14" RadiusY="14"/>
|
|
</Path.Data>
|
|
</Path>
|
|
</Button>
|
|
|
|
<TextBlock Grid.Column="1" Margin="8,0" Text="{Binding Name}" FontSize="12pt" FontFamily="{Binding Source={x:Static models:Preference.Instance}, Path=General.FontFamilyContent, Mode=OneWay}"/>
|
|
<TextBlock Grid.Column="2" Text="{Binding Path}" FontSize="10pt" FontFamily="{Binding Source={x:Static models:Preference.Instance}, Path=General.FontFamilyContent, Mode=OneWay}" Foreground="{DynamicResource Brush.FG2}"/>
|
|
|
|
<Button Grid.Column="4" BorderThickness="0" Background="Transparent" ToolTip="{DynamicResource Text.RepoCM.Open}" Click="OnOpenRepository">
|
|
<Path Width="15" Data="{StaticResource Icon.Folder.Open}" Fill="{DynamicResource Brush.Accent1}"/>
|
|
</Button>
|
|
<Button Grid.Column="5" Margin="8,0,0,0" BorderThickness="0" Background="Transparent" ToolTip="{DynamicResource Text.RepoCM.Explore}" Click="OnExploreRepository">
|
|
<Path Width="15" Data="{StaticResource Icon.DiffWith}" Fill="{DynamicResource Brush.Accent1}"/>
|
|
</Button>
|
|
<Button Grid.Column="6" Margin="8,0,0,0" BorderThickness="0" Background="Transparent" ToolTip="{DynamicResource Text.Welcome.OpenTerminal}" Click="OnOpenRepositoryTerminal">
|
|
<Path Width="14" Data="{StaticResource Icon.Terminal}" Fill="{DynamicResource Brush.Accent1}"/>
|
|
</Button>
|
|
<Button Grid.Column="7" Margin="8,0,0,0" BorderThickness="0" Background="Transparent" ToolTip="{DynamicResource Text.Welcome.Delete}" Click="OnRemoveRepository">
|
|
<Path Width="10" Data="{StaticResource Icon.Close}" Fill="{DynamicResource Brush.Accent1}"/>
|
|
</Button>
|
|
</Grid>
|
|
</Border>
|
|
</DataTemplate>
|
|
</ItemsControl.ItemTemplate>
|
|
</ItemsControl>
|
|
</ScrollViewer>
|
|
|
|
<!-- Drop Area -->
|
|
<Rectangle
|
|
x:Name="dropArea"
|
|
Stroke="{DynamicResource Brush.Border1}"
|
|
StrokeThickness="2"
|
|
StrokeDashArray="4,4"
|
|
SnapsToDevicePixels="True"
|
|
Visibility="Hidden"
|
|
IsHitTestVisible="False"/>
|
|
</Grid>
|
|
|
|
<!-- Popup -->
|
|
<widgets:PopupPanel x:Name="popup" Grid.Row="0" Grid.RowSpan="3" Grid.Column="0" Grid.ColumnSpan="3"/>
|
|
</Grid>
|
|
</UserControl>
|