Main screen appears, it's magical

This commit is contained in:
Timothy Baldridge 2021-12-28 16:18:55 -07:00
parent 1dcf740bf4
commit 12bb5fe083
6 changed files with 16 additions and 15 deletions

View File

@ -138,8 +138,8 @@ namespace Wabbajack
// Convert to VM and bind to resulting list
sourceList
.ObserveOnGuiThread()
.Transform(m => new ModListMetadataVM(provider.GetService<ILogger<ModListMetadataVM>>(),this, m,
provider.GetService<ModListDownloadMaintainer>(), provider.GetService<Client>()))
.Transform(m => new ModListMetadataVM(provider.GetRequiredService<ILogger<ModListMetadataVM>>(),this, m,
provider.GetRequiredService<ModListDownloadMaintainer>(), provider.GetRequiredService<Client>()))
.DisposeMany()
// Filter only installed
.Filter(this.WhenAny(x => x.OnlyInstalled)

View File

@ -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<ILogger<ModListVM>>()!, modListPath, serviceProvider.GetService<DTOSerializer>());
return new ModListVM(serviceProvider.GetRequiredService<ILogger<ModListVM>>()!, modListPath, serviceProvider.GetRequiredService<DTOSerializer>());
})
.DisposeOld()
.ObserveOnGuiThread()

View File

@ -61,14 +61,14 @@ namespace Wabbajack
_wjClient = wjClient;
ConverterRegistration.Register();
Settings = settings;
Installer = new Lazy<InstallerVM>(() => new InstallerVM(serviceProvider.GetService<ILogger<InstallerVM>>(), this, serviceProvider));
Compiler = new Lazy<CompilerVM>(() => new CompilerVM(serviceProvider.GetService<ILogger<CompilerVM>>(), this));
SettingsPane = new Lazy<SettingsVM>(() => new SettingsVM(serviceProvider.GetService<ILogger<SettingsVM>>(), this, serviceProvider));
Gallery = new Lazy<ModListGalleryVM>(() => new ModListGalleryVM(serviceProvider.GetService<ILogger<ModListGalleryVM>>(), this,
serviceProvider.GetService<Client>(), serviceProvider.GetService<GameLocator>(), serviceProvider));
Installer = new Lazy<InstallerVM>(() => new InstallerVM(serviceProvider.GetRequiredService<ILogger<InstallerVM>>(), this, serviceProvider));
Compiler = new Lazy<CompilerVM>(() => new CompilerVM(serviceProvider.GetRequiredService<ILogger<CompilerVM>>(), this));
SettingsPane = new Lazy<SettingsVM>(() => new SettingsVM(serviceProvider.GetRequiredService<ILogger<SettingsVM>>(), this, serviceProvider));
Gallery = new Lazy<ModListGalleryVM>(() => new ModListGalleryVM(serviceProvider.GetRequiredService<ILogger<ModListGalleryVM>>(), this,
serviceProvider.GetRequiredService<Client>(), serviceProvider.GetRequiredService<GameLocator>(), serviceProvider));
ModeSelectionVM = new ModeSelectionVM(this);
ModListContentsVM = new Lazy<ModListContentsVM>(() => new ModListContentsVM(serviceProvider.GetService<ILogger<ModListContentsVM>>(), this));
UserInterventionHandlers = new UserInterventionHandlers(serviceProvider.GetService<ILogger<UserInterventionHandlers>>(), this);
ModListContentsVM = new Lazy<ModListContentsVM>(() => new ModListContentsVM(serviceProvider.GetRequiredService<ILogger<ModListContentsVM>>(), this));
UserInterventionHandlers = new UserInterventionHandlers(serviceProvider.GetRequiredService<ILogger<UserInterventionHandlers>>(), this);
// Set up logging
/* TODO

View File

@ -31,10 +31,10 @@ namespace Wabbajack
: base(logger, mainWindowVM)
{
MWVM = mainWindowVM;
Login = new LoginManagerVM(provider.GetService<ILogger<LoginManagerVM>>(), this);
Login = new LoginManagerVM(provider.GetRequiredService<ILogger<LoginManagerVM>>(), this);
Performance = mainWindowVM.Settings.Performance;
AuthorFile = new AuthorFilesVM(provider.GetService<ILogger<AuthorFilesVM>>()!,
provider.GetService<WabbajackApiTokenProvider>()!, provider.GetService<Client>()!, this);
AuthorFile = new AuthorFilesVM(provider.GetRequiredService<ILogger<AuthorFilesVM>>()!,
provider.GetRequiredService<WabbajackApiTokenProvider>()!, provider.GetRequiredService<Client>()!, this);
Filters = mainWindowVM.Settings.Filters;
OpenTerminalCommand = ReactiveCommand.CreateFromTask(OpenTerminal);
}

View File

@ -97,7 +97,7 @@ namespace Wabbajack.View_Models
})
// Switch to the new list after every ModList change
.Switch()
.Transform(mod => new ModVM(provider.GetService<ILogger<ModVM>>(), mod))
.Transform(mod => new ModVM(provider.GetRequiredService<ILogger<ModVM>>(), mod))
.DisposeMany()
// Filter out any NSFW slides if we don't want them
.AutoRefreshOnObservable(slide => this.WhenAny(x => x.ShowNSFW))

View File

@ -24,6 +24,7 @@ namespace Wabbajack
public MainWindow(ILogger<MainWindow> 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();