This commit is contained in:
TheXamlGuy
2024-01-18 23:55:02 +00:00
parent a0042a5299
commit 4766ed1156
7 changed files with 22 additions and 19 deletions
+1 -1
View File
@@ -60,7 +60,7 @@ public partial class App :
static IEnumerable<WidgetContainerViewModel> Resolve(IServiceProvider services) static IEnumerable<WidgetContainerViewModel> Resolve(IServiceProvider services)
{ {
int index = 0; int index = 0;
foreach (IWidgetContext widgetContext in services.GetServices<IWidgetContext>()) foreach (WidgetContext widgetContext in services.GetServices<WidgetContext>())
{ {
if (widgetContext.ServiceProvider.GetServices<IWidgetViewModel>() is if (widgetContext.ServiceProvider.GetServices<IWidgetViewModel>() is
IEnumerable<IWidgetViewModel> viewModels) IEnumerable<IWidgetViewModel> viewModels)
@@ -54,7 +54,7 @@ namespace Hyperbar.Windows
}).Build(); }).Build();
services.AddTransient<IWidgetContext>(provider => new WidgetContext(host.Services)); services.AddTransient(provider => new WidgetContext(host.Services));
host.Start(); host.Start();
return services; return services;
-6
View File
@@ -1,6 +0,0 @@
namespace Hyperbar;
public interface IWidgetContext
{
IServiceProvider ServiceProvider { get; }
}
+10
View File
@@ -0,0 +1,10 @@
namespace Hyperbar;
public sealed class WidgetConfiguration
{
public required Guid Id { get; set; }
public required string Name { get; set; }
public required string Description { get; set; }
}
+1 -2
View File
@@ -1,7 +1,6 @@
namespace Hyperbar; namespace Hyperbar;
public class WidgetContext(IServiceProvider serviceProvider) : public sealed class WidgetContext(IServiceProvider serviceProvider)
IWidgetContext
{ {
public IServiceProvider ServiceProvider => serviceProvider; public IServiceProvider ServiceProvider => serviceProvider;
} }
+1 -1
View File
@@ -2,7 +2,7 @@
namespace Hyperbar; namespace Hyperbar;
public class WidgetService(IEnumerable<IInitializer> initializers) : public sealed class WidgetService(IEnumerable<IInitializer> initializers) :
IHostedService IHostedService
{ {
public async Task StartAsync(CancellationToken cancellationToken) public async Task StartAsync(CancellationToken cancellationToken)