From 8cddcab26cf96976785430b6d8b3b458c84939b6 Mon Sep 17 00:00:00 2001 From: zznty <94796179+zznty@users.noreply.github.com> Date: Sun, 3 Nov 2024 02:54:47 +0700 Subject: [PATCH] show actual plugins in installed tab --- CringePlugins/Loader/PluginsLifetime.cs | 2 +- CringePlugins/Ui/PluginListComponent.cs | 14 +++++++++----- 2 files changed, 10 insertions(+), 6 deletions(-) diff --git a/CringePlugins/Loader/PluginsLifetime.cs b/CringePlugins/Loader/PluginsLifetime.cs index 743252d..5df8483 100644 --- a/CringePlugins/Loader/PluginsLifetime.cs +++ b/CringePlugins/Loader/PluginsLifetime.cs @@ -66,7 +66,7 @@ public class PluginsLifetime : ILoadingStage RegisterLifetime(); - RenderHandler.Current.RegisterComponent(new PluginListComponent(packagesConfig, sourceMapping, configPath)); + RenderHandler.Current.RegisterComponent(new PluginListComponent(packagesConfig, sourceMapping, configPath, _plugins)); } private void RegisterLifetime() diff --git a/CringePlugins/Ui/PluginListComponent.cs b/CringePlugins/Ui/PluginListComponent.cs index 2a19cd2..5ba7a25 100644 --- a/CringePlugins/Ui/PluginListComponent.cs +++ b/CringePlugins/Ui/PluginListComponent.cs @@ -2,6 +2,7 @@ using System.Text.Json; using CringePlugins.Abstractions; using CringePlugins.Config; +using CringePlugins.Loader; using CringePlugins.Resolver; using ImGuiNET; using NLog; @@ -15,7 +16,7 @@ using static ImGuiNET.ImGui; namespace CringePlugins.Ui; -public class PluginListComponent : IRenderComponent +internal class PluginListComponent : IRenderComponent { private static readonly Logger Log = LogManager.GetCurrentClassLogger(); @@ -29,13 +30,16 @@ public class PluginListComponent : IRenderComponent private readonly PackagesConfig _packagesConfig; private readonly PackageSourceMapping _sources; private readonly string _configPath; + private readonly ImmutableArray _plugins; private (SearchResultEntry entry, NuGetClient client)? _selected; - public PluginListComponent(PackagesConfig packagesConfig, PackageSourceMapping sources, string configPath) + public PluginListComponent(PackagesConfig packagesConfig, PackageSourceMapping sources, string configPath, + ImmutableArray plugins) { _packagesConfig = packagesConfig; _sources = sources; _configPath = configPath; + _plugins = plugins; _packages = packagesConfig.Packages.ToImmutableDictionary(b => b.Id, b => b.Range, StringComparer.OrdinalIgnoreCase); MyGuiSandbox.GuiControlCreated += GuiControlCreated; @@ -73,14 +77,14 @@ public class PluginListComponent : IRenderComponent TableSetupColumn("Version"); TableHeadersRow(); - foreach (var (id, versionRange) in _packages) + foreach (var plugin in _plugins) { TableNextRow(); TableNextColumn(); - Text(id); + Text(plugin.Metadata.Name); TableNextColumn(); - Text(versionRange.MinVersion?.ToString() ?? versionRange.ToString()); + Text(plugin.Metadata.Version.ToString()); } EndTable();