added disc icons for Game List
All checks were successful
Java CI / test (push) Successful in 1m30s

This commit is contained in:
WeeXnes 2025-04-27 16:05:00 +02:00
parent cc2eee27c2
commit 8d7a45ce5c
10 changed files with 58 additions and 13 deletions

View file

@ -28,7 +28,7 @@
<!-- PS2 Cover -->
<Border Width="205" Height="292" Background="Black" CornerRadius="5" HorizontalAlignment="Left"
PointerPressed="CoverImage_OnPointerPressed">
<Image Name="CoverImage" Source="Images/missing.png" Stretch="UniformToFill"/>
<Image Name="CoverImage" Source="Assets/missing.png" Stretch="UniformToFill"/>
</Border>
<!-- Spacer -->

BIN
PS2_Manager/Assets/cd.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 585 KiB

BIN
PS2_Manager/Assets/dvd.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 700 KiB

View file

Before

Width:  |  Height:  |  Size: 17 KiB

After

Width:  |  Height:  |  Size: 17 KiB

View file

Before

Width:  |  Height:  |  Size: 517 KiB

After

Width:  |  Height:  |  Size: 517 KiB

View file

@ -0,0 +1,35 @@
using System;
using Avalonia;
using Avalonia.Media.Imaging;
using Avalonia.Platform;
namespace PS2_Manager.Core;
public class DiscIcon
{
public bool ShowDVD { get; set; }
public bool ShowCD { get; set; }
public DiscType type { get; set; }
public DiscIcon(DiscType _type)
{
this.type = _type;
if (type == DiscType.CD)
{
this.ShowCD = true;
this.ShowDVD = false;
}else if (type == DiscType.DVD)
{
this.ShowCD = false;
this.ShowDVD = true;
}
}
}
public enum DiscType
{
DVD,
CD
}

View file

