[GUI] Move media dump options into tabs.

This commit is contained in:
2025-11-23 15:44:41 +00:00
parent b8d55ff741
commit ff9b2d64f4
4 changed files with 121 additions and 99 deletions

View File

@@ -53,103 +53,113 @@
<Grid Margin="12"
RowSpacing="8"
RowDefinitions="Auto, *, Auto">
<ScrollViewer Grid.Row="0"
IsVisible="{Binding OptionsVisible, Mode=OneWay}">
<StackPanel Orientation="Vertical"
Spacing="8">
<Grid ColumnDefinitions="Auto, *"
ColumnSpacing="8">
<TextBlock Grid.Column="0"
Text="{x:Static localization:UI.Output_format}"
VerticalAlignment="Center" />
<ComboBox Grid.Column="1"
ItemsSource="{Binding PluginsList, Mode=OneWay}"
SelectedItem="{Binding SelectedPlugin, Mode=TwoWay}"
HorizontalAlignment="Stretch"
IsEnabled="{Binding FormatReadOnly, Mode=OneWay}">
<ComboBox.ItemTemplate>
<DataTemplate>
<TextBlock Text="{Binding Name, Mode=OneWay}" />
</DataTemplate>
</ComboBox.ItemTemplate>
</ComboBox>
</Grid>
<Grid ColumnDefinitions="Auto, *"
ColumnSpacing="8">
<Button Grid.Column="0"
Command="{Binding DestinationCommand, Mode=OneWay}"
IsEnabled="{Binding DestinationEnabled, Mode=OneWay}">
<TextBlock Text="{x:Static localization:UI.ButtonLabel_Choose}" />
</Button>
<TextBox Grid.Column="1"
Text="{Binding Destination, Mode=OneWay}"
IsReadOnly="True" />
</Grid>
<CheckBox IsChecked="{Binding StopOnError, Mode=TwoWay}">
<TextBlock Text="{x:Static localization:UI.Stop_media_dump_on_first_error}" />
</CheckBox>
<CheckBox IsChecked="{Binding Force, Mode=TwoWay}">
<TextBlock Text="{x:Static localization:UI.Continue_dumping_whatever_happens}" />
</CheckBox>
<Grid ColumnDefinitions="Auto, *"
ColumnSpacing="8">
<TextBlock Grid.Column="0"
Text="{x:Static localization:UI.Retry_passes}"
VerticalAlignment="Center" />
<NumericUpDown Grid.Column="1"
HorizontalAlignment="Stretch"
Value="{Binding Retries, Mode=TwoWay}"
Increment="1"
Minimum="0" />
</Grid>
<CheckBox IsChecked="{Binding Persistent, Mode=TwoWay}">
<TextBlock Text="{x:Static localization:UI.Try_to_recover_partial_or_incorrect_data}" />
</CheckBox>
<CheckBox IsChecked="{Binding Resume, Mode=TwoWay}">
<TextBlock Text="{x:Static localization:UI.Create_or_use_resume_mapfile}" />
</CheckBox>
<CheckBox IsChecked="{Binding Track1Pregap, Mode=TwoWay}"
IsVisible="{Binding Track1PregapVisible, Mode=OneWay}">
<TextBlock Text="{x:Static localization:UI.Try_to_read_track_1_pregap}" />
</CheckBox>
<Grid ColumnDefinitions="Auto, *"
ColumnSpacing="8">
<TextBlock Grid.Column="0"
Text="{x:Static localization:UI.Skipped_sectors_on_error}"
VerticalAlignment="Center" />
<NumericUpDown Grid.Column="1"
Increment="1"
Minimum="1"
HorizontalAlignment="Stretch"
Value="{Binding Skipped, Mode=TwoWay}" />
</Grid>
<CheckBox IsChecked="{Binding CreateSidecar, Mode=TwoWay}">
<TextBlock Text="{x:Static localization:UI.Create_Aaru_Metadata_sidecar}" />
</CheckBox>
<CheckBox IsChecked="{Binding Trim, Mode=TwoWay}">
<TextBlock Text="{x:Static localization:UI.Trim_errors_from_skipped_sectors}" />
</CheckBox>
<CheckBox IsChecked="{Binding ExistingMetadata, Mode=TwoWay}">
<TextBlock Text="{x:Static localization:UI.Take_metadata_from_existing_CICM_XML_sidecar}" />
</CheckBox>
<Grid ColumnDefinitions="Auto, *"
IsVisible="{Binding EncodingVisible, Mode=OneWay}"
ColumnSpacing="8">
<TextBox Grid.Column="0"
Text="{x:Static localization:UI.Encoding_to_use_on_metadata_sidecar_creation}" />
<ComboBox Grid.Column="1"
ItemsSource="{Binding Encodings, Mode=OneWay}"
SelectedItem="{Binding SelectedEncoding, Mode=TwoWay}"
IsEnabled="{Binding EncodingEnabled, Mode=OneWay}">
<ComboBox.ItemTemplate>
<DataTemplate>
<TextBlock Text="{Binding Name, Mode=OneWay}" />
</DataTemplate>
</ComboBox.ItemTemplate>
</ComboBox>
</Grid>
<TabControl Grid.Row="0"
IsVisible="{Binding OptionsVisible, Mode=OneWay}">
<TabItem>
<TabItem.Header>
<controls:SpectreTextBlock Text="{x:Static localization:UI.Title_General}" />
</TabItem.Header>
<StackPanel Orientation="Vertical"
IsVisible="{Binding HasSubchannel, Mode=OneWay}">
Spacing="8">
<Grid ColumnDefinitions="Auto, *"
ColumnSpacing="8">
<TextBlock Grid.Column="0"
Text="{x:Static localization:UI.Output_format}"
VerticalAlignment="Center" />
<ComboBox Grid.Column="1"
ItemsSource="{Binding PluginsList, Mode=OneWay}"
SelectedItem="{Binding SelectedPlugin, Mode=TwoWay}"
HorizontalAlignment="Stretch"
IsEnabled="{Binding FormatReadOnly, Mode=OneWay}">
<ComboBox.ItemTemplate>
<DataTemplate>
<TextBlock Text="{Binding Name, Mode=OneWay}" />
</DataTemplate>
</ComboBox.ItemTemplate>
</ComboBox>
</Grid>
<Grid ColumnDefinitions="Auto, *"
ColumnSpacing="8">
<Button Grid.Column="0"
Command="{Binding DestinationCommand, Mode=OneWay}"
IsEnabled="{Binding DestinationEnabled, Mode=OneWay}">
<TextBlock Text="{x:Static localization:UI.ButtonLabel_Choose}" />
</Button>
<TextBox Grid.Column="1"
Text="{Binding Destination, Mode=OneWay}"
IsReadOnly="True" />
</Grid>
<CheckBox IsChecked="{Binding StopOnError, Mode=TwoWay}">
<TextBlock Text="{x:Static localization:UI.Stop_media_dump_on_first_error}" />
</CheckBox>
<CheckBox IsChecked="{Binding Force, Mode=TwoWay}">
<TextBlock Text="{x:Static localization:UI.Continue_dumping_whatever_happens}" />
</CheckBox>
<Grid ColumnDefinitions="Auto, *"
ColumnSpacing="8">
<TextBlock Grid.Column="0"
Text="{x:Static localization:UI.Retry_passes}"
VerticalAlignment="Center" />
<NumericUpDown Grid.Column="1"
HorizontalAlignment="Stretch"
Value="{Binding Retries, Mode=TwoWay}"
Increment="1"
Minimum="0" />
</Grid>
<CheckBox IsChecked="{Binding Persistent, Mode=TwoWay}">
<TextBlock Text="{x:Static localization:UI.Try_to_recover_partial_or_incorrect_data}" />
</CheckBox>
<CheckBox IsChecked="{Binding Resume, Mode=TwoWay}">
<TextBlock Text="{x:Static localization:UI.Create_or_use_resume_mapfile}" />
</CheckBox>
<CheckBox IsChecked="{Binding Track1Pregap, Mode=TwoWay}"
IsVisible="{Binding Track1PregapVisible, Mode=OneWay}">
<TextBlock Text="{x:Static localization:UI.Try_to_read_track_1_pregap}" />
</CheckBox>
<Grid ColumnDefinitions="Auto, *"
ColumnSpacing="8">
<TextBlock Grid.Column="0"
Text="{x:Static localization:UI.Skipped_sectors_on_error}"
VerticalAlignment="Center" />
<NumericUpDown Grid.Column="1"
Increment="1"
Minimum="1"
HorizontalAlignment="Stretch"
Value="{Binding Skipped, Mode=TwoWay}" />
</Grid>
<CheckBox IsChecked="{Binding CreateSidecar, Mode=TwoWay}">
<TextBlock Text="{x:Static localization:UI.Create_Aaru_Metadata_sidecar}" />
</CheckBox>
<CheckBox IsChecked="{Binding Trim, Mode=TwoWay}">
<TextBlock Text="{x:Static localization:UI.Trim_errors_from_skipped_sectors}" />
</CheckBox>
<CheckBox IsChecked="{Binding ExistingMetadata, Mode=TwoWay}">
<TextBlock Text="{x:Static localization:UI.Take_metadata_from_existing_CICM_XML_sidecar}" />
</CheckBox>
<Grid ColumnDefinitions="Auto, *"
IsVisible="{Binding EncodingVisible, Mode=OneWay}"
ColumnSpacing="8">
<TextBox Grid.Column="0"
Text="{x:Static localization:UI.Encoding_to_use_on_metadata_sidecar_creation}" />
<ComboBox Grid.Column="1"
ItemsSource="{Binding Encodings, Mode=OneWay}"
SelectedItem="{Binding SelectedEncoding, Mode=TwoWay}"
IsEnabled="{Binding EncodingEnabled, Mode=OneWay}">
<ComboBox.ItemTemplate>
<DataTemplate>
<TextBlock Text="{Binding Name, Mode=OneWay}" />
</DataTemplate>
</ComboBox.ItemTemplate>
</ComboBox>
</Grid>
</StackPanel>
</TabItem>
<TabItem IsVisible="{Binding HasSubchannel, Mode=OneWay}">
<TabItem.Header>
<controls:SpectreTextBlock Text="{x:Static localization:UI.Subchannels}" />
</TabItem.Header>
<StackPanel Orientation="Vertical"
Spacing="8">
<CheckBox IsChecked="{Binding FixSubchannelPosition, Mode=TwoWay}">
<TextBlock Text="{x:Static localization:UI.Fix_subchannel_position_help}"
TextWrapping="Wrap" />
@@ -171,9 +181,9 @@
TextWrapping="Wrap" />
</CheckBox>
</StackPanel>
<!-- TODO: Image options -->
</StackPanel>
</ScrollViewer>
</TabItem>
<!-- TODO: Image options -->
</TabControl>
<Grid Grid.Row="1"
RowDefinitions="Auto,Auto,*,Auto,Auto"
VerticalAlignment="Stretch"

View File

@@ -6657,5 +6657,11 @@ namespace Aaru.Localization {
return ResourceManager.GetString("Fixed_ECC_Q_for_sector_0", resourceCulture);
}
}
public static string Subchannels {
get {
return ResourceManager.GetString("Subchannels", resourceCulture);
}
}
}
}

View File

@@ -3329,4 +3329,7 @@ Probadores:
<data name="Fixed_ECC_Q_for_sector_0" xml:space="preserve">
<value>[yellow]Corregido ECC Q para el sector [violet]{0}[/][/]</value>
</data>
<data name="Subchannels" xml:space="preserve">
<value>Subcanales</value>
</data>
</root>

View File

@@ -3404,4 +3404,7 @@ Do you want to continue?</value>
<data name="Fixed_ECC_Q_for_sector_0" xml:space="preserve">
<value>[yellow]Fixed ECC Q for sector [violet]{0}[/][/]</value>
</data>
<data name="Subchannels" xml:space="preserve">
<value>Subchannels</value>
</data>
</root>