[Refactor] Update bindings to use OneWay mode for improved data flow

This commit is contained in:
2025-11-24 03:03:47 +00:00
parent 04c45e69fa
commit 22aa9b3538
6 changed files with 27 additions and 27 deletions

View File

@@ -68,7 +68,7 @@
<TextBlock Text="{x:Static localization:Core.Device_supports_MCPT_Command_Set}" /> <TextBlock Text="{x:Static localization:Core.Device_supports_MCPT_Command_Set}" />
</CheckBox> </CheckBox>
<TextBlock Grid.Row="3" <TextBlock Grid.Row="3"
Text="{Binding AtaMcptText}" /> Text="{Binding AtaMcptText, Mode=OneWay}" />
<CheckBox Grid.Row="4" <CheckBox Grid.Row="4"
IsEnabled="False" IsEnabled="False"
IsChecked="{Binding AtaMcptWriteProtectionChecked, Mode=OneWay}" IsChecked="{Binding AtaMcptWriteProtectionChecked, Mode=OneWay}"
@@ -76,7 +76,7 @@
<TextBlock Text="{x:Static localization:Core.Media_card_is_write_protected}" /> <TextBlock Text="{x:Static localization:Core.Media_card_is_write_protected}" />
</CheckBox> </CheckBox>
<TextBlock Grid.Row="5" <TextBlock Grid.Row="5"
Text="{Binding AtaMcptSpecificDataText}" /> Text="{Binding AtaMcptSpecificDataText, Mode=OneWay}" />
<StackPanel Grid.Row="6" <StackPanel Grid.Row="6"
Orientation="Horizontal" Orientation="Horizontal"
HorizontalAlignment="Left" HorizontalAlignment="Left"

View File

@@ -47,7 +47,7 @@
<tabs:ScsiInfoViewModel /> <tabs:ScsiInfoViewModel />
</Design.DataContext> </Design.DataContext>
<TabControl> <TabControl>
<TabItem IsVisible="{Binding !!InquiryData}"> <TabItem IsVisible="{Binding !!InquiryData, Mode=OneWay}">
<TabItem.Header> <TabItem.Header>
<TextBlock Text="{x:Static localization:UI.Title_INQUIRY}" /> <TextBlock Text="{x:Static localization:UI.Title_INQUIRY}" />
</TabItem.Header> </TabItem.Header>

View File

