[GUI] Redesign and reorganize Settings dialog.

This commit is contained in:
2025-10-27 17:08:24 +00:00
parent c38e2e918c
commit 9e8479b390

View File

@@ -41,7 +41,7 @@
d:DesignWidth="800" d:DesignWidth="800"
d:DesignHeight="450" d:DesignHeight="450"
Width="675" Width="675"
Height="432" Height="640"
x:Class="Aaru.Gui.Views.Dialogs.SettingsDialog" x:Class="Aaru.Gui.Views.Dialogs.SettingsDialog"
Icon="/Assets/aaru-logo.png" Icon="/Assets/aaru-logo.png"
CanResize="False" CanResize="False"
@@ -49,108 +49,113 @@
<Design.DataContext> <Design.DataContext>
<dialogs:SettingsViewModel /> <dialogs:SettingsViewModel />
</Design.DataContext> </Design.DataContext>
<Border Padding="15"> <Grid Margin="12"
<Grid> RowSpacing="8"
<Grid.RowDefinitions> RowDefinitions="*,Auto">
<RowDefinition Height="*" /> <RowDefinition Height="Auto" /> <TabControl Grid.Row="0"
</Grid.RowDefinitions> HorizontalAlignment="Stretch"
<TabControl Grid.Row="0" VerticalAlignment="Stretch"
HorizontalAlignment="Stretch" SelectedIndex="{Binding TabControlSelectedIndex, Mode=TwoWay}">
VerticalAlignment="Stretch" <TabItem IsVisible="{Binding GdprVisible, Mode=TwoWay}">
SelectedIndex="{Binding TabControlSelectedIndex}"> <TabItem.Header>
<TabItem IsVisible="{Binding GdprVisible}"> <TextBlock Text="{x:Static localization:UI.Title_GDPR}" />
<TabItem.Header> </TabItem.Header>
<TextBlock Text="{x:Static localization:UI.Title_GDPR}" /> <StackPanel Spacing="8"
</TabItem.Header> Margin="8">
<StackPanel Spacing="5"> <TextBlock Text="{x:Static localization:UI.GDPR_Compliance}"
<TextBlock Text="{x:Static localization:UI.GDPR_Compliance}" /> <Border Padding="10" /> TextWrapping="Wrap" />
<TextBlock Text="{x:Static localization:UI.GDPR_Open_Source_Disclaimer}" /> <Border Padding="10" />
<Border Padding="10" /> <TextBlock Text="{x:Static localization:UI.GDPR_Open_Source_Disclaimer}"
<TextBlock Text="{x:Static localization:UI.GDPR_Information_sharing}" /> TextWrapping="Wrap" />
</StackPanel> <Border Padding="10" />
</TabItem> <TextBlock Text="{x:Static localization:UI.GDPR_Information_sharing}"
<TabItem> TextWrapping="Wrap" />
<TabItem.Header> </StackPanel>
<TextBlock Text="{x:Static localization:UI.Title_Reports}" /> </TabItem>
</TabItem.Header> <TabItem>
<StackPanel Spacing="15"> <TabItem.Header>
<StackPanel Spacing="5"> <TextBlock Text="{x:Static localization:UI.Title_Reports}" />
<TextBlock Text="{x:Static localization:UI.Configure_Device_Report_information_disclaimer}" /> </TabItem.Header>
<CheckBox IsChecked="{Binding SaveReportsGloballyChecked}"> <StackPanel Spacing="8"
<TextBlock Margin="8">
Text="{x:Static localization:UI.Save_device_reports_in_shared_folder_of_your_computer_Q}" /> <StackPanel Spacing="8">
</CheckBox> <TextBlock Text="{x:Static localization:UI.Configure_Device_Report_information_disclaimer}"
</StackPanel> TextWrapping="Wrap" />
<StackPanel> <CheckBox IsChecked="{Binding SaveReportsGloballyChecked, Mode=TwoWay}">
<TextBlock Text="{x:Static localization:UI.Configure_share_report_disclaimer}" /> <TextBlock
<CheckBox IsChecked="{Binding ShareReportsChecked}"> Text="{x:Static localization:UI.Save_device_reports_in_shared_folder_of_your_computer_Q}" />
<TextBlock Text="{x:Static localization:UI.Share_your_device_reports_with_us_Q}" />
</CheckBox>
</StackPanel>
</StackPanel>
</TabItem>
<TabItem>
<TabItem.Header>
<TextBlock Text="{x:Static localization:UI.Title_Statistics}" />
</TabItem.Header>
<StackPanel Spacing="15">
<TextBlock Text="{x:Static localization:UI.Statistics_disclaimer}" />
<CheckBox IsChecked="{Binding SaveStatsChecked}">
<TextBlock Text="{x:Static localization:UI.Save_stats_about_your_Aaru_usage_Q}" />
</CheckBox> </CheckBox>
<StackPanel IsVisible="{Binding SaveStatsChecked}"
Spacing="5">
<CheckBox IsChecked="{Binding ShareStatsChecked}">
<TextBlock Text="{x:Static localization:UI.Share_your_stats_anonymously_Q}" />
</CheckBox>
<CheckBox IsChecked="{Binding CommandStatsChecked}">
<TextBlock Text="{x:Static localization:UI.Gather_statistics_about_command_usage_Q}" />
</CheckBox>
<CheckBox IsChecked="{Binding DeviceStatsChecked}">
<TextBlock Text="{x:Static localization:UI.Gather_statistics_about_found_devices_Q}" />
</CheckBox>
<CheckBox IsChecked="{Binding FilesystemStatsChecked}">
<TextBlock
Text="{x:Static localization:UI.Gather_statistics_about_found_filesystems_Q}" />
</CheckBox>
<CheckBox IsChecked="{Binding FilesystemStatsChecked}">
<TextBlock
Text="{x:Static localization:UI.Gather_statistics_about_found_file_filters_Q}" />
</CheckBox>
<CheckBox IsChecked="{Binding MediaImageStatsChecked}">
<TextBlock
Text="{x:Static localization:UI.Gather_statistics_about_found_media_image_formats_Q}" />
</CheckBox>
<CheckBox IsChecked="{Binding MediaScanStatsChecked}">
<TextBlock Text="{x:Static localization:UI.Gather_statistics_about_scanned_media_Q}" />
</CheckBox>
<CheckBox IsChecked="{Binding PartitionStatsChecked}">
<TextBlock
Text="{x:Static localization:UI.Gather_statistics_about_found_partitioning_schemes_Q}" />
</CheckBox>
<CheckBox IsChecked="{Binding MediaStatsChecked}">
<TextBlock Text="{x:Static localization:UI.Gather_statistics_about_media_types_Q}" />
</CheckBox>
<CheckBox IsChecked="{Binding VerifyStatsChecked}">
<TextBlock
Text="{x:Static localization:UI.Gather_statistics_about_media_image_verifications_Q}" />
</CheckBox>
</StackPanel>
</StackPanel> </StackPanel>
</TabItem> <StackPanel Spacing="8">
</TabControl> <TextBlock Text="{x:Static localization:UI.Configure_share_report_disclaimer}"
<StackPanel Grid.Row="1" TextWrapping="Wrap" />
HorizontalAlignment="Right" <CheckBox IsChecked="{Binding ShareReportsChecked, Mode=TwoWay}">
VerticalAlignment="Center" <TextBlock Text="{x:Static localization:UI.Share_your_device_reports_with_us_Q}" />
Orientation="Horizontal" </CheckBox>
Spacing="5"> </StackPanel>
<Button Command="{Binding SaveCommand}"> </StackPanel>
<TextBlock Text="{x:Static localization:UI.ButtonLabel_Save}" /> </TabItem>
</Button> <TabItem>
<Button Command="{Binding CancelCommand}"> <TabItem.Header>
<TextBlock Text="{x:Static localization:UI.ButtonLabel_Cancel}" /> <TextBlock Text="{x:Static localization:UI.Title_Statistics}" />
</Button> </TabItem.Header>
</StackPanel> <StackPanel Spacing="8"
</Grid> Margin="8">
</Border> <TextBlock Text="{x:Static localization:UI.Statistics_disclaimer}"
TextWrapping="Wrap" />
<CheckBox IsChecked="{Binding SaveStatsChecked, Mode=TwoWay}">
<TextBlock Text="{x:Static localization:UI.Save_stats_about_your_Aaru_usage_Q}" />
</CheckBox>
<StackPanel IsVisible="{Binding SaveStatsChecked, Mode=OneWay}"
Spacing="8">
<CheckBox IsChecked="{Binding ShareStatsChecked, Mode=TwoWay}">
<TextBlock Text="{x:Static localization:UI.Share_your_stats_anonymously_Q}" />
</CheckBox>
<CheckBox IsChecked="{Binding CommandStatsChecked, Mode=TwoWay}">
<TextBlock Text="{x:Static localization:UI.Gather_statistics_about_command_usage_Q}" />
</CheckBox>
<CheckBox IsChecked="{Binding DeviceStatsChecked, Mode=TwoWay}">
<TextBlock Text="{x:Static localization:UI.Gather_statistics_about_found_devices_Q}" />
</CheckBox>
<CheckBox IsChecked="{Binding FilesystemStatsChecked, Mode=TwoWay}">
<TextBlock Text="{x:Static localization:UI.Gather_statistics_about_found_filesystems_Q}" />
</CheckBox>
<CheckBox IsChecked="{Binding FilesystemStatsChecked, Mode=TwoWay}">
<TextBlock Text="{x:Static localization:UI.Gather_statistics_about_found_file_filters_Q}" />
</CheckBox>
<CheckBox IsChecked="{Binding MediaImageStatsChecked, Mode=TwoWay}">
<TextBlock
Text="{x:Static localization:UI.Gather_statistics_about_found_media_image_formats_Q}" />
</CheckBox>
<CheckBox IsChecked="{Binding MediaScanStatsChecked, Mode=TwoWay}">
<TextBlock Text="{x:Static localization:UI.Gather_statistics_about_scanned_media_Q}" />
</CheckBox>
<CheckBox IsChecked="{Binding PartitionStatsChecked, Mode=TwoWay}">
<TextBlock
Text="{x:Static localization:UI.Gather_statistics_about_found_partitioning_schemes_Q}" />
</CheckBox>
<CheckBox IsChecked="{Binding MediaStatsChecked, Mode=TwoWay}">
<TextBlock Text="{x:Static localization:UI.Gather_statistics_about_media_types_Q}" />
</CheckBox>
<CheckBox IsChecked="{Binding VerifyStatsChecked, Mode=TwoWay}">
<TextBlock
Text="{x:Static localization:UI.Gather_statistics_about_media_image_verifications_Q}" />
</CheckBox>
</StackPanel>
</StackPanel>
</TabItem>
</TabControl>
<StackPanel Grid.Row="1"
HorizontalAlignment="Right"
VerticalAlignment="Center"
Orientation="Horizontal"
Spacing="8">
<Button Command="{Binding SaveCommand, Mode=OneWay}">
<TextBlock Text="{x:Static localization:UI.ButtonLabel_Save}" />
</Button>
<Button Command="{Binding CancelCommand, Mode=OneWay}">
<TextBlock Text="{x:Static localization:UI.ButtonLabel_Cancel}" />
</Button>
</StackPanel>
</Grid>
</Window> </Window>