<!--
// /***************************************************************************
// RomRepoMgr - ROM repository manager
// ‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐
//
// Author(s)      : Natalia Portillo <claunia@claunia.com>
//
// ‐‐[ License ] ‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐
//
//     This program is free software: you can redistribute it and/or modify
//     it under the terms of the GNU General public License as
//     published by the Free Software Foundation, either version 3 of the
//     License, or (at your option) any later version.
//
//     This program is distributed in the hope that it will be useful,
//     but WITHOUT ANY WARRANTY; without even the implied warranty of
//     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
//     GNU General public License for more details.
//
//     You should have received a copy of the GNU General public License
//     along with this program.  If not, see <http://www.gnu.org/licenses/>.
//
// ‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐
// Copyright © 2020-2024 Natalia Portillo
// ****************************************************************************/
-->
<Window 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:vm="clr-namespace:RomRepoMgr.ViewModels;assembly=RomRepoMgr"
        xmlns:resources="clr-namespace:RomRepoMgr.Resources"
        mc:Ignorable="d"
        x:Class="RomRepoMgr.Views.UpdateStats"
        Icon="/Assets/avalonia-logo.ico"
        Title="{x:Static resources:Localization.UpdateStatsTitle}"
        WindowStartupLocation="CenterOwner">
    <Design.DataContext>
        <vm:UpdateStatsViewModel />
    </Design.DataContext>
    <Grid RowDefinitions="Auto,Auto,*,Auto"
          Margin="16"
          RowSpacing="8">
        <TextBlock Grid.Row="0"
                   Text="{Binding StatusMessage, Mode=OneWay}"
                   HorizontalAlignment="Center" />
        <ProgressBar Grid.Row="1"
                     IsIndeterminate="{Binding IndeterminateProgress, Mode=OneWay}"
                     Maximum="{Binding MaximumValue, Mode=OneWay}"
                     Minimum="{Binding MinimumValue, Mode=OneWay}"
                     Value="{Binding CurrentValue, Mode=OneWay}"
                     HorizontalAlignment="Stretch"
                     IsVisible="{Binding ProgressVisible, Mode=OneWay}" />
        <DataGrid Grid.Row="2"
                  ItemsSource="{Binding RomSets, Mode=OneWay}"
                  HorizontalScrollBarVisibility="Visible"
                  SelectedItem="{Binding SelectedRomSet, Mode=TwoWay}"
                  CanUserSortColumns="True"
                  CanUserResizeColumns="True">
            <DataGrid.Columns>
                <DataGridTextColumn Binding="{Binding Name, Mode=OneWay}"
                                    Width="Auto"
                                    IsReadOnly="True">
                    <DataGridTextColumn.Header>
                        <TextBlock Text="{x:Static resources:Localization.RomSetNameLabel}" />
                    </DataGridTextColumn.Header>
                </DataGridTextColumn>
                <DataGridTextColumn Binding="{Binding Version, Mode=OneWay}"
                                    Width="Auto"
                                    IsReadOnly="True">
                    <DataGridTextColumn.Header>
                        <TextBlock Text="{x:Static resources:Localization.RomSetVersionLabel}" />
                    </DataGridTextColumn.Header>
                </DataGridTextColumn>
                <DataGridTextColumn Binding="{Binding Author, Mode=OneWay}"
                                    Width="Auto"
                                    IsReadOnly="True">
                    <DataGridTextColumn.Header>
                        <TextBlock Text="{x:Static resources:Localization.RomSetAuthorLabel}" />
                    </DataGridTextColumn.Header>
                </DataGridTextColumn>
                <DataGridTextColumn Binding="{Binding Category, Mode=OneWay}"
                                    Width="Auto"
                                    IsReadOnly="True">
                    <DataGridTextColumn.Header>
                        <TextBlock Text="{x:Static resources:Localization.RomSetCategoryLabel}" />
                    </DataGridTextColumn.Header>
                </DataGridTextColumn>
                <DataGridTextColumn Binding="{Binding Date, Mode=OneWay}"
                                    Width="Auto"
                                    IsReadOnly="True">
                    <DataGridTextColumn.Header>
                        <TextBlock Text="{x:Static resources:Localization.RomSetDateLabel}" />
                    </DataGridTextColumn.Header>
                </DataGridTextColumn>
                <DataGridTextColumn Binding="{Binding Description, Mode=OneWay}"
                                    Width="Auto"
                                    IsReadOnly="True">
                    <DataGridTextColumn.Header>
                        <TextBlock Text="{x:Static resources:Localization.RomSetDescriptionLabel}" />
                    </DataGridTextColumn.Header>
                </DataGridTextColumn>
                <DataGridTextColumn Binding="{Binding Comment, Mode=OneWay}"
                                    Width="Auto"
                                    IsReadOnly="True">
                    <DataGridTextColumn.Header>
                        <TextBlock Text="{x:Static resources:Localization.RomSetCommentLabel}" />
                    </DataGridTextColumn.Header>
                </DataGridTextColumn>
                <DataGridTextColumn Binding="{Binding Homepage, Mode=OneWay}"
                                    Width="Auto"
                                    IsReadOnly="True">
                    <DataGridTextColumn.Header>
                        <TextBlock Text="{x:Static resources:Localization.HomepageLabel}" />
                    </DataGridTextColumn.Header>
                </DataGridTextColumn>
                <DataGridTextColumn Binding="{Binding TotalMachines, Mode=OneWay}"
                                    Width="Auto"
                                    IsReadOnly="True">
                    <DataGridTextColumn.Header>
                        <TextBlock Text="{x:Static resources:Localization.RomSetTotalMachinesLabel}" />
                    </DataGridTextColumn.Header>
                </DataGridTextColumn>
                <DataGridTextColumn Binding="{Binding CompleteMachines, Mode=OneWay}"
                                    Width="Auto"
                                    IsReadOnly="True">
                    <DataGridTextColumn.Header>
                        <TextBlock Text="{x:Static resources:Localization.RomSetCompleteMachinesLabel}" />
                    </DataGridTextColumn.Header>
                </DataGridTextColumn>
                <DataGridTextColumn Binding="{Binding IncompleteMachines, Mode=OneWay}"
                                    Width="Auto"
                                    IsReadOnly="True">
                    <DataGridTextColumn.Header>
                        <TextBlock Text="{x:Static resources:Localization.RomSetIncompleteMachinesLabel}" />
                    </DataGridTextColumn.Header>
                </DataGridTextColumn>
                <DataGridTextColumn Binding="{Binding TotalRoms, Mode=OneWay}"
                                    Width="Auto"
                                    IsReadOnly="True">
                    <DataGridTextColumn.Header>
                        <TextBlock Text="{x:Static resources:Localization.RomSetTotalRomsLabel}" />
                    </DataGridTextColumn.Header>
                </DataGridTextColumn>
                <DataGridTextColumn Binding="{Binding HaveRoms, Mode=OneWay}"
                                    Width="Auto"
                                    IsReadOnly="True">
                    <DataGridTextColumn.Header>
                        <TextBlock Text="{x:Static resources:Localization.RomSetHaveRomsLabel}" />
                    </DataGridTextColumn.Header>
                </DataGridTextColumn>
                <DataGridTextColumn Binding="{Binding MissRoms, Mode=OneWay}"
                                    Width="Auto"
                                    IsReadOnly="True">
                    <DataGridTextColumn.Header>
                        <TextBlock Text="{x:Static resources:Localization.RomSetMissRomsLabel}" />
                    </DataGridTextColumn.Header>
                </DataGridTextColumn>
            </DataGrid.Columns>
        </DataGrid>
        <Button Grid.Row="3"
                HorizontalAlignment="Right"
                VerticalAlignment="Center"
                IsEnabled="{Binding CanClose, Mode=OneWay}"
                Command="{Binding CloseCommand, Mode=OneWay}">
            <TextBlock Text="{x:Static resources:Localization.CloseLabel}" />
        </Button>
    </Grid>
</Window>