public WimPickViewModel(UIServices uiServices, ISettingsService settingsService) { this.uiServices = uiServices; this.settingsService = settingsService; var dialog = uiServices.DialogFactory(this); PickWimFileCommand = ReactiveCommand.CreateFromObservable(() => PickWimFileObs); pickWimFileObs = PickWimFileCommand.ToProperty(this, x => x.WimMetadata); dialog.HandleExceptionsFromCommand(PickWimFileCommand, "WIM file error"); hasWimHelper = this.WhenAnyValue(model => model.WimMetadata, (WimMetadataViewModel x) => x != null) .ToProperty(this, x => x.HasWim); OpenGetWoaCommand = ReactiveCommand.Create((string url) => { Process.Start(url); }); }
public WimPickViewModel(UIServices uiServices, ISettingsService settingsService) { this.uiServices = uiServices; this.settingsService = settingsService; PickWimFileCommand = ReactiveCommand.CreateFromObservable(() => PickWimFileObs); pickWimFileObs = PickWimFileCommand.ToProperty(this, x => x.WimMetadata); PickWimFileCommand.ThrownExceptions.Subscribe(e => { Log.Error(e, "WIM file error"); this.uiServices.DialogService.ShowAlert(this, Resources.InvalidWimFile, e.Message); }); hasWimHelper = this.WhenAnyValue(model => model.WimMetadata, (WimMetadataViewModel x) => x != null) .ToProperty(this, x => x.HasWim); }
public WimPickViewModel(IDialogService uiServices, ISettingsService settingsService, IOpenFilePicker openFilePicker, IFileSystemOperations fileSystemOperations) { this.settingsService = settingsService; this.openFilePicker = openFilePicker; this.fileSystemOperations = fileSystemOperations; PickWimFileCommand = ReactiveCommand.CreateFromObservable(() => PickWimFileObs); pickWimFileObs = PickWimFileCommand.ToProperty(this, x => x.WimMetadata); uiServices.HandleExceptionsFromCommand(PickWimFileCommand); hasWimHelper = this.WhenAnyValue(model => model.WimMetadata, (WimMetadataViewModel x) => x != null) .ToProperty(this, x => x.HasWim); OpenGetWoaCommand = ReactiveCommand.Create((string url) => { Process.Start(url); }); PickWimFileCommand.Subscribe(x => SetVariables(x)); }