@@ -46,58 +46,58 @@
<tabs:XboxInfoViewModel /> <tabs:XboxInfoViewModel />
</Design.DataContext> </Design.DataContext>
<StackPanel> <StackPanel>
<StackPanel IsVisible="{Binding XboxInformationVisible}"> <StackPanel IsVisible="{Binding XboxInformationVisible, Mode=OneWay}">
<StackPanel Orientation="Horizontal" <StackPanel Orientation="Horizontal"
IsVisible="{Binding !!XboxL0VideoText}"> IsVisible="{Binding !!XboxL0VideoText, Mode=OneWay}">
<TextBlock Text="{x:Static localization:Core.Video_layer_zero_size}" /> <TextBlock Text="{x:Static localization:Core.Video_layer_zero_size}" />
<TextBox IsReadOnly="True" <TextBox IsReadOnly="True"
Text="{Binding XboxL0VideoText}" /> Text="{Binding XboxL0VideoText, Mode=OneWay}" />
</StackPanel> </StackPanel>
<StackPanel Orientation="Horizontal" <StackPanel Orientation="Horizontal"
IsVisible="{Binding !!XboxL1VideoText}"> IsVisible="{Binding !!XboxL1VideoText, Mode=OneWay}">
<TextBlock Text="{x:Static localization:Core.Video_layer_one_size}" /> <TextBlock Text="{x:Static localization:Core.Video_layer_one_size}" />
<TextBox IsReadOnly="True" <TextBox IsReadOnly="True"
Text="{Binding XboxL1VideoText}" /> Text="{Binding XboxL1VideoText, Mode=OneWay}" />
</StackPanel> </StackPanel>
<StackPanel Orientation="Horizontal" <StackPanel Orientation="Horizontal"
IsVisible="{Binding !!XboxMiddleZoneText}"> IsVisible="{Binding !!XboxMiddleZoneText, Mode=OneWay}">
<TextBlock Text="{x:Static localization:Core.Middle_zone_size}" /> <TextBlock Text="{x:Static localization:Core.Middle_zone_size}" />
<TextBox IsReadOnly="True" <TextBox IsReadOnly="True"
Text="{Binding XboxMiddleZoneText}" /> Text="{Binding XboxMiddleZoneText, Mode=OneWay}" />
</StackPanel> </StackPanel>
<StackPanel Orientation="Horizontal" <StackPanel Orientation="Horizontal"
IsVisible="{Binding !!XboxGameSizeText}"> IsVisible="{Binding !!XboxGameSizeText, Mode=OneWay}">
<TextBlock Text="{x:Static localization:Core.Game_data_size}" /> <TextBlock Text="{x:Static localization:Core.Game_data_size}" />
<TextBox IsReadOnly="True" <TextBox IsReadOnly="True"
Text="{Binding XboxGameSizeText}" /> Text="{Binding XboxGameSizeText, Mode=OneWay}" />
</StackPanel> </StackPanel>
<StackPanel Orientation="Horizontal" <StackPanel Orientation="Horizontal"
IsVisible="{Binding !!XboxTotalSizeText}"> IsVisible="{Binding !!XboxTotalSizeText, Mode=OneWay}">
<TextBlock Text="{x:Static localization:Core.Total_size}" /> <TextBlock Text="{x:Static localization:Core.Total_size}" />
<TextBox IsReadOnly="True" <TextBox IsReadOnly="True"
Text="{Binding XboxTotalSizeText}" /> Text="{Binding XboxTotalSizeText, Mode=OneWay}" />
</StackPanel> </StackPanel>
<StackPanel Orientation="Horizontal" <StackPanel Orientation="Horizontal"
IsVisible="{Binding !!XboxRealBreakText}"> IsVisible="{Binding !!XboxRealBreakText, Mode=OneWay}">
<TextBlock Text="{x:Static localization:Core.Real_layer_break}" /> <TextBlock Text="{x:Static localization:Core.Real_layer_break}" />
<TextBox IsReadOnly="True" <TextBox IsReadOnly="True"
Text="{Binding XboxRealBreakText}" /> Text="{Binding XboxRealBreakText, Mode=OneWay}" />
</StackPanel> </StackPanel>
</StackPanel> </StackPanel>
<StackPanel> <StackPanel>
<StackPanel IsVisible="{Binding !!XboxDmiText}"> <StackPanel IsVisible="{Binding !!XboxDmiText, Mode=OneWay}">
<TextBlock Text="{x:Static localization:UI.Title_Disc_Manufacturing_Information}" /> <TextBlock Text="{x:Static localization:UI.Title_Disc_Manufacturing_Information}" />
<TextBox IsReadOnly="True" <TextBox IsReadOnly="True"
Text="{Binding XboxDmiText}" /> Text="{Binding XboxDmiText, Mode=OneWay}" />
</StackPanel> </StackPanel>
<StackPanel IsVisible="{Binding !!XboxSsText}"> <StackPanel IsVisible="{Binding !!XboxSsText, Mode=OneWay}">
<TextBlock Text="{x:Static localization:UI.Title_Security_Sector}" /> <TextBlock Text="{x:Static localization:UI.Title_Security_Sector}" />
<TextBox IsReadOnly="True" <TextBox IsReadOnly="True"
Text="{Binding XboxSsText}" /> Text="{Binding XboxSsText, Mode=OneWay}" />
</StackPanel> </StackPanel>
<Button HorizontalAlignment="Right" <Button HorizontalAlignment="Right"
IsVisible="{Binding SaveXboxSsVisible}" IsVisible="{Binding SaveXboxSsVisible, Mode=OneWay}"
Command="{Binding SaveXboxSsCommand}"> Command="{Binding SaveXboxSsCommand, Mode=OneWay}">
<TextBlock Text="{x:Static localization:UI.ButtonLabel_Save_Xbox_Security_Sector}" /> <TextBlock Text="{x:Static localization:UI.ButtonLabel_Save_Xbox_Security_Sector}" />
</Button> </Button>
</StackPanel> </StackPanel>

View File

@@ -128,7 +128,7 @@
Orientation="Horizontal" Orientation="Horizontal"
HorizontalAlignment="Right" HorizontalAlignment="Right"
Spacing="8"> Spacing="8">
<Button Command="{Binding OpenDeviceCommand}"> <Button Command="{Binding OpenDeviceCommand, Mode=OneWay}">
<TextBlock Text="{x:Static localization:UI.Title_Open_device}" /> <TextBlock Text="{x:Static localization:UI.Title_Open_device}" />
</Button> </Button>
</StackPanel> </StackPanel>

View File

@@ -46,7 +46,7 @@
x:Class="Aaru.Gui.Views.Windows.MediaDump" x:Class="Aaru.Gui.Views.Windows.MediaDump"
Icon="/Assets/aaru-logo.png" Icon="/Assets/aaru-logo.png"
x:DataType="windows:MediaDumpViewModel" x:DataType="windows:MediaDumpViewModel"
Title="{Binding Title}"> Title="{Binding Title, Mode=OneWay}">
<Design.DataContext> <Design.DataContext>
<windows:MediaDumpViewModel /> <windows:MediaDumpViewModel />
</Design.DataContext> </Design.DataContext>

View File

@@ -55,13 +55,13 @@
HorizontalAlignment="Stretch" HorizontalAlignment="Stretch"
VerticalAlignment="Stretch" VerticalAlignment="Stretch"
Grid.Row="0" /> Grid.Row="0" />
<TextBlock Text="{Binding Message}" <TextBlock Text="{Binding Message, Mode=OneWay}"
HorizontalAlignment="Center" HorizontalAlignment="Center"
VerticalAlignment="Center" VerticalAlignment="Center"
Grid.Row="1" /> Grid.Row="1" />
<ProgressBar Maximum="{Binding MaxProgress}" <ProgressBar Maximum="{Binding MaxProgress, Mode=OneWay}"
Minimum="0" Minimum="0"
Value="{Binding CurrentProgress}" Value="{Binding CurrentProgress, Mode=OneWay}"
HorizontalAlignment="Stretch" HorizontalAlignment="Stretch"
VerticalAlignment="Bottom" VerticalAlignment="Bottom"
Grid.Row="2" /> Grid.Row="2" />