Files
Aaru/Aaru.Gui/Views/Windows/ImageConvert.xaml

281 lines
17 KiB
Plaintext
Raw Normal View History

2020-04-17 21:45:50 +01:00
<!--
// /***************************************************************************
// Aaru Data Preservation Suite
//
//
// Filename : ImageConvert.xaml
// Author(s) : Natalia Portillo <claunia@claunia.com>
//
// Component : GUI windows.
//
// [ Description ]
//
// Image conversion window.
//
// [ 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/>.
//
//
2024-12-19 10:45:18 +00:00
// Copyright © 2011-2025 Natalia Portillo
2020-04-17 21:45:50 +01:00
// ****************************************************************************/
-->
2024-05-01 04:05:22 +01:00
<Window xmlns="https://github.com/avaloniaui"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
2020-04-16 20:40:25 +01:00
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
2024-05-01 04:05:22 +01:00
xmlns:windows="clr-namespace:Aaru.Gui.ViewModels.Windows"
2025-10-25 12:53:52 +01:00
xmlns:localization="clr-namespace:Aaru.Localization;assembly=Aaru.Localization"
2024-05-01 04:05:22 +01:00
mc:Ignorable="d"
d:DesignWidth="800"
d:DesignHeight="450"
x:Class="Aaru.Gui.Views.Windows.ImageConvert"
Icon="/Assets/aaru-logo.png"
Title="{Binding Title}">
<Design.DataContext>
2020-04-16 20:40:25 +01:00
<windows:ImageConvertViewModel />
</Design.DataContext>
<StackPanel Orientation="Vertical">
2025-10-25 12:53:52 +01:00
<TextBlock Text="{x:Static localization:UI.Source_image}" />
2024-05-01 04:05:22 +01:00
<TextBox Text="{Binding SourceText}"
IsReadOnly="True" />
2025-10-25 12:53:52 +01:00
<TextBlock Text="{x:Static localization:UI.Output_format}" />
2024-05-01 04:05:22 +01:00
<ComboBox ItemsSource="{Binding PluginsList}"
SelectedItem="{Binding SelectedPlugin}"
IsEnabled="{Binding FormatReadOnly}">
<ComboBox.ItemTemplate>
<DataTemplate>
<TextBlock Text="{Binding Name}" />
</DataTemplate>
</ComboBox.ItemTemplate>
</ComboBox>
<StackPanel Orientation="Horizontal">
2024-05-01 04:05:22 +01:00
<TextBox Text="{Binding DestinationText}"
IsReadOnly="True" />
<Button Command="{Binding DestinationCommand}"
IsEnabled="{Binding DestinationEnabled}"
IsVisible="{Binding DestinationVisible}">
2025-10-25 12:53:52 +01:00
<TextBlock Text="{x:Static localization:UI.ButtonLabel_Choose}" />
</Button>
</StackPanel>
2024-05-01 04:05:22 +01:00
<StackPanel Orientation="Vertical"
IsVisible="{Binding OptionsVisible}">
<StackPanel Orientation="Horizontal">
2024-05-01 04:05:22 +01:00
<NumericUpDown Increment="1"
Minimum="1"
Maximum="16384"
Value="{Binding SectorsValue}" />
2025-10-25 12:53:52 +01:00
<TextBlock Text="{x:Static localization:UI.How_many_sectors_to_convert_at_once}" />
</StackPanel>
<CheckBox IsChecked="{Binding ForceChecked}">
2025-10-25 12:53:52 +01:00
<TextBlock Text="{x:Static localization:UI.Continue_conversion_even_if_data_lost}" />
</CheckBox>
<StackPanel Orientation="Horizontal">
2025-10-25 12:53:52 +01:00
<TextBlock Text="{x:Static localization:UI.Who_person_created_the_image}" />
<TextBox Text="{Binding CreatorText}" />
2024-05-01 04:05:22 +01:00
<Button Command="{Binding CreatorCommand}"
IsVisible="{Binding CreatorVisible}">
2025-10-25 12:53:52 +01:00
<TextBlock Text="{x:Static localization:UI.ButtonLabel_Get_from_source_image}" />
</Button>
</StackPanel>
<StackPanel>
2025-10-25 12:53:52 +01:00
<TextBlock Text="{x:Static localization:UI.Title_Metadata}" />
<TabControl>
<TabItem>
<TabItem.Header>
2025-10-25 12:53:52 +01:00
<TextBlock Text="{x:Static localization:UI.Title_Media}" />
</TabItem.Header>
<StackPanel Orientation="Vertical">
<StackPanel Orientation="Horizontal">
2025-10-25 12:53:52 +01:00
<TextBlock Text="{x:Static localization:UI.Title_Title}" />
<TextBox Text="{Binding MediaTitleText}" />
2024-05-01 04:05:22 +01:00
<Button Command="{Binding MediaTitleCommand}"
IsVisible="{Binding MediaTitleVisible}">
2025-10-25 12:53:52 +01:00
<TextBlock Text="{x:Static localization:UI.ButtonLabel_Get_from_source_image}" />
</Button>
</StackPanel>
<StackPanel Orientation="Horizontal">
2025-10-25 12:53:52 +01:00
<TextBlock Text="{x:Static localization:UI.Title_Manufacturer}" />
<TextBox Text="{Binding MediaManufacturerText}" />
<Button Command="{Binding MediaManufacturerCommand}"
IsVisible="{Binding MediaManufacturerVisible}">
2025-10-25 12:53:52 +01:00
<TextBlock Text="{x:Static localization:UI.ButtonLabel_Get_from_source_image}" />
</Button>
</StackPanel>
<StackPanel Orientation="Horizontal">
2025-10-25 12:53:52 +01:00
<TextBlock Text="{x:Static localization:UI.Title_Model}" />
<TextBox Text="{Binding MediaModelText}" />
2024-05-01 04:05:22 +01:00
<Button Command="{Binding MediaModelCommand}"
IsVisible="{Binding MediaModelVisible}">
2025-10-25 12:53:52 +01:00
<TextBlock Text="{x:Static localization:UI.ButtonLabel_Get_from_source_image}" />
</Button>
</StackPanel>
<StackPanel Orientation="Horizontal">
2025-10-25 12:53:52 +01:00
<TextBlock Text="{x:Static localization:UI.Title_Serial_number}" />
<TextBox Text="{Binding MediaSerialNumberText}" />
<Button Command="{Binding MediaSerialNumberCommand}"
IsVisible="{Binding MediaSerialNumberVisible}">
2025-10-25 12:53:52 +01:00
<TextBlock Text="{x:Static localization:UI.ButtonLabel_Get_from_source_image}" />
</Button>
</StackPanel>
<StackPanel Orientation="Horizontal">
2025-10-25 12:53:52 +01:00
<TextBlock Text="{x:Static localization:UI.Title_Barcode}" />
<TextBox Text="{Binding MediaBarcodeText}" />
<Button Command="{Binding MediaBarcodeCommand}"
IsVisible="{Binding MediaBarcodeVisible}">
2025-10-25 12:53:52 +01:00
<TextBlock Text="{x:Static localization:UI.ButtonLabel_Get_from_source_image}" />
</Button>
</StackPanel>
<StackPanel Orientation="Horizontal">
2025-10-25 12:53:52 +01:00
<TextBlock Text="{x:Static localization:UI.Title_Part_number}" />
<TextBox Text="{Binding MediaPartNumberText}" />
<Button Command="{Binding MediaPartNumberCommand}"
IsVisible="{Binding MediaPartNumberVisible}">
2025-10-25 12:53:52 +01:00
<TextBlock Text="{x:Static localization:UI.ButtonLabel_Get_from_source_image}" />
</Button>
</StackPanel>
<StackPanel Orientation="Horizontal">
2025-10-25 12:53:52 +01:00
<TextBlock Text="{x:Static localization:UI.Title_Number_in_sequence}" />
2024-05-01 04:05:22 +01:00
<NumericUpDown Increment="1"
Value="{Binding MediaSequenceValue}"
Minimum="0" />
<Button Command="{Binding MediaSequenceCommand}"
IsVisible="{Binding MediaSequenceVisible}">
2025-10-25 12:53:52 +01:00
<TextBlock Text="{x:Static localization:UI.ButtonLabel_Get_from_source_image}" />
</Button>
</StackPanel>
<StackPanel Orientation="Horizontal">
2025-10-25 12:53:52 +01:00
<TextBlock Text="{x:Static localization:UI.Title_Last_media_of_the_sequence}" />
2024-05-01 04:05:22 +01:00
<NumericUpDown Increment="1"
Value="{Binding LastMediaSequenceValue}"
Minimum="0" />
<Button Command="{Binding LastMediaSequenceCommand}"
IsVisible="{Binding LastMediaSequenceVisible}">
2025-10-25 12:53:52 +01:00
<TextBlock Text="{x:Static localization:UI.ButtonLabel_Get_from_source_image}" />
</Button>
</StackPanel>
</StackPanel>
</TabItem>
<TabItem>
<TabItem.Header>
2025-10-25 12:53:52 +01:00
<TextBlock Text="{x:Static localization:UI.Title_Drive}" />
</TabItem.Header>
<StackPanel Orientation="Vertical">
<StackPanel Orientation="Horizontal">
2025-10-25 12:53:52 +01:00
<TextBlock Text="{x:Static localization:UI.Title_Manufacturer}" />
<TextBox Text="{Binding DriveManufacturerText}" />
<Button Command="{Binding DriveManufacturerCommand}"
IsVisible="{Binding DriveManufacturerVisible}">
2025-10-25 12:53:52 +01:00
<TextBlock Text="{x:Static localization:UI.ButtonLabel_Get_from_source_image}" />
</Button>
</StackPanel>
<StackPanel Orientation="Horizontal">
2025-10-25 12:53:52 +01:00
<TextBlock Text="{x:Static localization:UI.Title_Model}" />
<TextBox Text="{Binding DriveModelText}" />
2024-05-01 04:05:22 +01:00
<Button Command="{Binding DriveModelCommand}"
IsVisible="{Binding DriveModelVisible}">
2025-10-25 12:53:52 +01:00
<TextBlock Text="{x:Static localization:UI.ButtonLabel_Get_from_source_image}" />
</Button>
</StackPanel>
<StackPanel Orientation="Horizontal">
2025-10-25 12:53:52 +01:00
<TextBlock Text="{x:Static localization:UI.Title_Serial_number}" />
<TextBox Text="{Binding DriveSerialNumberText}" />
<Button Command="{Binding DriveSerialNumberCommand}"
IsVisible="{Binding DriveSerialNumberVisible}">
2025-10-25 12:53:52 +01:00
<TextBlock Text="{x:Static localization:UI.ButtonLabel_Get_from_source_image}" />
</Button>
</StackPanel>
<StackPanel Orientation="Horizontal">
2025-10-25 12:53:52 +01:00
<TextBlock Text="{x:Static localization:UI.Title_Firmware_revision}" />
<TextBox Text="{Binding DriveFirmwareRevisionText}" />
<Button Command="{Binding DriveFirmwareRevisionCommand}"
IsVisible="{Binding DriveFirmwareRevisionVisible}">
2025-10-25 12:53:52 +01:00
<TextBlock Text="{x:Static localization:UI.ButtonLabel_Get_from_source_image}" />
</Button>
</StackPanel>
</StackPanel>
</TabItem>
<TabItem>
<TabItem.Header>
2025-10-25 12:53:52 +01:00
<TextBlock Text="{x:Static localization:UI.Title_Comments}" />
</TabItem.Header>
<StackPanel Orientation="Vertical">
<TextBox Text="{Binding CommentsText}" />
2024-05-01 04:05:22 +01:00
<Button Command="{Binding CommentsCommand}"
IsVisible="{Binding CommentsVisible}">
2025-10-25 12:53:52 +01:00
<TextBlock Text="{x:Static localization:UI.ButtonLabel_Get_from_source_image}" />
</Button>
</StackPanel>
</TabItem>
</TabControl>
2025-10-25 12:53:52 +01:00
<TextBlock Text="{x:Static localization:UI.Title_Existing_Aaru_Metadata_sidecar}" />
<StackPanel Orientation="Horizontal">
2024-05-01 04:05:22 +01:00
<TextBox Text="{Binding MetadataJsonText}"
IsReadOnly="True" />
<Button Command="{Binding AaruMetadataFromImageCommand}"
IsVisible="{Binding AaruMetadataFromImageVisible}">
2025-10-25 12:53:52 +01:00
<TextBlock Text="{x:Static localization:UI.Title_From_image}" />
</Button>
<Button Command="{Binding AaruMetadataCommand}">
2025-10-25 12:53:52 +01:00
<TextBlock Text="{x:Static localization:UI.ButtonLabel_Choose}" />
</Button>
</StackPanel>
2025-10-25 12:53:52 +01:00
<TextBlock Text="{x:Static localization:UI.Title_Existing_resume_file}" />
<StackPanel Orientation="Horizontal">
2024-05-01 04:05:22 +01:00
<TextBox Text="{Binding ResumeFileText}"
IsReadOnly="True" />
<Button Command="{Binding ResumeFileFromImageCommand}"
IsVisible="{Binding ResumeFileFromImageVisible}">
2025-10-25 12:53:52 +01:00
<TextBlock Text="{x:Static localization:UI.Title_From_image}" />
</Button>
<Button Command="{Binding ResumeFileCommand}">
2025-10-25 12:53:52 +01:00
<TextBlock Text="{x:Static localization:UI.ButtonLabel_Choose}" />
</Button>
</StackPanel>
</StackPanel>
</StackPanel>
2024-05-01 04:05:22 +01:00
<StackPanel Orientation="Vertical"
IsVisible="{Binding ProgressVisible}">
<StackPanel Orientation="Vertical"
IsVisible="{Binding Progress1Visible}">
<TextBox Text="{Binding ProgressText}" />
2024-05-01 04:05:22 +01:00
<ProgressBar Value="{Binding ProgressValue}"
Maximum="{Binding ProgressMaxValue}"
IsIndeterminate="{Binding ProgressIndeterminate}" />
</StackPanel>
2024-05-01 04:05:22 +01:00
<StackPanel Orientation="Vertical"
IsVisible="{Binding Progress2Visible}">
<TextBox Text="{Binding Progress2Text}" />
2024-05-01 04:05:22 +01:00
<ProgressBar Value="{Binding Progress2Value}"
Maximum="{Binding Progress2MaxValue}"
IsIndeterminate="{Binding Progress2Indeterminate}" />
</StackPanel>
</StackPanel>
<StackPanel Orientation="Horizontal">
2024-05-01 04:05:22 +01:00
<Button Command="{Binding StartCommand}"
IsVisible="{Binding StartVisible}">
2025-10-25 12:53:52 +01:00
<TextBlock Text="{x:Static localization:UI.ButtonLabel_Start}" />
</Button>
2024-05-01 04:05:22 +01:00
<Button Command="{Binding CloseCommand}"
IsVisible="{Binding CloseVisible}">
2025-10-25 12:53:52 +01:00
<TextBlock Text="{x:Static localization:UI.ButtonLabel_Close}" />
</Button>
2024-05-01 04:05:22 +01:00
<Button Command="{Binding StopCommand}"
IsVisible="{Binding StopVisible}"
IsEnabled="{Binding StopEnabled}">
2025-10-25 12:53:52 +01:00
<TextBlock Text="{x:Static localization:UI.ButtonLabel_Stop}" />
</Button>
</StackPanel>
</StackPanel>
</Window>