From 12bb5fe083950cb9e5252c43907a2fd2e401a3cd Mon Sep 17 00:00:00 2001 From: Timothy Baldridge Date: Tue, 28 Dec 2021 16:18:55 -0700 Subject: [PATCH] Main screen appears, it's magical --- .../View Models/Gallery/ModListGalleryVM.cs | 4 ++-- .../View Models/Installers/InstallerVM.cs | 2 +- Wabbajack.App.Wpf/View Models/MainWindowVM.cs | 14 +++++++------- .../View Models/Settings/SettingsVM.cs | 6 +++--- Wabbajack.App.Wpf/View Models/SlideShow.cs | 2 +- Wabbajack.App.Wpf/Views/MainWindow.xaml.cs | 3 ++- 6 files changed, 16 insertions(+), 15 deletions(-) diff --git a/Wabbajack.App.Wpf/View Models/Gallery/ModListGalleryVM.cs b/Wabbajack.App.Wpf/View Models/Gallery/ModListGalleryVM.cs index 0dc90f9d..8b378ab9 100644 --- a/Wabbajack.App.Wpf/View Models/Gallery/ModListGalleryVM.cs +++ b/Wabbajack.App.Wpf/View Models/Gallery/ModListGalleryVM.cs @@ -138,8 +138,8 @@ namespace Wabbajack // Convert to VM and bind to resulting list sourceList .ObserveOnGuiThread() - .Transform(m => new ModListMetadataVM(provider.GetService>(),this, m, - provider.GetService(), provider.GetService())) + .Transform(m => new ModListMetadataVM(provider.GetRequiredService>(),this, m, + provider.GetRequiredService(), provider.GetRequiredService())) .DisposeMany() // Filter only installed .Filter(this.WhenAny(x => x.OnlyInstalled) diff --git a/Wabbajack.App.Wpf/View Models/Installers/InstallerVM.cs b/Wabbajack.App.Wpf/View Models/Installers/InstallerVM.cs index 34d9171a..bebe24ca 100644 --- a/Wabbajack.App.Wpf/View Models/Installers/InstallerVM.cs +++ b/Wabbajack.App.Wpf/View Models/Installers/InstallerVM.cs @@ -190,7 +190,7 @@ public class InstallerVM : BackNavigatingVM, IBackNavigatingVM, ICpuStatusVM { if (modListPath == default) return default; if (!modListPath.FileExists()) return default; - return new ModListVM(serviceProvider.GetService>()!, modListPath, serviceProvider.GetService()); + return new ModListVM(serviceProvider.GetRequiredService>()!, modListPath, serviceProvider.GetRequiredService()); }) .DisposeOld() .ObserveOnGuiThread() diff --git a/Wabbajack.App.Wpf/View Models/MainWindowVM.cs b/Wabbajack.App.Wpf/View Models/MainWindowVM.cs index 426971e6..6e0975ca 100644 --- a/Wabbajack.App.Wpf/View Models/MainWindowVM.cs +++ b/Wabbajack.App.Wpf/View Models/MainWindowVM.cs @@ -61,14 +61,14 @@ namespace Wabbajack _wjClient = wjClient; ConverterRegistration.Register(); Settings = settings; - Installer = new Lazy(() => new InstallerVM(serviceProvider.GetService>(), this, serviceProvider)); - Compiler = new Lazy(() => new CompilerVM(serviceProvider.GetService>(), this)); - SettingsPane = new Lazy(() => new SettingsVM(serviceProvider.GetService>(), this, serviceProvider)); - Gallery = new Lazy(() => new ModListGalleryVM(serviceProvider.GetService>(), this, - serviceProvider.GetService(), serviceProvider.GetService(), serviceProvider)); + Installer = new Lazy(() => new InstallerVM(serviceProvider.GetRequiredService>(), this, serviceProvider)); + Compiler = new Lazy(() => new CompilerVM(serviceProvider.GetRequiredService>(), this)); + SettingsPane = new Lazy(() => new SettingsVM(serviceProvider.GetRequiredService>(), this, serviceProvider)); + Gallery = new Lazy(() => new ModListGalleryVM(serviceProvider.GetRequiredService>(), this, + serviceProvider.GetRequiredService(), serviceProvider.GetRequiredService(), serviceProvider)); ModeSelectionVM = new ModeSelectionVM(this); - ModListContentsVM = new Lazy(() => new ModListContentsVM(serviceProvider.GetService>(), this)); - UserInterventionHandlers = new UserInterventionHandlers(serviceProvider.GetService>(), this); + ModListContentsVM = new Lazy(() => new ModListContentsVM(serviceProvider.GetRequiredService>(), this)); + UserInterventionHandlers = new UserInterventionHandlers(serviceProvider.GetRequiredService>(), this); // Set up logging /* TODO diff --git a/Wabbajack.App.Wpf/View Models/Settings/SettingsVM.cs b/Wabbajack.App.Wpf/View Models/Settings/SettingsVM.cs index 3528d1b5..50e63593 100644 --- a/Wabbajack.App.Wpf/View Models/Settings/SettingsVM.cs +++ b/Wabbajack.App.Wpf/View Models/Settings/SettingsVM.cs @@ -31,10 +31,10 @@ namespace Wabbajack : base(logger, mainWindowVM) { MWVM = mainWindowVM; - Login = new LoginManagerVM(provider.GetService>(), this); + Login = new LoginManagerVM(provider.GetRequiredService>(), this); Performance = mainWindowVM.Settings.Performance; - AuthorFile = new AuthorFilesVM(provider.GetService>()!, - provider.GetService()!, provider.GetService()!, this); + AuthorFile = new AuthorFilesVM(provider.GetRequiredService>()!, + provider.GetRequiredService()!, provider.GetRequiredService()!, this); Filters = mainWindowVM.Settings.Filters; OpenTerminalCommand = ReactiveCommand.CreateFromTask(OpenTerminal); } diff --git a/Wabbajack.App.Wpf/View Models/SlideShow.cs b/Wabbajack.App.Wpf/View Models/SlideShow.cs index 218b243c..d4e7ec07 100644 --- a/Wabbajack.App.Wpf/View Models/SlideShow.cs +++ b/Wabbajack.App.Wpf/View Models/SlideShow.cs @@ -97,7 +97,7 @@ namespace Wabbajack.View_Models }) // Switch to the new list after every ModList change .Switch() - .Transform(mod => new ModVM(provider.GetService>(), mod)) + .Transform(mod => new ModVM(provider.GetRequiredService>(), mod)) .DisposeMany() // Filter out any NSFW slides if we don't want them .AutoRefreshOnObservable(slide => this.WhenAny(x => x.ShowNSFW)) diff --git a/Wabbajack.App.Wpf/Views/MainWindow.xaml.cs b/Wabbajack.App.Wpf/Views/MainWindow.xaml.cs index 45eef055..5d2c36fd 100644 --- a/Wabbajack.App.Wpf/Views/MainWindow.xaml.cs +++ b/Wabbajack.App.Wpf/Views/MainWindow.xaml.cs @@ -24,6 +24,7 @@ namespace Wabbajack public MainWindow(ILogger logger, SystemParametersConstructor systemParams, LauncherUpdater updater, MainWindowVM vm) { + InitializeComponent(); _mwvm = vm; DataContext = _mwvm; @@ -55,7 +56,7 @@ namespace Wabbajack else if (p.SystemPageSize < 2e+10) _logger.LogInformation("Pagefile below recommended! Consider increasing to 20000MB. A suboptimal pagefile can cause crashes and poor in-game performance"); - Warmup(); + //Warmup(); var _ = updater.Run();