Update Avalonia to 11.0.4.

This commit is contained in:
2023-09-25 22:58:48 +01:00
parent 500970b7a4
commit 9abb0368ee
36 changed files with 100 additions and 97 deletions

View File

@@ -30,19 +30,23 @@
<NrtShowRevision>true</NrtShowRevision> <NrtShowRevision>true</NrtShowRevision>
</PropertyGroup> </PropertyGroup>
<ItemGroup> <ItemGroup>
<PackageReference Include="Avalonia.Controls.DataGrid" Version="0.10.18"/> <PackageReference Include="Avalonia.Controls.DataGrid" Version="11.0.4"/>
<PackageReference Include="Avalonia.Diagnostics" Version="0.10.18"/> <PackageReference Include="Avalonia.Diagnostics" Version="11.0.4"/>
<PackageReference Include="Avalonia.Themes.Fluent" Version="11.0.4" />
<PackageReference Include="Claunia.Encoding" Version="1.9.2"/> <PackageReference Include="Claunia.Encoding" Version="1.9.2"/>
<PackageReference Include="JetBrains.Annotations" Version="2023.2.0" />
<PackageReference Include="MessageBox.Avalonia" Version="2.1.0"/> <PackageReference Include="MessageBox.Avalonia" Version="2.1.0"/>
<!-- TODO: Abandoned project need to find replacement
<PackageReference Include="OxyPlot.Avalonia-alpha-2020-04-15" Version="1.0.0"/> <PackageReference Include="OxyPlot.Avalonia-alpha-2020-04-15" Version="1.0.0"/>
-->
<PackageReference Include="System.Text.Encoding.CodePages" Version="8.0.0-rc.1.23419.4" /> <PackageReference Include="System.Text.Encoding.CodePages" Version="8.0.0-rc.1.23419.4" />
<PackageReference Include="Unclassified.NetRevisionTask" Version="0.4.3"> <PackageReference Include="Unclassified.NetRevisionTask" Version="0.4.3">
<PrivateAssets>all</PrivateAssets> <PrivateAssets>all</PrivateAssets>
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets> <IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
</PackageReference> </PackageReference>
<PackageReference Include="Avalonia" Version="0.10.18"/> <PackageReference Include="Avalonia" Version="11.0.4"/>
<PackageReference Include="Avalonia.Desktop" Version="0.10.18"/> <PackageReference Include="Avalonia.Desktop" Version="11.0.4"/>
<PackageReference Include="Avalonia.ReactiveUI" Version="0.10.18"/> <PackageReference Include="Avalonia.ReactiveUI" Version="11.0.4"/>
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<ProjectReference Include="..\Aaru.Core\Aaru.Core.csproj"/> <ProjectReference Include="..\Aaru.Core\Aaru.Core.csproj"/>

View File

@@ -37,16 +37,16 @@
<gui:ViewLocator /> <gui:ViewLocator />
</Application.DataTemplates> </Application.DataTemplates>
<Application.Styles> <Application.Styles>
<StyleInclude Source="avares://Avalonia.Themes.Default/DefaultTheme.xaml" /> <FluentTheme />
<StyleInclude Source="avares://Avalonia.Themes.Default/Accents/BaseLight.xaml" /> <!-- TODO: Abandoned project need to find replacement
<StyleInclude Source="avares://Avalonia.Controls.DataGrid/Themes/Default.xaml" />
<StyleInclude Source="resm:OxyPlot.Avalonia.Themes.Default.xaml?assembly=OxyPlot.Avalonia" /> <StyleInclude Source="resm:OxyPlot.Avalonia.Themes.Default.xaml?assembly=OxyPlot.Avalonia" />
-->
</Application.Styles> </Application.Styles>
<NativeMenu.Menu> <NativeMenu.Menu>
<NativeMenu> <NativeMenu>
<NativeMenuItem Header="_About" Clicked="OnAboutClicked" /> <NativeMenuItem Header="_About" Click="OnAboutClicked" />
<NativeMenuItem Header="_Preferences" Clicked="OnPreferencesClicked" /> <NativeMenuItem Header="_Preferences" Click="OnPreferencesClicked" />
<NativeMenuItem Header="_Quit" Clicked="OnQuitClicked" /> <NativeMenuItem Header="_Quit" Click="OnQuitClicked" />
</NativeMenu> </NativeMenu>
</NativeMenu.Menu> </NativeMenu.Menu>
</Application> </Application>

View File

@@ -30,6 +30,7 @@
// Copyright © 2011-2023 Natalia Portillo // Copyright © 2011-2023 Natalia Portillo
// ****************************************************************************/ // ****************************************************************************/
/* TODO: Doesn't compile with Avalonia 11.0, but it didn't work previously so pending rewriting
using System; using System;
using System.Collections.Generic; using System.Collections.Generic;
using System.Collections.Specialized; using System.Collections.Specialized;
@@ -486,3 +487,4 @@ public sealed class BlockMap : ItemsControl
base.OnDetachedFromLogicalTree(e); base.OnDetachedFromLogicalTree(e);
} }
} }
*/

View File

@@ -43,6 +43,6 @@ public static class Main
} }
// Avalonia configuration, don't remove; also used by visual designer. // Avalonia configuration, don't remove; also used by visual designer.
public static AppBuilder BuildAvaloniaApp() => AppBuilder.Configure<App>().UsePlatformDetect().LogToDebug(). public static AppBuilder BuildAvaloniaApp() => AppBuilder.Configure<App>().UsePlatformDetect().
UseReactiveUI().UseManagedSystemDialogs(); UseReactiveUI().UseManagedSystemDialogs();
} }

View File

