Use SVG versions of Oxygen icons.

This commit is contained in:
2025-12-15 15:09:02 +00:00
parent 42e47fc7a0
commit 5bc1a8b445
10 changed files with 16398 additions and 31 deletions

View File

@@ -52,7 +52,6 @@ using Aaru.Helpers;
using Aaru.Localization;
using Avalonia.Controls;
using Avalonia.Media;
using Avalonia.Media.Imaging;
using Avalonia.Platform;
using Avalonia.Styling;
using Avalonia.Svg;
@@ -97,14 +96,23 @@ public sealed class ImageInfoViewModel : ViewModelBase
ViewSectorsCommand = new RelayCommand(ViewSectors);
DecodeMediaTagCommand = new RelayCommand(DecodeMediaTag);
var genericHddIcon =
new Bitmap(AssetLoader.Open(new Uri("avares://Aaru.Gui/Assets/Icons/oxygen/32x32/drive-harddisk.png")));
var genericHddIcon = new SvgImage
{
Source =
SvgSource.Load(AssetLoader.Open(new Uri("avares://Aaru.Gui/Assets/Icons/oxygen/drive-harddisk.svg")))
};
var genericOpticalIcon =
new Bitmap(AssetLoader.Open(new Uri("avares://Aaru.Gui/Assets/Icons/oxygen/32x32/drive-optical.png")));
var genericOpticalIcon = new SvgImage
{
Source =
SvgSource.Load(AssetLoader.Open(new Uri("avares://Aaru.Gui/Assets/Icons/oxygen/drive-optical.svg")))
};
var genericFolderIcon =
new Bitmap(AssetLoader.Open(new Uri("avares://Aaru.Gui/Assets/Icons/oxygen/32x32/inode-directory.png")));
var genericFolderIcon = new SvgImage
{
Source =
SvgSource.Load(AssetLoader.Open(new Uri("avares://Aaru.Gui/Assets/Icons/oxygen/inode-directory.svg")))
};
// Check if we're using dark theme
bool isDarkTheme = view.ActualThemeVariant == ThemeVariant.Dark;
@@ -264,9 +272,8 @@ public sealed class ImageInfoViewModel : ViewModelBase
}
if(imageFormat.Info.ReadableMediaTags is { Count: > 0 })
{
foreach(MediaTagType tag in imageFormat.Info.ReadableMediaTags.Order()) MediaTagsList.Add(tag.Humanize());
}
foreach(MediaTagType tag in imageFormat.Info.ReadableMediaTags.Order())
MediaTagsList.Add(tag.Humanize());
if(imageFormat.Info.ReadableSectorTags is { Count: > 0 })
{
@@ -785,8 +792,9 @@ public sealed class ImageInfoViewModel : ViewModelBase
try
{
if(opticalMediaImage.Sessions is { Count: > 0 })
foreach(Session session in opticalMediaImage.Sessions)
Sessions.Add(session);
{
foreach(Session session in opticalMediaImage.Sessions) Sessions.Add(session);
}
}
catch(Exception ex)
{
@@ -796,8 +804,9 @@ public sealed class ImageInfoViewModel : ViewModelBase
try
{
if(opticalMediaImage.Tracks is { Count: > 0 })
foreach(Track track in opticalMediaImage.Tracks)
Tracks.Add(track);
{
foreach(Track track in opticalMediaImage.Tracks) Tracks.Add(track);
}
}
catch(Exception ex)
{

View File

@@ -54,7 +54,6 @@ using Aaru.Logging;
using Avalonia;
using Avalonia.Controls;
using Avalonia.Controls.ApplicationLifetimes;
using Avalonia.Media.Imaging;
using Avalonia.Platform;
using Avalonia.Platform.Storage;
using Avalonia.Styling;
@@ -78,13 +77,13 @@ namespace Aaru.Gui.ViewModels.Windows;
public partial class MainWindowViewModel : ViewModelBase
{
const string MODULE_NAME = "Main Window ViewModel";
readonly Bitmap _genericFolderIcon;
readonly Bitmap _genericHddIcon;
readonly Bitmap _genericOpticalIcon;
readonly Bitmap _genericTapeIcon;
readonly Window _view;
Console _console;
const string MODULE_NAME = "Main Window ViewModel";
readonly SvgImage _genericFolderIcon;
readonly SvgImage _genericHddIcon;
readonly SvgImage _genericOpticalIcon;
readonly SvgImage _genericTapeIcon;
readonly Window _view;
Console _console;
[ObservableProperty]
[CanBeNull]
object _contentPanel;
@@ -123,18 +122,28 @@ public partial class MainWindowViewModel : ViewModelBase
CreateMetadataCommand = new AsyncRelayCommand(CreateMetadataAsync);
EditMetadataCommand = new AsyncRelayCommand(EditMetadataAsync);
_genericHddIcon =
new Bitmap(AssetLoader.Open(new Uri("avares://Aaru.Gui/Assets/Icons/oxygen/32x32/drive-harddisk.png")));
_genericHddIcon = new SvgImage
{
Source =
SvgSource.Load(AssetLoader.Open(new Uri("avares://Aaru.Gui/Assets/Icons/oxygen/drive-harddisk.svg")))
};
_genericOpticalIcon =
new Bitmap(AssetLoader.Open(new Uri("avares://Aaru.Gui/Assets/Icons/oxygen/32x32/drive-optical.png")));
_genericOpticalIcon = new SvgImage
{
Source = SvgSource.Load(AssetLoader.Open(new Uri("avares://Aaru.Gui/Assets/Icons/oxygen/media-tape.svg")))
};
_genericTapeIcon =
new Bitmap(AssetLoader.Open(new Uri("avares://Aaru.Gui/Assets/Icons/oxygen/32x32/media-tape.png")));
_genericFolderIcon =
new Bitmap(AssetLoader.Open(new Uri("avares://Aaru.Gui/Assets/Icons/oxygen/32x32/inode-directory.png")));
_genericTapeIcon = new SvgImage
{
Source =
SvgSource.Load(AssetLoader.Open(new Uri("avares://Aaru.Gui/Assets/Icons/oxygen/drive-optical.svg")))
};
_genericFolderIcon = new SvgImage
{
Source =
SvgSource.Load(AssetLoader.Open(new Uri("avares://Aaru.Gui/Assets/Icons/oxygen/inode-directory.svg")))
};
switch(DetectOS.GetRealPlatformID())
{