@ -23,6 +23,7 @@ public class Game
public Bitmap? ArtworkBack { get; set; }
public Bitmap? ArtworkDVD { get; set; }
public Config? Config { get; set; }
public DiscIcon Icon { get; set; }
public EventHandler? InstallationFinished { get; set; }
public UpdateVar<double> InstallProgress { get; private set; }
@ -30,6 +31,7 @@ public class Game
{
this.GamePath = isoPath;
this.GameID = ISO.GetSerial(isoPath);
this.Icon = new DiscIcon(DiscType.DVD);
this.Config = new Config(this.GetConfigPath());
if (!installed)
{

View file

@ -11,7 +11,6 @@
Height="520"
MinHeight="490"
MinWidth="875"
Resized="WindowBase_OnResized"
WindowStartupLocation="CenterScreen"
Loaded="Control_OnLoaded"
Foreground="White">
@ -30,7 +29,11 @@
<MenuItem Header="Show Details"/>
</ContextMenu>
</Border.ContextMenu>
<TextBlock Foreground="White" Text="{Binding Name}"/>
<Grid ColumnDefinitions="30, 5,*">
<Image IsVisible="{Binding Icon.ShowDVD}" Grid.Column="0" RenderOptions.BitmapInterpolationMode="HighQuality" Source="Assets/dvd.png"/>
<Image IsVisible="{Binding Icon.ShowCD}" Grid.Column="0" RenderOptions.BitmapInterpolationMode="HighQuality" Source="Assets/cd.png"/>
<TextBlock Grid.Column="2" Foreground="White" Text="{Binding Name}" VerticalAlignment="Center"/>
</Grid>
</Border>
</DataTemplate>
</ListBox.ItemTemplate>
@ -97,13 +100,13 @@
<Grid Grid.ColumnDefinitions="*,120,*,120,*">
<Border Grid.Column="1" Background="#35313d" Padding="0,5" CornerRadius="5">
<StackPanel>
<Image RenderOptions.BitmapInterpolationMode="HighQuality" Source="Images/vmc.png"/>
<Image RenderOptions.BitmapInterpolationMode="HighQuality" Source="Assets/vmc.png"/>
<ComboBox Name="VMC_1" Margin="5,0" HorizontalAlignment="Stretch" SelectionChanged="VMC_1_OnSelectionChanged"/>
</StackPanel>
</Border>
<Border Grid.Column="3" Background="#35313d" Padding="0,5" CornerRadius="5">
<StackPanel>
<Image RenderOptions.BitmapInterpolationMode="HighQuality" Source="Images/vmc.png"/>
<Image RenderOptions.BitmapInterpolationMode="HighQuality" Source="Assets/vmc.png"/>
<ComboBox Name="VMC_2" Margin="5,0" HorizontalAlignment="Stretch" SelectionChanged="VMC_2_OnSelectionChanged"/>
</StackPanel>
</Border>
@ -152,7 +155,7 @@
<Border Grid.Column="1" Width="205" Height="292" Background="Transparent" CornerRadius="5" HorizontalAlignment="Center" VerticalAlignment="Center"
PointerPressed="CoverImage_OnPointerPressed" Name="CoverContainer">
<Grid>
<Image Name="CoverImage" Source="Images/missing.png" Stretch="UniformToFill"/>
<Image Name="CoverImage" Source="Assets/missing.png" Stretch="UniformToFill"/>
<TextBlock Name="CoverTextHint" HorizontalAlignment="Center" VerticalAlignment="Center" IsVisible="False"/>
</Grid>
</Border>

View file

@ -353,11 +353,6 @@ public partial class MainWindow : Window
this.ArtworkType.Value = Artwork.PrevType(this.ArtworkType.Value);
}
private void WindowBase_OnResized(object? sender, WindowResizedEventArgs e)
{
VanillaConsole.WriteLine(e.ClientSize);
}
private void VMC_1_OnSelectionChanged(object? sender, SelectionChangedEventArgs e)
{
@ -395,21 +390,27 @@ public partial class MainWindow : Window
{
case "toggle_mode1":
selectedGame.Config.Mode1 = toggle_mode1.IsChecked.Value;
Console.Warning("Toggled Mode 1 for " + selectedGame.GameID + " to " + selectedGame.Config.Mode1);
break;
case "toggle_mode2":
selectedGame.Config.Mode2 = toggle_mode2.IsChecked.Value;
Console.Warning("Toggled Mode 2 for " + selectedGame.GameID + " to " + selectedGame.Config.Mode2);
break;
case "toggle_mode3":
selectedGame.Config.Mode3 = toggle_mode3.IsChecked.Value;
Console.Warning("Toggled Mode 3 for " + selectedGame.GameID + " to " + selectedGame.Config.Mode3);
break;
case "toggle_mode4":
selectedGame.Config.Mode4 = toggle_mode4.IsChecked.Value;
Console.Warning("Toggled Mode 4 for " + selectedGame.GameID + " to " + selectedGame.Config.Mode4);
break;
case "toggle_mode5":
selectedGame.Config.Mode5 = toggle_mode5.IsChecked.Value;
Console.Warning("Toggled Mode 5 for " + selectedGame.GameID + " to " + selectedGame.Config.Mode5);
break;
case "toggle_mode6":
selectedGame.Config.Mode6 = toggle_mode6.IsChecked.Value;
Console.Warning("Toggled Mode 6 for " + selectedGame.GameID + " to " + selectedGame.Config.Mode6);
break;
}
}

View file

@ -24,8 +24,12 @@
<ItemGroup>
<None Remove="Images\missing.png" />
<AvaloniaResource Include="Images\missing.png" />
<AvaloniaResource Include="Assets\missing.png" />
<None Remove="Images\vmc.png" />
<AvaloniaResource Include="Images\vmc.png" />
<AvaloniaResource Include="Assets\vmc.png" />
<None Remove="Images\cd.png" />
<AvaloniaResource Include="Assets\cd.png" />
<None Remove="Images\dvd.png" />
<AvaloniaResource Include="Assets\dvd.png" />
</ItemGroup>
</Project>