-
Notifications
You must be signed in to change notification settings - Fork 10
Expand file tree
/
Copy pathExtensionView.axaml
More file actions
81 lines (77 loc) · 6.5 KB
/
Copy pathExtensionView.axaml
File metadata and controls
81 lines (77 loc) · 6.5 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
<UserControl xmlns="https://github.com/avaloniaui"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:vm="using:GeneralUpdate.Tools.ViewModels"
xmlns:svc="using:GeneralUpdate.Tools.Services"
x:Class="GeneralUpdate.Tools.Views.ExtensionView"
x:Name="ExtRoot"
x:DataType="vm:ExtensionViewModel">
<ScrollViewer>
<StackPanel Margin="28,24" Spacing="14">
<TextBlock Text="{Binding Source={x:Static svc:LocalizationService.Instance}, Path=[Ext.Title]}"
FontSize="20" FontWeight="Bold"/>
<Border Padding="16" CornerRadius="8" Background="{DynamicResource SystemControlBackgroundChromeMediumBrush}">
<StackPanel Spacing="10">
<TextBlock Text="{Binding Source={x:Static svc:LocalizationService.Instance}, Path=[Ext.BasicInfo]}" FontSize="14" FontWeight="SemiBold"/>
<Grid ColumnDefinitions="Auto,*,Auto,*">
<TextBlock Grid.Column="0" Text="{Binding Source={x:Static svc:LocalizationService.Instance}, Path=[Ext.Name]}" VerticalAlignment="Center"/>
<TextBox Grid.Column="1" Text="{Binding Config.Name}" PlaceholderText="MyExtension" Margin="8,0,16,0"/>
<TextBlock Grid.Column="2" Text="{Binding Source={x:Static svc:LocalizationService.Instance}, Path=[Ext.Version]}" VerticalAlignment="Center"/>
<TextBox Grid.Column="3" Text="{Binding Config.Version}" PlaceholderText="1.0.0 (semver)" Margin="8,0"/>
</Grid>
<TextBlock Text="{Binding Source={x:Static svc:LocalizationService.Instance}, Path=[Ext.Description]}"/>
<TextBox Text="{Binding Config.Description}" PlaceholderText="{Binding Source={x:Static svc:LocalizationService.Instance}, Path=[Ext.DescPlaceholder]}"
Height="50" AcceptsReturn="True"/>
<Grid ColumnDefinitions="Auto,*,Auto,*">
<TextBlock Grid.Column="0" Text="{Binding Source={x:Static svc:LocalizationService.Instance}, Path=[Ext.Publisher]}" VerticalAlignment="Center"/>
<TextBox Grid.Column="1" Text="{Binding Config.Publisher}" Margin="8,0,16,0"/>
<TextBlock Grid.Column="2" Text="{Binding Source={x:Static svc:LocalizationService.Instance}, Path=[Ext.License]}" VerticalAlignment="Center"/>
<TextBox Grid.Column="3" Text="{Binding Config.License}"
PlaceholderText="{Binding Source={x:Static svc:LocalizationService.Instance}, Path=[Ext.LicensePlaceholder]}" Margin="8,0"/>
</Grid>
</StackPanel>
</Border>
<Border Padding="16" CornerRadius="8" Background="{DynamicResource SystemControlBackgroundChromeMediumBrush}">
<StackPanel Spacing="10">
<TextBlock Text="{Binding Source={x:Static svc:LocalizationService.Instance}, Path=[Ext.Paths]}" FontSize="14" FontWeight="SemiBold"/>
<Grid ColumnDefinitions="Auto,*,Auto">
<TextBlock Grid.Column="0" Text="{Binding Source={x:Static svc:LocalizationService.Instance}, Path=[Ext.ExtDir]}" VerticalAlignment="Center" Width="75"/>
<TextBox Grid.Column="1" Text="{Binding Config.ExtensionDirectory}" IsReadOnly="True" Margin="8,0"/>
<Button Grid.Column="2" Content="{Binding Source={x:Static svc:LocalizationService.Instance}, Path=[Patch.Select]}" Command="{Binding SelectExtCommand}" MinWidth="70"/>
</Grid>
<Grid ColumnDefinitions="Auto,*,Auto">
<TextBlock Grid.Column="0" Text="{Binding Source={x:Static svc:LocalizationService.Instance}, Path=[Ext.ExportDir]}" VerticalAlignment="Center" Width="75"/>
<TextBox Grid.Column="1" Text="{Binding Config.ExportPath}" IsReadOnly="True" Margin="8,0"/>
<Button Grid.Column="2" Content="{Binding Source={x:Static svc:LocalizationService.Instance}, Path=[Patch.Select]}" Command="{Binding SelectExportCommand}" MinWidth="70"/>
</Grid>
</StackPanel>
</Border>
<Border Padding="16" CornerRadius="8" Background="{DynamicResource SystemControlBackgroundChromeMediumBrush}">
<StackPanel Spacing="10">
<TextBlock Text="{Binding Source={x:Static svc:LocalizationService.Instance}, Path=[Ext.CustomProps]}" FontSize="14" FontWeight="SemiBold"/>
<Grid ColumnDefinitions="*,*,Auto">
<TextBox Grid.Column="0" Text="{Binding NewPropKey}" PlaceholderText="{Binding Source={x:Static svc:LocalizationService.Instance}, Path=[Ext.Key]}" Margin="0,0,8,0"/>
<TextBox Grid.Column="1" Text="{Binding NewPropValue}" PlaceholderText="{Binding Source={x:Static svc:LocalizationService.Instance}, Path=[Ext.Value]}" Margin="0,0,8,0"/>
<Button Grid.Column="2" Content="{Binding Source={x:Static svc:LocalizationService.Instance}, Path=[Ext.AddProp]}" Command="{Binding AddPropCommand}" MinWidth="60"/>
</Grid>
<ItemsControl ItemsSource="{Binding CustomProps}">
<ItemsControl.ItemTemplate>
<DataTemplate x:DataType="vm:CustomPropModel">
<Grid ColumnDefinitions="*,*,Auto">
<TextBlock Grid.Column="0" Text="{Binding Key}"/>
<TextBlock Grid.Column="1" Text="{Binding Value}"/>
<Button Grid.Column="2" Content="✕"
Command="{Binding ElementName=ExtRoot, Path=DataContext.RemovePropCommand}"
CommandParameter="{Binding}"/>
</Grid>
</DataTemplate>
</ItemsControl.ItemTemplate>
</ItemsControl>
</StackPanel>
</Border>
<Button Content="{Binding Source={x:Static svc:LocalizationService.Instance}, Path=[Ext.Generate]}"
Command="{Binding GenerateCommand}" IsEnabled="{Binding !IsBuilding}"
Height="40" FontSize="14" HorizontalAlignment="Stretch"/>
<TextBlock Text="{Binding Status}" FontSize="13"/>
</StackPanel>
</ScrollViewer>
</UserControl>