Multi-Platform Package Manager for Stable Diffusion
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

129 lines
6.2 KiB

<UserControl xmlns="https://github.com/avaloniaui"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:controls="clr-namespace:StabilityMatrix.Avalonia.Controls"
xmlns:api="clr-namespace:StabilityMatrix.Core.Models.Api;assembly=StabilityMatrix.Core"
xmlns:dialogs="clr-namespace:StabilityMatrix.Avalonia.ViewModels.Dialogs"
xmlns:designData="clr-namespace:StabilityMatrix.Avalonia.DesignData"
mc:Ignorable="d" d:DesignWidth="700" d:DesignHeight="450"
x:DataType="dialogs:SelectModelVersionViewModel"
xmlns:icons="https://github.com/projektanker/icons.avalonia"
xmlns:fluentAvalonia="clr-namespace:FluentIcons.FluentAvalonia;assembly=FluentIcons.FluentAvalonia"
d:DataContext="{x:Static designData:DesignData.SelectModelVersionViewModel}"
x:Class="StabilityMatrix.Avalonia.Views.Dialogs.SelectModelVersionDialog">
<Grid
Margin="8"
MinHeight="450"
MinWidth="700"
RowDefinitions="*,Auto"
ColumnDefinitions="*,Auto,*">
<controls:BetterImage Grid.Column="0" Grid.Row="0" Margin="8"
VerticalAlignment="Top"
MaxHeight="400"
HorizontalAlignment="Left"
Source="{Binding PreviewImage}" />
<ListBox Grid.Row="0" Grid.Column="1"
Margin="8"
MaxHeight="450"
ItemsSource="{Binding Versions}"
SelectedItem="{Binding SelectedVersionViewModel}">
<ListBox.ItemTemplate>
<DataTemplate DataType="{x:Type dialogs:ModelVersionViewModel}">
<Grid ColumnDefinitions="Auto, Auto"
RowDefinitions="Auto, Auto"
MinWidth="128"
Margin="0,4,0,4">
<fluentAvalonia:SymbolIcon Grid.Row="0"
Grid.Column="0"
Grid.RowSpan="2"
Symbol="Checkmark"
Foreground="Lime"
IsVisible="{Binding IsInstalled}"
VerticalAlignment="Center" />
<TextBlock Grid.Row="0" Grid.Column="1"
Margin="4, 0"
Padding="4"
Text="{Binding ModelVersion.Name}" />
<TextBlock Grid.Row="1" Grid.Column="1"
Margin="6, 0, 0, 0"
FontSize="11"
Padding="4, 0, 4, 4"
Text="{Binding ModelVersion.BaseModel}" />
</Grid>
</DataTemplate>
</ListBox.ItemTemplate>
<ListBox.Template>
<ControlTemplate>
<ScrollViewer>
<ItemsPresenter />
</ScrollViewer>
</ControlTemplate>
</ListBox.Template>
</ListBox>
<ListBox Grid.Row="0" Grid.Column="2"
ItemsSource="{Binding SelectedVersionViewModel.CivitFileViewModels}"
SelectedItem="{Binding SelectedFile}">
<ListBox.Template>
<ControlTemplate>
<ScrollViewer>
<ItemsPresenter Margin="8" />
</ScrollViewer>
</ControlTemplate>
</ListBox.Template>
<ListBox.ItemTemplate>
<DataTemplate DataType="{x:Type dialogs:CivitFileViewModel}">
<Grid RowDefinitions="Auto, Auto" ColumnDefinitions="Auto, *"
Margin="-4,0,0,0">
<fluentAvalonia:SymbolIcon Grid.Row="0" Grid.RowSpan="2"
Grid.Column="0"
Margin="0, 0, 8, 0"
Symbol="Checkmark"
Foreground="Lime"
IsVisible="{Binding IsInstalled}"
VerticalAlignment="Center" />
<TextBlock Grid.Row="0" Grid.Column="1"
Text="{Binding CivitFile.DisplayName}"
Margin="0, 4, 0, 4"
TextWrapping="Wrap" />
<TextBlock Grid.Row="1" Grid.Column="1"
FontSize="11"
Margin="0, 4, 0, 4"
TextWrapping="Wrap">
<Run Text="{Binding CivitFile.Metadata.Format}" />
<Run Text="-" />
<Run Text="{Binding CivitFile.Metadata.Size}" />
<Run Text="-" />
<Run Text="{Binding CivitFile.Metadata.Fp}" />
<Run Text="-" />
<Run Text="{Binding CivitFile.FullFilesSize, Mode=OneWay}" />
</TextBlock>
</Grid>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
<StackPanel Grid.Column="0" Grid.ColumnSpan="3" Grid.Row="1"
Orientation="Horizontal"
HorizontalAlignment="Center">
<Button
Content="Cancel"
HorizontalAlignment="Center"
Command="{Binding Cancel}"
Margin="8, 0" />
<Button
Margin="8, 0"
Content="Import"
Command="{Binding Import}"
IsEnabled="{Binding IsImportEnabled}"
Classes="accent" />
</StackPanel>
</Grid>
</UserControl>