@@ -34,16 +34,17 @@ using System;
using Aaru.Gui.ViewModels; using Aaru.Gui.ViewModels;
using Avalonia.Controls; using Avalonia.Controls;
using Avalonia.Controls.Templates; using Avalonia.Controls.Templates;
using Avalonia.Markup.Xaml.Templates;
using JetBrains.Annotations; using JetBrains.Annotations;
namespace Aaru.Gui; namespace Aaru.Gui;
public sealed class ViewLocator : IDataTemplate public sealed class ViewLocator : DataTemplate
{ {
public bool SupportsRecycling => false; public bool SupportsRecycling => false;
[CanBeNull] [CanBeNull]
public IControl Build([NotNull] object data) public Control Build([NotNull] object data)
{ {
string name = data.GetType().FullName?.Replace("ViewModel", "View"); string name = data.GetType().FullName?.Replace("ViewModel", "View");

View File

@@ -80,7 +80,6 @@ public sealed class ImageInfoViewModel : ViewModelBase
_imagePath = imagePath; _imagePath = imagePath;
_filter = filter; _filter = filter;
_imageFormat = imageFormat; _imageFormat = imageFormat;
IAssetLoader assets = AvaloniaLocator.Current.GetService<IAssetLoader>();
MediaTagsList = new ObservableCollection<string>(); MediaTagsList = new ObservableCollection<string>();
SectorTagsList = new ObservableCollection<string>(); SectorTagsList = new ObservableCollection<string>();
Sessions = new ObservableCollection<Session>(); Sessions = new ObservableCollection<Session>();
@@ -95,18 +94,18 @@ public sealed class ImageInfoViewModel : ViewModelBase
DecodeMediaTagCommand = ReactiveCommand.Create(ExecuteDecodeMediaTagCommand); DecodeMediaTagCommand = ReactiveCommand.Create(ExecuteDecodeMediaTagCommand);
var genericHddIcon = var genericHddIcon =
new Bitmap(assets.Open(new Uri("avares://Aaru.Gui/Assets/Icons/oxygen/32x32/drive-harddisk.png"))); new Bitmap(AssetLoader.Open(new Uri("avares://Aaru.Gui/Assets/Icons/oxygen/32x32/drive-harddisk.png")));
var genericOpticalIcon = var genericOpticalIcon =
new Bitmap(assets.Open(new Uri("avares://Aaru.Gui/Assets/Icons/oxygen/32x32/drive-optical.png"))); new Bitmap(AssetLoader.Open(new Uri("avares://Aaru.Gui/Assets/Icons/oxygen/32x32/drive-optical.png")));
var genericFolderIcon = var genericFolderIcon =
new Bitmap(assets.Open(new Uri("avares://Aaru.Gui/Assets/Icons/oxygen/32x32/inode-directory.png"))); new Bitmap(AssetLoader.Open(new Uri("avares://Aaru.Gui/Assets/Icons/oxygen/32x32/inode-directory.png")));
var mediaResource = new Uri($"avares://Aaru.Gui/Assets/Logos/Media/{imageFormat.Info.MediaType}.png"); var mediaResource = new Uri($"avares://Aaru.Gui/Assets/Logos/Media/{imageFormat.Info.MediaType}.png");
MediaLogo = assets.Exists(mediaResource) MediaLogo = AssetLoader.Exists(mediaResource)
? new Bitmap(assets.Open(mediaResource)) ? new Bitmap(AssetLoader.Open(mediaResource))
: imageFormat.Info.MetadataMediaType == MetadataMediaType.BlockMedia : imageFormat.Info.MetadataMediaType == MetadataMediaType.BlockMedia
? genericHddIcon ? genericHddIcon
: imageFormat.Info.MetadataMediaType == MetadataMediaType.OpticalDisc : imageFormat.Info.MetadataMediaType == MetadataMediaType.OpticalDisc

View File

@@ -93,13 +93,12 @@ public sealed class MediaInfoViewModel : ViewModelBase
SaveMediumSupportCommand = ReactiveCommand.Create(ExecuteSaveMediumSupportCommand); SaveMediumSupportCommand = ReactiveCommand.Create(ExecuteSaveMediumSupportCommand);
DumpCommand = ReactiveCommand.Create(ExecuteDumpCommand); DumpCommand = ReactiveCommand.Create(ExecuteDumpCommand);
ScanCommand = ReactiveCommand.Create(ExecuteScanCommand); ScanCommand = ReactiveCommand.Create(ExecuteScanCommand);
IAssetLoader assets = AvaloniaLocator.Current.GetService<IAssetLoader>();
_devicePath = devicePath; _devicePath = devicePath;
_scsiInfo = scsiInfo; _scsiInfo = scsiInfo;
var mediaResource = new Uri($"avares://Aaru.Gui/Assets/Logos/Media/{scsiInfo.MediaType}.png"); var mediaResource = new Uri($"avares://Aaru.Gui/Assets/Logos/Media/{scsiInfo.MediaType}.png");
MediaLogo = assets?.Exists(mediaResource) == true ? new Bitmap(assets.Open(mediaResource)) : null; MediaLogo = AssetLoader.Exists(mediaResource) ? new Bitmap(AssetLoader.Open(mediaResource)) : null;
MediaType = scsiInfo.MediaType.ToString(); MediaType = scsiInfo.MediaType.ToString();

View File

@@ -1754,7 +1754,7 @@ public sealed class ImageConvertViewModel : ViewModelBase
if(_cancel) if(_cancel)
{ {
await Dispatcher.UIThread.InvokeAsync(action: async () => await Dispatcher.UIThread.InvokeAsync(async () =>
{ {
await MessageBoxManager. await MessageBoxManager.
GetMessageBoxStandardWindow(UI.Title_Error, UI.Operation_canceled_the_output_file_is_not_correct, GetMessageBoxStandardWindow(UI.Title_Error, UI.Operation_canceled_the_output_file_is_not_correct,
@@ -1770,7 +1770,7 @@ public sealed class ImageConvertViewModel : ViewModelBase
if(!outputFormat.Close()) if(!outputFormat.Close())
{ {
await Dispatcher.UIThread.InvokeAsync(action: async () => await MessageBoxManager. await Dispatcher.UIThread.InvokeAsync(async () => await MessageBoxManager.
GetMessageBoxStandardWindow(UI.Title_Error, GetMessageBoxStandardWindow(UI.Title_Error,
string. string.
Format(UI.Error_0_closing_output_image_Contents_are_not_correct, Format(UI.Error_0_closing_output_image_Contents_are_not_correct,
@@ -1782,7 +1782,7 @@ public sealed class ImageConvertViewModel : ViewModelBase
return; return;
} }
await Dispatcher.UIThread.InvokeAsync(action: async () => await Dispatcher.UIThread.InvokeAsync(async () =>
{ {
await MessageBoxManager. await MessageBoxManager.
GetMessageBoxStandardWindow(warning ? UI.Title_Warning : UI.Title_Conversion_success, GetMessageBoxStandardWindow(warning ? UI.Title_Warning : UI.Title_Conversion_success,

View File

@@ -72,7 +72,6 @@ namespace Aaru.Gui.ViewModels.Windows;
public sealed class MainWindowViewModel : ViewModelBase public sealed class MainWindowViewModel : ViewModelBase
{ {
readonly IAssetLoader _assets;
readonly DevicesRootModel _devicesRoot; readonly DevicesRootModel _devicesRoot;
readonly Bitmap _ejectIcon; readonly Bitmap _ejectIcon;
readonly Bitmap _genericFolderIcon; readonly Bitmap _genericFolderIcon;
@@ -109,7 +108,6 @@ public sealed class MainWindowViewModel : ViewModelBase
RefreshDevicesCommand = ReactiveCommand.Create(ExecuteRefreshDevicesCommand); RefreshDevicesCommand = ReactiveCommand.Create(ExecuteRefreshDevicesCommand);
_view = view; _view = view;
TreeRoot = new ObservableCollection<RootModel>(); TreeRoot = new ObservableCollection<RootModel>();
_assets = AvaloniaLocator.Current.GetService<IAssetLoader>();
ContentPanel = Greeting; ContentPanel = Greeting;
_imagesRoot = new ImagesRootModel _imagesRoot = new ImagesRootModel
@@ -135,32 +133,29 @@ public sealed class MainWindowViewModel : ViewModelBase
break; break;
} }
if(_assets == null)
return;
_genericHddIcon = _genericHddIcon =
new Bitmap(_assets.Open(new Uri("avares://Aaru.Gui/Assets/Icons/oxygen/32x32/drive-harddisk.png"))); new Bitmap(AssetLoader.Open(new Uri("avares://Aaru.Gui/Assets/Icons/oxygen/32x32/drive-harddisk.png")));
_genericOpticalIcon = _genericOpticalIcon =
new Bitmap(_assets.Open(new Uri("avares://Aaru.Gui/Assets/Icons/oxygen/32x32/drive-optical.png"))); new Bitmap(AssetLoader.Open(new Uri("avares://Aaru.Gui/Assets/Icons/oxygen/32x32/drive-optical.png")));
_genericTapeIcon = _genericTapeIcon =
new Bitmap(_assets.Open(new Uri("avares://Aaru.Gui/Assets/Icons/oxygen/32x32/media-tape.png"))); new Bitmap(AssetLoader.Open(new Uri("avares://Aaru.Gui/Assets/Icons/oxygen/32x32/media-tape.png")));
_genericFolderIcon = _genericFolderIcon =
new Bitmap(_assets.Open(new Uri("avares://Aaru.Gui/Assets/Icons/oxygen/32x32/inode-directory.png"))); new Bitmap(AssetLoader.Open(new Uri("avares://Aaru.Gui/Assets/Icons/oxygen/32x32/inode-directory.png")));
_usbIcon = _usbIcon =
new new
Bitmap(_assets.Open(new Uri("avares://Aaru.Gui/Assets/Icons/oxygen/32x32/drive-removable-media-usb.png"))); Bitmap(AssetLoader.Open(new Uri("avares://Aaru.Gui/Assets/Icons/oxygen/32x32/drive-removable-media-usb.png")));
_removableIcon = _removableIcon =
new Bitmap(_assets.Open(new Uri("avares://Aaru.Gui/Assets/Icons/oxygen/32x32/drive-removable-media.png"))); new Bitmap(AssetLoader.Open(new Uri("avares://Aaru.Gui/Assets/Icons/oxygen/32x32/drive-removable-media.png")));
_sdIcon = _sdIcon =
new Bitmap(_assets.Open(new Uri("avares://Aaru.Gui/Assets/Icons/oxygen/32x32/media-flash-sd-mmc.png"))); new Bitmap(AssetLoader.Open(new Uri("avares://Aaru.Gui/Assets/Icons/oxygen/32x32/media-flash-sd-mmc.png")));
_ejectIcon = new Bitmap(_assets.Open(new Uri("avares://Aaru.Gui/Assets/Icons/oxygen/32x32/media-eject.png"))); _ejectIcon = new Bitmap(AssetLoader.Open(new Uri("avares://Aaru.Gui/Assets/Icons/oxygen/32x32/media-eject.png")));
} }
public string FileLabel => UI.Menu_File; public string FileLabel => UI.Menu_File;
@@ -321,7 +316,7 @@ public sealed class MainWindowViewModel : ViewModelBase
deviceModel.Media.Add(new MediaModel deviceModel.Media.Add(new MediaModel
{ {
DevicePath = deviceModel.Path, DevicePath = deviceModel.Path,
Icon = _assets.Exists(mediaResource) ? new Bitmap(_assets.Open(mediaResource)) Icon = AssetLoader.Exists(mediaResource) ? new Bitmap(AssetLoader.Open(mediaResource))
: null, : null,
Name = $"{scsiInfo.MediaType}", Name = $"{scsiInfo.MediaType}",
ViewModel = new MediaInfoViewModel(scsiInfo, deviceModel.Path, _view) ViewModel = new MediaInfoViewModel(scsiInfo, deviceModel.Path, _view)
@@ -575,8 +570,8 @@ public sealed class MainWindowViewModel : ViewModelBase
var imageModel = new ImageModel var imageModel = new ImageModel
{ {
Path = result[0], Path = result[0],
Icon = _assets.Exists(mediaResource) Icon = AssetLoader.Exists(mediaResource)
? new Bitmap(_assets.Open(mediaResource)) ? new Bitmap(AssetLoader.Open(mediaResource))
: imageFormat.Info.MetadataMediaType == MetadataMediaType.BlockMedia : imageFormat.Info.MetadataMediaType == MetadataMediaType.BlockMedia
? _genericHddIcon ? _genericHddIcon
: imageFormat.Info.MetadataMediaType == MetadataMediaType.OpticalDisc : imageFormat.Info.MetadataMediaType == MetadataMediaType.OpticalDisc

View File

@@ -45,7 +45,7 @@ using Avalonia.Media;
using Avalonia.Threading; using Avalonia.Threading;
using MessageBox.Avalonia; using MessageBox.Avalonia;
using MessageBox.Avalonia.Enums; using MessageBox.Avalonia.Enums;
using OxyPlot; //using OxyPlot;
using ReactiveUI; using ReactiveUI;
namespace Aaru.Gui.ViewModels.Windows; namespace Aaru.Gui.ViewModels.Windows;
@@ -105,7 +105,7 @@ public sealed class MediaScanViewModel : ViewModelBase
StartVisible = true; StartVisible = true;
CloseVisible = true; CloseVisible = true;
BlockMapList = new ObservableCollection<(ulong block, double duration)>(); BlockMapList = new ObservableCollection<(ulong block, double duration)>();
ChartPoints = new ObservableCollection<DataPoint>(); // ChartPoints = new ObservableCollection<DataPoint>();
StepsX = double.NaN; StepsX = double.NaN;
StepsY = double.NaN; StepsY = double.NaN;
AxesColor = Colors.Black; AxesColor = Colors.Black;
@@ -132,7 +132,7 @@ public sealed class MediaScanViewModel : ViewModelBase
} }
public ObservableCollection<(ulong block, double duration)> BlockMapList { get; } public ObservableCollection<(ulong block, double duration)> BlockMapList { get; }
public ObservableCollection<DataPoint> ChartPoints { get; } // public ObservableCollection<DataPoint> ChartPoints { get; }
public ulong Blocks public ulong Blocks
{ {
@@ -325,7 +325,7 @@ public sealed class MediaScanViewModel : ViewModelBase
CloseVisible = false; CloseVisible = false;
ProgressVisible = true; ProgressVisible = true;
ResultsVisible = true; ResultsVisible = true;
ChartPoints.Clear(); // ChartPoints.Clear();
new Thread(DoWork).Start(); new Thread(DoWork).Start();
} }
@@ -437,10 +437,12 @@ public sealed class MediaScanViewModel : ViewModelBase
[SuppressMessage("ReSharper", "AsyncVoidMethod")] [SuppressMessage("ReSharper", "AsyncVoidMethod")]
async void ScanSpeed(ulong sector, double currentSpeed) => await Dispatcher.UIThread.InvokeAsync(() => async void ScanSpeed(ulong sector, double currentSpeed) => await Dispatcher.UIThread.InvokeAsync(() =>
{ {
/* TODO: Abandoned project need to find replacement
if(ChartPoints.Count == 0) if(ChartPoints.Count == 0)
ChartPoints.Add(new DataPoint(0, currentSpeed)); ChartPoints.Add(new DataPoint(0, currentSpeed));
ChartPoints.Add(new DataPoint(sector, currentSpeed)); ChartPoints.Add(new DataPoint(sector, currentSpeed));
*/
if(currentSpeed > MaxY) if(currentSpeed > MaxY)
MaxY = currentSpeed + (currentSpeed / 10d); MaxY = currentSpeed + (currentSpeed / 10d);
@@ -589,7 +591,7 @@ public sealed class MediaScanViewModel : ViewModelBase
[SuppressMessage("ReSharper", "AsyncVoidMethod")] [SuppressMessage("ReSharper", "AsyncVoidMethod")]
// ReSharper disable once AsyncVoidLambda // ReSharper disable once AsyncVoidLambda
async void StoppingErrorMessage(string text) => await Dispatcher.UIThread.InvokeAsync(action: async () => async void StoppingErrorMessage(string text) => await Dispatcher.UIThread.InvokeAsync(async () =>
{ {
ProgressText = text; ProgressText = text;

View File

@@ -92,7 +92,7 @@
<TabItem.Header> <TabItem.Header>
<TextBlock Text="{Binding LibrariesLabel}" /> <TextBlock Text="{Binding LibrariesLabel}" />
</TabItem.Header> </TabItem.Header>
<DataGrid Items="{Binding Assemblies}" HorizontalScrollBarVisibility="Visible"> <DataGrid ItemsSource="{Binding Assemblies}" HorizontalScrollBarVisibility="Visible">
<DataGrid.Columns> <DataGrid.Columns>
<DataGridTextColumn Binding="{Binding Name}" Width="Auto" IsReadOnly="True"> <DataGridTextColumn Binding="{Binding Name}" Width="Auto" IsReadOnly="True">
<DataGridTextColumn.Header> <DataGridTextColumn.Header>

View File

@@ -45,7 +45,7 @@
<Grid.RowDefinitions> <Grid.RowDefinitions>
<RowDefinition Height="*" /> <RowDefinition Height="Auto" /> <RowDefinition Height="Auto" /> <RowDefinition Height="*" /> <RowDefinition Height="Auto" /> <RowDefinition Height="Auto" />
</Grid.RowDefinitions> </Grid.RowDefinitions>
<DataGrid Items="{Binding Entries}"> <DataGrid ItemsSource="{Binding Entries}">
<DataGrid.Columns> <DataGrid.Columns>
<DataGridTextColumn Header="{Binding TimeLabel}" Binding="{Binding Timestamp}" Width="Auto" <DataGridTextColumn Header="{Binding TimeLabel}" Binding="{Binding Timestamp}" Width="Auto"
IsReadOnly="True" /> IsReadOnly="True" />

View File

@@ -50,7 +50,7 @@ public sealed class Console : Window
void InitializeComponent() => AvaloniaXamlLoader.Load(this); void InitializeComponent() => AvaloniaXamlLoader.Load(this);
protected override void OnClosing([NotNull] CancelEventArgs e) protected override void OnClosing(WindowClosingEventArgs e)
{ {
e.Cancel = true; e.Cancel = true;
Hide(); Hide();

View File

@@ -45,7 +45,7 @@
<Grid.RowDefinitions> <Grid.RowDefinitions>
<RowDefinition Height="260" /> <RowDefinition Height="Auto" /> <RowDefinition Height="260" /> <RowDefinition Height="Auto" />
</Grid.RowDefinitions> </Grid.RowDefinitions>
<DataGrid Items="{Binding Encodings}" HorizontalScrollBarVisibility="Visible"> <DataGrid ItemsSource="{Binding Encodings}" HorizontalScrollBarVisibility="Visible">
<DataGrid.Columns> <DataGrid.Columns>
<DataGridTextColumn Header="{Binding CodeLabel}" Binding="{Binding Name}" Width="Auto" <DataGridTextColumn Header="{Binding CodeLabel}" Binding="{Binding Name}" Width="Auto"
IsReadOnly="True" /> IsReadOnly="True" />

View File

@@ -49,7 +49,7 @@
<TabItem.Header> <TabItem.Header>
<TextBlock Text="{Binding FiltersLabel}" /> <TextBlock Text="{Binding FiltersLabel}" />
</TabItem.Header> </TabItem.Header>
<DataGrid Items="{Binding Filters}" HorizontalScrollBarVisibility="Visible"> <DataGrid ItemsSource="{Binding Filters}" HorizontalScrollBarVisibility="Visible">
<DataGrid.Columns> <DataGrid.Columns>
<DataGridTextColumn Header="{Binding NameLabel}" Binding="{Binding Name}" Width="Auto" <DataGridTextColumn Header="{Binding NameLabel}" Binding="{Binding Name}" Width="Auto"
IsReadOnly="True" /> IsReadOnly="True" />
@@ -66,7 +66,7 @@
<TabItem.Header> <TabItem.Header>
<TextBlock Text="{Binding PartitionsLabel}" /> <TextBlock Text="{Binding PartitionsLabel}" />
</TabItem.Header> </TabItem.Header>
<DataGrid Items="{Binding PartitionSchemes}" HorizontalScrollBarVisibility="Visible"> <DataGrid ItemsSource="{Binding PartitionSchemes}" HorizontalScrollBarVisibility="Visible">
<DataGrid.Columns> <DataGrid.Columns>
<DataGridTextColumn Header="{Binding NameLabel}" Binding="{Binding Name}" Width="Auto" <DataGridTextColumn Header="{Binding NameLabel}" Binding="{Binding Name}" Width="Auto"
IsReadOnly="True" /> IsReadOnly="True" />
@@ -89,7 +89,7 @@
<RowDefinition Height="*" /> <RowDefinition Height="*" />
</Grid.RowDefinitions> </Grid.RowDefinitions>
<TextBlock Grid.Row="0" Text="{Binding IdentifyLabel}" FontWeight="Bold" /> <TextBlock Grid.Row="0" Text="{Binding IdentifyLabel}" FontWeight="Bold" />
<DataGrid Grid.Row="1" Items="{Binding Filesystems}" HorizontalScrollBarVisibility="Visible"> <DataGrid Grid.Row="1" ItemsSource="{Binding Filesystems}" HorizontalScrollBarVisibility="Visible">
<DataGrid.Columns> <DataGrid.Columns>
<DataGridTextColumn Header="{Binding NameLabel}" Binding="{Binding Name}" Width="Auto" <DataGridTextColumn Header="{Binding NameLabel}" Binding="{Binding Name}" Width="Auto"
IsReadOnly="True" /> IsReadOnly="True" />
@@ -102,7 +102,7 @@
</DataGrid.Columns> </DataGrid.Columns>
</DataGrid> </DataGrid>
<TextBlock Grid.Row="2" Text="{Binding ReadableLabel}" FontWeight="Bold" /> <TextBlock Grid.Row="2" Text="{Binding ReadableLabel}" FontWeight="Bold" />
<DataGrid Grid.Row="3" Items="{Binding ReadOnlyFilesystems}" <DataGrid Grid.Row="3" ItemsSource="{Binding ReadOnlyFilesystems}"
HorizontalScrollBarVisibility="Visible"> HorizontalScrollBarVisibility="Visible">
<DataGrid.Columns> <DataGrid.Columns>
<DataGridTextColumn Header="{Binding NameLabel}" Binding="{Binding Name}" Width="Auto" <DataGridTextColumn Header="{Binding NameLabel}" Binding="{Binding Name}" Width="Auto"
@@ -127,7 +127,7 @@
<RowDefinition Height="*" /> <RowDefinition Height="*" />
</Grid.RowDefinitions> </Grid.RowDefinitions>
<TextBlock Grid.Row="0" Text="{Binding ReadableLabel}" FontWeight="Bold" /> <TextBlock Grid.Row="0" Text="{Binding ReadableLabel}" FontWeight="Bold" />
<DataGrid Grid.Row="1" Items="{Binding Images}" HorizontalScrollBarVisibility="Visible"> <DataGrid Grid.Row="1" ItemsSource="{Binding Images}" HorizontalScrollBarVisibility="Visible">
<DataGrid.Columns> <DataGrid.Columns>
<DataGridTextColumn Header="{Binding NameLabel}" Binding="{Binding Name}" Width="Auto" <DataGridTextColumn Header="{Binding NameLabel}" Binding="{Binding Name}" Width="Auto"
IsReadOnly="True" /> IsReadOnly="True" />
@@ -140,7 +140,7 @@
</DataGrid.Columns> </DataGrid.Columns>
</DataGrid> </DataGrid>
<TextBlock Grid.Row="2" Text="{Binding WritableLabel}" FontWeight="Bold" /> <TextBlock Grid.Row="2" Text="{Binding WritableLabel}" FontWeight="Bold" />
<DataGrid Grid.Row="3" Items="{Binding WritableImages}" HorizontalScrollBarVisibility="Visible"> <DataGrid Grid.Row="3" ItemsSource="{Binding WritableImages}" HorizontalScrollBarVisibility="Visible">
<DataGrid.Columns> <DataGrid.Columns>
<DataGridTextColumn Header="{Binding NameLabel}" Binding="{Binding Name}" Width="Auto" <DataGridTextColumn Header="{Binding NameLabel}" Binding="{Binding Name}" Width="Auto"
IsReadOnly="True" /> IsReadOnly="True" />
@@ -164,7 +164,7 @@
<RowDefinition Height="*" /> <RowDefinition Height="*" />
</Grid.RowDefinitions> </Grid.RowDefinitions>
<TextBlock Grid.Row="0" Text="{Binding ReadableLabel}" FontWeight="Bold" /> <TextBlock Grid.Row="0" Text="{Binding ReadableLabel}" FontWeight="Bold" />
<DataGrid Grid.Row="1" Items="{Binding FloppyImages}" HorizontalScrollBarVisibility="Visible"> <DataGrid Grid.Row="1" ItemsSource="{Binding FloppyImages}" HorizontalScrollBarVisibility="Visible">
<DataGrid.Columns> <DataGrid.Columns>
<DataGridTextColumn Header="{Binding NameLabel}" Binding="{Binding Name}" Width="Auto" <DataGridTextColumn Header="{Binding NameLabel}" Binding="{Binding Name}" Width="Auto"
IsReadOnly="True" /> IsReadOnly="True" />
@@ -177,7 +177,7 @@
</DataGrid.Columns> </DataGrid.Columns>
</DataGrid> </DataGrid>
<TextBlock Grid.Row="2" Text="{Binding WritableLabel}" FontWeight="Bold" /> <TextBlock Grid.Row="2" Text="{Binding WritableLabel}" FontWeight="Bold" />
<DataGrid Grid.Row="3" Items="{Binding WritableFloppyImages}" <DataGrid Grid.Row="3" ItemsSource="{Binding WritableFloppyImages}"
HorizontalScrollBarVisibility="Visible"> HorizontalScrollBarVisibility="Visible">
<DataGrid.Columns> <DataGrid.Columns>
<DataGridTextColumn Header="{Binding NameLabel}" Binding="{Binding Name}" Width="Auto" <DataGridTextColumn Header="{Binding NameLabel}" Binding="{Binding Name}" Width="Auto"

View File

@@ -73,7 +73,7 @@
<TabItem.Header> <TabItem.Header>
<TextBlock Text="{Binding FiltersLabel}" /> <TextBlock Text="{Binding FiltersLabel}" />
</TabItem.Header> </TabItem.Header>
<DataGrid Items="{Binding Filters}" HorizontalScrollBarVisibility="Visible"> <DataGrid ItemsSource="{Binding Filters}" HorizontalScrollBarVisibility="Visible">
<DataGrid.Columns> <DataGrid.Columns>
<!-- TODO: Bind header --> <!-- TODO: Bind header -->
<DataGridTextColumn Header="{Binding FilterLabel}" Binding="{Binding Name}" Width="Auto" <DataGridTextColumn Header="{Binding FilterLabel}" Binding="{Binding Name}" Width="Auto"
@@ -87,7 +87,7 @@
<TabItem.Header> <TabItem.Header>
<TextBlock Text="{Binding FormatsLabel}" /> <TextBlock Text="{Binding FormatsLabel}" />
</TabItem.Header> </TabItem.Header>
<DataGrid Items="{Binding Formats}" HorizontalScrollBarVisibility="Visible"> <DataGrid ItemsSource="{Binding Formats}" HorizontalScrollBarVisibility="Visible">
<DataGrid.Columns> <DataGrid.Columns>
<!-- TODO: Bind header --> <!-- TODO: Bind header -->
<DataGridTextColumn Header="{Binding FormatLabel}" Binding="{Binding Name}" Width="Auto" <DataGridTextColumn Header="{Binding FormatLabel}" Binding="{Binding Name}" Width="Auto"
@@ -101,7 +101,7 @@
<TabItem.Header> <TabItem.Header>
<TextBlock Text="{Binding PartitionsLabel}" /> <TextBlock Text="{Binding PartitionsLabel}" />
</TabItem.Header> </TabItem.Header>
<DataGrid Items="{Binding Partitions}" HorizontalScrollBarVisibility="Visible"> <DataGrid ItemsSource="{Binding Partitions}" HorizontalScrollBarVisibility="Visible">
<DataGrid.Columns> <DataGrid.Columns>
<!-- TODO: Bind header --> <!-- TODO: Bind header -->
<DataGridTextColumn Header="{Binding PartitionLabel}" Binding="{Binding Name}" Width="Auto" <DataGridTextColumn Header="{Binding PartitionLabel}" Binding="{Binding Name}" Width="Auto"
@@ -115,7 +115,7 @@
<TabItem.Header> <TabItem.Header>
<TextBlock Text="{Binding FilesystemsLabel}" /> <TextBlock Text="{Binding FilesystemsLabel}" />
</TabItem.Header> </TabItem.Header>
<DataGrid Items="{Binding Filesystems}" HorizontalScrollBarVisibility="Visible"> <DataGrid ItemsSource="{Binding Filesystems}" HorizontalScrollBarVisibility="Visible">
<DataGrid.Columns> <DataGrid.Columns>
<!-- TODO: Bind header --> <!-- TODO: Bind header -->
<DataGridTextColumn Header="{Binding FilesystemLabel}" Binding="{Binding Name}" <DataGridTextColumn Header="{Binding FilesystemLabel}" Binding="{Binding Name}"
@@ -129,7 +129,7 @@
<TabItem.Header> <TabItem.Header>
<TextBlock Text="{Binding DevicesLabel}" /> <TextBlock Text="{Binding DevicesLabel}" />
</TabItem.Header> </TabItem.Header>
<DataGrid Items="{Binding Devices}" HorizontalScrollBarVisibility="Visible"> <DataGrid ItemsSource="{Binding Devices}" HorizontalScrollBarVisibility="Visible">
<DataGrid.Columns> <DataGrid.Columns>
<!-- TODO: Bind header --> <!-- TODO: Bind header -->
<DataGridTextColumn Header="{Binding DeviceLabel}" Binding="{Binding Model}" Width="Auto" <DataGridTextColumn Header="{Binding DeviceLabel}" Binding="{Binding Model}" Width="Auto"
@@ -147,7 +147,7 @@
<TabItem.Header> <TabItem.Header>
<TextBlock Text="{Binding MediasLabel}" /> <TextBlock Text="{Binding MediasLabel}" />
</TabItem.Header> </TabItem.Header>
<DataGrid Items="{Binding Medias}" HorizontalScrollBarVisibility="Visible"> <DataGrid ItemsSource="{Binding Medias}" HorizontalScrollBarVisibility="Visible">
<DataGrid.Columns> <DataGrid.Columns>
<!-- TODO: Bind header --> <!-- TODO: Bind header -->
<DataGridTextColumn Header="{Binding MediaLabel}" Binding="{Binding Name}" Width="Auto" <DataGridTextColumn Header="{Binding MediaLabel}" Binding="{Binding Name}" Width="Auto"

View File

@@ -84,7 +84,7 @@
<TextBlock Text="{Binding MediaGeometryText}" IsVisible="{Binding !!MediaGeometryText}" /> <TextBlock Text="{Binding MediaGeometryText}" IsVisible="{Binding !!MediaGeometryText}" />
<TextBlock Text="{Binding ReadableMediaTagsLabel}" FontWeight="Bold" <TextBlock Text="{Binding ReadableMediaTagsLabel}" FontWeight="Bold"
IsVisible="{Binding !!MediaTagsList.Count}" /> IsVisible="{Binding !!MediaTagsList.Count}" />
<DataGrid Items="{Binding MediaTagsList}" IsVisible="{Binding !!MediaTagsList.Count}" <DataGrid ItemsSource="{Binding MediaTagsList}" IsVisible="{Binding !!MediaTagsList.Count}"
IsReadOnly="True"> IsReadOnly="True">
<DataGrid.Columns> <DataGrid.Columns>
<DataGridTextColumn Header="{Binding TagLabel}" Binding="{Binding .}" Width="Auto" <DataGridTextColumn Header="{Binding TagLabel}" Binding="{Binding .}" Width="Auto"
@@ -93,7 +93,7 @@
</DataGrid> </DataGrid>
<TextBlock Text="{Binding ReadableSectorTagsLabel}" FontWeight="Bold" <TextBlock Text="{Binding ReadableSectorTagsLabel}" FontWeight="Bold"
IsVisible="{Binding !!SectorTagsList.Count}" /> IsVisible="{Binding !!SectorTagsList.Count}" />
<DataGrid Items="{Binding SectorTagsList}" IsVisible="{Binding !!SectorTagsList.Count}" <DataGrid ItemsSource="{Binding SectorTagsList}" IsVisible="{Binding !!SectorTagsList.Count}"
IsReadOnly="True"> IsReadOnly="True">
<DataGrid.Columns> <DataGrid.Columns>
<DataGridTextColumn Header="{Binding TagLabel}" Binding="{Binding .}" Width="Auto" <DataGridTextColumn Header="{Binding TagLabel}" Binding="{Binding .}" Width="Auto"
@@ -106,7 +106,7 @@
<TabItem.Header> <TabItem.Header>
<TextBlock Text="{Binding SessionsLabel}" /> <TextBlock Text="{Binding SessionsLabel}" />
</TabItem.Header> </TabItem.Header>
<DataGrid Items="{Binding Sessions}" IsVisible="{Binding !!Sessions.Count}" IsReadOnly="True"> <DataGrid ItemsSource="{Binding Sessions}" IsVisible="{Binding !!Sessions.Count}" IsReadOnly="True">
<DataGrid.Columns> <DataGrid.Columns>
<DataGridTextColumn Header="{Binding SessionLabel}" Binding="{Binding SessionSequence}" <DataGridTextColumn Header="{Binding SessionLabel}" Binding="{Binding SessionSequence}"
Width="Auto" /> Width="Auto" />
@@ -122,7 +122,7 @@
<TabItem.Header> <TabItem.Header>
<TextBlock Text="{Binding TracksLabel}" /> <TextBlock Text="{Binding TracksLabel}" />
</TabItem.Header> </TabItem.Header>
<DataGrid Items="{Binding Tracks}" IsVisible="{Binding !!Tracks.Count}" IsReadOnly="True"> <DataGrid ItemsSource="{Binding Tracks}" IsVisible="{Binding !!Tracks.Count}" IsReadOnly="True">
<DataGrid.Columns> <DataGrid.Columns>
<DataGridTextColumn Header="{Binding TrackLabel}" Binding="{Binding Sequence}" Width="Auto" /> <DataGridTextColumn Header="{Binding TrackLabel}" Binding="{Binding Sequence}" Width="Auto" />
<DataGridTextColumn Header="{Binding TypeLabel}" Binding="{Binding Type}" Width="Auto" /> <DataGridTextColumn Header="{Binding TypeLabel}" Binding="{Binding Type}" Width="Auto" />
@@ -141,7 +141,7 @@
<TabItem.Header> <TabItem.Header>
<TextBlock Text="{Binding DumpHardwareLabel}" /> <TextBlock Text="{Binding DumpHardwareLabel}" />
</TabItem.Header> </TabItem.Header>
<DataGrid Items="{Binding DumpHardwareList}" IsVisible="{Binding !!DumpHardwareList.Count}" <DataGrid ItemsSource="{Binding DumpHardwareList}" IsVisible="{Binding !!DumpHardwareList.Count}"
IsReadOnly="True"> IsReadOnly="True">
<DataGrid.Columns> <DataGrid.Columns>
<DataGridTextColumn Header="{Binding ManufacturerLabel}" Binding="{Binding Manufacturer}" <DataGridTextColumn Header="{Binding ManufacturerLabel}" Binding="{Binding Manufacturer}"

View File

@@ -39,7 +39,7 @@
<Design.DataContext> <Design.DataContext>
<panels:SubdirectoryViewModel /> <panels:SubdirectoryViewModel />
</Design.DataContext> </Design.DataContext>
<DataGrid Items="{Binding Entries}" IsReadOnly="True" SelectionMode="Extended"> <!-- TODO: SelectedItems="{Binding SelectedEntries}" --> <DataGrid ItemsSource="{Binding Entries}" IsReadOnly="True" SelectionMode="Extended"> <!-- TODO: SelectedItemsSource="{Binding SelectedEntries}" -->
<DataGrid.ContextMenu> <DataGrid.ContextMenu>
<ContextMenu> <ContextMenu>
<Button Command="{Binding ExtractFilesCommand}"> <Button Command="{Binding ExtractFilesCommand}">

View File

@@ -116,7 +116,7 @@
</StackPanel> </StackPanel>
<StackPanel IsVisible="{Binding !!IsrcList.Count}"> <StackPanel IsVisible="{Binding !!IsrcList.Count}">
<TextBlock Text="{Binding ISRCsLabel}" /> <TextBlock Text="{Binding ISRCsLabel}" />
<DataGrid Items="{Binding IsrcList}"> <DataGrid ItemsSource="{Binding IsrcList}">
<DataGrid.Columns> <DataGrid.Columns>
<DataGridTextColumn Binding="{Binding Track}" Header="{Binding TrackLabel}" /> <DataGridTextColumn Binding="{Binding Track}" Header="{Binding TrackLabel}" />
<DataGridTextColumn Binding="{Binding ISRC}" Header="{Binding ISRCLabel}" /> <DataGridTextColumn Binding="{Binding ISRC}" Header="{Binding ISRCLabel}" />

View File

@@ -41,7 +41,7 @@
</Design.DataContext> </Design.DataContext>
<StackPanel> <StackPanel>
<StackPanel Orientation="Horizontal"> <StackPanel Orientation="Horizontal">
<DataGrid Items="{Binding CisList}" SelectedItem="{Binding SelectedCis}"> <DataGrid ItemsSource="{Binding CisList}" SelectedItem="{Binding SelectedCis}">
<DataGrid.Columns> <DataGrid.Columns>
<DataGridTextColumn Header="{Binding CisLabel}" Binding="{Binding Code}" /> <DataGridTextColumn Header="{Binding CisLabel}" Binding="{Binding Code}" />
</DataGrid.Columns> </DataGrid.Columns>

View File

@@ -63,7 +63,7 @@
</TabItem.Header> </TabItem.Header>
<StackPanel> <StackPanel>
<StackPanel Orientation="Horizontal"> <StackPanel Orientation="Horizontal">
<DataGrid HorizontalAlignment="Left" VerticalAlignment="Stretch" Items="{Binding ModeSensePages}" <DataGrid HorizontalAlignment="Left" VerticalAlignment="Stretch" ItemsSource="{Binding ModeSensePages}"
SelectedItem="{Binding SelectedModeSensePage}" IsReadOnly="True"> SelectedItem="{Binding SelectedModeSensePage}" IsReadOnly="True">
<DataGrid.Columns> <DataGrid.Columns>
<DataGridTextColumn Header="{Binding PageLabel}" Binding="{Binding Page}" /> <DataGridTextColumn Header="{Binding PageLabel}" Binding="{Binding Page}" />
@@ -88,7 +88,7 @@
</TabItem.Header> </TabItem.Header>
<StackPanel> <StackPanel>
<StackPanel Orientation="Horizontal"> <StackPanel Orientation="Horizontal">
<DataGrid HorizontalAlignment="Left" VerticalAlignment="Stretch" Items="{Binding EvpdPages}" <DataGrid HorizontalAlignment="Left" VerticalAlignment="Stretch" ItemsSource="{Binding EvpdPages}"
SelectedItem="{Binding SelectedEvpdPage}" IsReadOnly="True"> SelectedItem="{Binding SelectedEvpdPage}" IsReadOnly="True">
<DataGrid.Columns> <DataGrid.Columns>
<DataGridTextColumn Header="{Binding PageLabel}" Binding="{Binding Page}" /> <DataGridTextColumn Header="{Binding PageLabel}" Binding="{Binding Page}" />
@@ -110,7 +110,7 @@
</TabItem.Header> </TabItem.Header>
<StackPanel> <StackPanel>
<StackPanel Orientation="Horizontal"> <StackPanel Orientation="Horizontal">
<DataGrid HorizontalAlignment="Left" VerticalAlignment="Stretch" Items="{Binding MmcFeatures}" <DataGrid HorizontalAlignment="Left" VerticalAlignment="Stretch" ItemsSource="{Binding MmcFeatures}"
SelectedItem="{Binding SelectedMmcFeature}" IsReadOnly="True"> SelectedItem="{Binding SelectedMmcFeature}" IsReadOnly="True">
<DataGrid.Columns> <DataGrid.Columns>
<DataGridTextColumn Header="{Binding FeatureLabel}" Binding="{Binding Page}" /> <DataGridTextColumn Header="{Binding FeatureLabel}" Binding="{Binding Page}" />

View File

@@ -43,7 +43,7 @@
<StackPanel Orientation="Vertical"> <StackPanel Orientation="Vertical">
<StackPanel Orientation="Horizontal"> <StackPanel Orientation="Horizontal">
<TextBlock Text="{Binding TagLabel}" /> <TextBlock Text="{Binding TagLabel}" />
<ComboBox Items="{Binding TagsList}" SelectedItem="{Binding SelectedTag}"> <ComboBox ItemsSource="{Binding TagsList}" SelectedItem="{Binding SelectedTag}">
<ComboBox.DataTemplates> <ComboBox.DataTemplates>
<DataTemplate> <DataTemplate>
<TextBlock Text="{Binding Name}" /> <TextBlock Text="{Binding Name}" />

View File

@@ -90,7 +90,7 @@
<StackPanel Orientation="Vertical" IsVisible="{Binding ResultsVisible}"> <StackPanel Orientation="Vertical" IsVisible="{Binding ResultsVisible}">
<StackPanel Orientation="Vertical" IsVisible="{Binding TrackChecksumsVisible}"> <StackPanel Orientation="Vertical" IsVisible="{Binding TrackChecksumsVisible}">
<TextBlock Text="{Binding TrackChecksumsLabel}" /> <TextBlock Text="{Binding TrackChecksumsLabel}" />
<DataGrid Items="{Binding TrackChecksums}"> <DataGrid ItemsSource="{Binding TrackChecksums}">
<DataGrid.Columns> <DataGrid.Columns>
<DataGridTextColumn Header="{Binding TrackLabel}" Binding="{Binding Track}" /> <DataGridTextColumn Header="{Binding TrackLabel}" Binding="{Binding Track}" />
<DataGridTextColumn Header="{Binding AlgorithmsLabel}" Binding="{Binding Algorithm}" /> <DataGridTextColumn Header="{Binding AlgorithmsLabel}" Binding="{Binding Algorithm}" />
@@ -100,7 +100,7 @@
</StackPanel> </StackPanel>
<StackPanel Orientation="Vertical" IsVisible="{Binding MediaChecksumsVisible}"> <StackPanel Orientation="Vertical" IsVisible="{Binding MediaChecksumsVisible}">
<TextBlock Text="{Binding MediaChecksumsLabel}" /> <TextBlock Text="{Binding MediaChecksumsLabel}" />
<DataGrid Items="{Binding MediaChecksums}"> <DataGrid ItemsSource="{Binding MediaChecksums}">
<DataGrid.Columns> <DataGrid.Columns>
<DataGridTextColumn Header="{Binding AlgorithmsLabel}" Binding="{Binding Algorithm}" /> <DataGridTextColumn Header="{Binding AlgorithmsLabel}" Binding="{Binding Algorithm}" />
<DataGridTextColumn Header="{Binding HashLabel}" Binding="{Binding Value}" /> <DataGridTextColumn Header="{Binding HashLabel}" Binding="{Binding Value}" />

View File

@@ -50,7 +50,7 @@ public sealed class ImageChecksum : Window
void InitializeComponent() => AvaloniaXamlLoader.Load(this); void InitializeComponent() => AvaloniaXamlLoader.Load(this);
protected override void OnClosing(CancelEventArgs e) protected override void OnClosing(WindowClosingEventArgs e)
{ {
(DataContext as ImageChecksumViewModel)?.ExecuteStopCommand(); (DataContext as ImageChecksumViewModel)?.ExecuteStopCommand();
base.OnClosing(e); base.OnClosing(e);

View File

@@ -43,7 +43,7 @@
<StackPanel Orientation="Vertical"> <StackPanel Orientation="Vertical">
<TextBlock Text="{Binding SourceImageLabel}" /> <TextBox Text="{Binding SourceText}" IsReadOnly="True" /> <TextBlock Text="{Binding SourceImageLabel}" /> <TextBox Text="{Binding SourceText}" IsReadOnly="True" />
<TextBlock Text="{Binding OutputFormatLabel}" /> <TextBlock Text="{Binding OutputFormatLabel}" />
<ComboBox Items="{Binding PluginsList}" SelectedItem="{Binding SelectedPlugin}" <ComboBox ItemsSource="{Binding PluginsList}" SelectedItem="{Binding SelectedPlugin}"
IsEnabled="{Binding FormatReadOnly}"> IsEnabled="{Binding FormatReadOnly}">
<ComboBox.ItemTemplate> <ComboBox.ItemTemplate>
<DataTemplate> <DataTemplate>

View File

@@ -50,7 +50,7 @@ public sealed class ImageConvert : Window
void InitializeComponent() => AvaloniaXamlLoader.Load(this); void InitializeComponent() => AvaloniaXamlLoader.Load(this);
protected override void OnClosing(CancelEventArgs e) protected override void OnClosing(WindowClosingEventArgs e)
{ {
(DataContext as ImageConvertViewModel)?.ExecuteStopCommand(); (DataContext as ImageConvertViewModel)?.ExecuteStopCommand();
base.OnClosing(e); base.OnClosing(e);

View File

@@ -58,7 +58,7 @@
<TextBlock Text="{Binding MediaEntropyText}" IsVisible="{Binding MediaEntropyVisible}" /> <TextBlock Text="{Binding MediaEntropyText}" IsVisible="{Binding MediaEntropyVisible}" />
<TextBlock Text="{Binding MediaUniqueSectorsText}" IsVisible="{Binding MediaUniqueSectorsVisible}" /> <TextBlock Text="{Binding MediaUniqueSectorsText}" IsVisible="{Binding MediaUniqueSectorsVisible}" />
<TextBlock Text="{Binding TrackEntropyLabel}" IsVisible="{Binding SeparatedTracksEnabled}" /> <TextBlock Text="{Binding TrackEntropyLabel}" IsVisible="{Binding SeparatedTracksEnabled}" />
<DataGrid IsVisible="{Binding SeparatedTracksEnabled}" Items="{Binding TrackEntropy}"> <DataGrid IsVisible="{Binding SeparatedTracksEnabled}" ItemsSource="{Binding TrackEntropy}">
<DataGrid.Columns> <DataGrid.Columns>
<DataGridTextColumn Header="{Binding TrackLabel}" Binding="{Binding Track}" /> <DataGridTextColumn Header="{Binding TrackLabel}" Binding="{Binding Track}" />
<DataGridTextColumn Header="{Binding EntropyLabel}" Binding="{Binding Entropy}" /> <DataGridTextColumn Header="{Binding EntropyLabel}" Binding="{Binding Entropy}" />

View File

@@ -50,7 +50,7 @@ public sealed class ImageEntropy : Window
void InitializeComponent() => AvaloniaXamlLoader.Load(this); void InitializeComponent() => AvaloniaXamlLoader.Load(this);
protected override void OnClosing(CancelEventArgs e) protected override void OnClosing(WindowClosingEventArgs e)
{ {
(DataContext as ImageEntropyViewModel)?.ExecuteStopCommand(); (DataContext as ImageEntropyViewModel)?.ExecuteStopCommand();
base.OnClosing(e); base.OnClosing(e);

View File

@@ -54,7 +54,7 @@
<StackPanel Orientation="Horizontal"> <StackPanel Orientation="Horizontal">
<StackPanel Orientation="Vertical" IsVisible="{Binding SectorErrorsVisible}"> <StackPanel Orientation="Vertical" IsVisible="{Binding SectorErrorsVisible}">
<TextBlock Text="{Binding SectorErrorsText}" /> <TextBlock Text="{Binding SectorErrorsText}" />
<DataGrid Items="{Binding ErrorList}"> <DataGrid ItemsSource="{Binding ErrorList}">
<DataGrid.Columns> <DataGrid.Columns>
<DataGridTextColumn Header="{Binding LBALabel}" Binding="{Binding Lba}" /> <DataGridTextColumn Header="{Binding LBALabel}" Binding="{Binding Lba}" />
</DataGrid.Columns> </DataGrid.Columns>
@@ -62,7 +62,7 @@
</StackPanel> </StackPanel>
<StackPanel Orientation="Vertical" IsVisible="{Binding SectorsUnknownsVisible}"> <StackPanel Orientation="Vertical" IsVisible="{Binding SectorsUnknownsVisible}">
<TextBlock Text="{Binding SectorsUnknownsText}" /> <TextBlock Text="{Binding SectorsUnknownsText}" />
<DataGrid Items="{Binding UnknownList}"> <DataGrid ItemsSource="{Binding UnknownList}">
<DataGrid.Columns> <DataGrid.Columns>
<DataGridTextColumn Header="{Binding LBALabel}" Binding="{Binding Lba}" /> <DataGridTextColumn Header="{Binding LBALabel}" Binding="{Binding Lba}" />
</DataGrid.Columns> </DataGrid.Columns>

View File

@@ -50,7 +50,7 @@ public sealed class ImageVerify : Window
void InitializeComponent() => AvaloniaXamlLoader.Load(this); void InitializeComponent() => AvaloniaXamlLoader.Load(this);
protected override void OnClosing(CancelEventArgs e) protected override void OnClosing(WindowClosingEventArgs e)
{ {
(DataContext as ImageVerifyViewModel)?.ExecuteStopCommand(); (DataContext as ImageVerifyViewModel)?.ExecuteStopCommand();
base.OnClosing(e); base.OnClosing(e);

View File

@@ -69,7 +69,7 @@
<Grid.ColumnDefinitions> <Grid.ColumnDefinitions>
<ColumnDefinition Width="*" /><ColumnDefinition Width="5" /><ColumnDefinition Width="6*" /> <ColumnDefinition Width="*" /><ColumnDefinition Width="5" /><ColumnDefinition Width="6*" />
</Grid.ColumnDefinitions> </Grid.ColumnDefinitions>
<TreeView Items="{Binding TreeRoot}" SelectedItem="{Binding TreeViewSelectedItem}"> <TreeView ItemsSource="{Binding TreeRoot}" SelectedItem="{Binding TreeViewSelectedItem}">
<TreeView.DataTemplates> <TreeView.DataTemplates>
<TreeDataTemplate DataType="models:DevicesRootModel" ItemsSource="{Binding Devices}"> <TreeDataTemplate DataType="models:DevicesRootModel" ItemsSource="{Binding Devices}">
<StackPanel Orientation="Horizontal"> <StackPanel Orientation="Horizontal">

View File

@@ -43,7 +43,7 @@
<StackPanel Orientation="Vertical"> <StackPanel Orientation="Vertical">
<StackPanel Orientation="Vertical" IsVisible="{Binding OptionsVisible}"> <StackPanel Orientation="Vertical" IsVisible="{Binding OptionsVisible}">
<TextBlock Text="{Binding OutputFormatLabel}" /> <TextBlock Text="{Binding OutputFormatLabel}" />
<ComboBox Items="{Binding PluginsList}" SelectedItem="{Binding SelectedPlugin}" <ComboBox ItemsSource="{Binding PluginsList}" SelectedItem="{Binding SelectedPlugin}"
IsEnabled="{Binding FormatReadOnly}"> IsEnabled="{Binding FormatReadOnly}">
<ComboBox.ItemTemplate> <ComboBox.ItemTemplate>
<DataTemplate> <DataTemplate>
@@ -85,7 +85,7 @@
</CheckBox> </CheckBox>
<StackPanel IsVisible="{Binding EncodingVisible}"> <StackPanel IsVisible="{Binding EncodingVisible}">
<TextBox Text="{Binding EncodingLabel}" /> <TextBox Text="{Binding EncodingLabel}" />
<ComboBox Items="{Binding Encodings}" SelectedItem="{Binding SelectedEncoding}" <ComboBox ItemsSource="{Binding Encodings}" SelectedItem="{Binding SelectedEncoding}"
IsEnabled="{Binding EncodingEnabled}"> IsEnabled="{Binding EncodingEnabled}">
<ComboBox.ItemTemplate> <ComboBox.ItemTemplate>
<DataTemplate> <DataTemplate>

View File

@@ -50,7 +50,7 @@ public sealed class MediaDump : Window
void InitializeComponent() => AvaloniaXamlLoader.Load(this); void InitializeComponent() => AvaloniaXamlLoader.Load(this);
protected override void OnClosing(CancelEventArgs e) protected override void OnClosing(WindowClosingEventArgs e)
{ {
(DataContext as MediaDumpViewModel)?.ExecuteStopCommand(); (DataContext as MediaDumpViewModel)?.ExecuteStopCommand();
base.OnClosing(e); base.OnClosing(e);

View File

@@ -34,8 +34,7 @@
<Window xmlns="https://github.com/avaloniaui" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" <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:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:windows="clr-namespace:Aaru.Gui.ViewModels.Windows" xmlns:controls="clr-namespace:Aaru.Gui.Controls" xmlns:windows="clr-namespace:Aaru.Gui.ViewModels.Windows" mc:Ignorable="d" d:DesignWidth="800" d:DesignHeight="450"
xmlns:avalonia="http://oxyplot.org/avalonia" mc:Ignorable="d" d:DesignWidth="800" d:DesignHeight="450"
x:Class="Aaru.Gui.Views.Windows.MediaScan" Icon="/Assets/aaru-logo.png" Title="{Binding Title}"> x:Class="Aaru.Gui.Views.Windows.MediaScan" Icon="/Assets/aaru-logo.png" Title="{Binding Title}">
<Design.DataContext> <Design.DataContext>
<windows:MediaScanViewModel /> <windows:MediaScanViewModel />
@@ -60,16 +59,17 @@
<TabItem.Header> <TabItem.Header>
<TextBlock Text="Graph" /> <TextBlock Text="Graph" />
</TabItem.Header> </TabItem.Header>
<controls:BlockMap Width="750" Height="400" Blocks="{Binding Blocks}" Items="{Binding BlockMapList}" /> <!-- <controls:BlockMap Width="750" Height="400" Blocks="{Binding Blocks}" ItemsSource="{Binding BlockMapList}" /> -->
</TabItem> </TabItem>
<TabItem> <TabItem>
<TabItem.Header> <TabItem.Header>
<TextBlock Text="Chart" /> <TextBlock Text="Chart" />
</TabItem.Header> </TabItem.Header>
<!-- TODO: Abandoned project need to find replacement
<avalonia:Plot Height="300" PlotMargins="50 0 0 0" PlotAreaBorderColor="#999999" <avalonia:Plot Height="300" PlotMargins="50 0 0 0" PlotAreaBorderColor="#999999"
PlotAreaBackground="#2974c1"> PlotAreaBackground="#2974c1">
<avalonia:Plot.Series> <avalonia:Plot.Series>
<avalonia:LineSeries DataFieldX="Index" DataFieldY="Value" Items="{Binding Path=ChartPoints}" <avalonia:LineSeries DataFieldX="Index" DataFieldY="Value" ItemsSource="{Binding Path=ChartPoints}"
Color="{Binding LineColor}" /> Color="{Binding LineColor}" />
</avalonia:Plot.Series> </avalonia:Plot.Series>
<avalonia:Plot.Axes> <avalonia:Plot.Axes>
@@ -81,6 +81,7 @@
AxislineColor="{Binding AxesColor}" /> AxislineColor="{Binding AxesColor}" />
</avalonia:Plot.Axes> </avalonia:Plot.Axes>
</avalonia:Plot> </avalonia:Plot>
-->
</TabItem> </TabItem>
</TabControl> </TabControl>
<StackPanel Orientation="Vertical" IsVisible="{Binding ProgressVisible}"> <StackPanel Orientation="Vertical" IsVisible="{Binding ProgressVisible}">

View File

@@ -50,7 +50,7 @@ public sealed class MediaScan : Window
void InitializeComponent() => AvaloniaXamlLoader.Load(this); void InitializeComponent() => AvaloniaXamlLoader.Load(this);
protected override void OnClosing(CancelEventArgs e) protected override void OnClosing(WindowClosingEventArgs e)
{ {
(DataContext as MediaScanViewModel)?.ExecuteStopCommand(); (DataContext as MediaScanViewModel)?.ExecuteStopCommand();
base.OnClosing(e); base.OnClosing(e);

View File

@@ -36,7 +36,7 @@
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:windows="clr-namespace:Aaru.Gui.ViewModels.Windows" mc:Ignorable="d" d:DesignWidth="800" xmlns:windows="clr-namespace:Aaru.Gui.ViewModels.Windows" mc:Ignorable="d" d:DesignWidth="800"
d:DesignHeight="450" x:Class="Aaru.Gui.Views.Windows.SplashWindow" Icon="/Assets/aaru-logo.png" Title="Aaru" d:DesignHeight="450" x:Class="Aaru.Gui.Views.Windows.SplashWindow" Icon="/Assets/aaru-logo.png" Title="Aaru"
HasSystemDecorations="False"> SystemDecorations="BorderOnly">
<Design.DataContext> <Design.DataContext>
<windows:SplashWindowViewModel /> <windows:SplashWindowViewModel />
</Design.DataContext> </Design.DataContext>