public AnalyserViewModel(AnalyserProvider analyserProvider, MainBusyService busyService, IServiceFactory serviceFactory, IInterTabClient interTabClient, SettingsViewModel settingsViewModel, IEnumerable <IImportAssembly> importServices, IEnumerable <IExportAssembly> exportServices, AppLoggerService <AnalyserViewModel> logger, MainViewIdentifier mainViewIdentifier) { this.analyserProvider = analyserProvider; BusyService = busyService; this.serviceFactory = serviceFactory; this.interTabClient = interTabClient; SettingsViewModel = settingsViewModel; this.logger = logger; this.exportServices = exportServices.ToList(); this.importServices = importServices.ToList(); Title = $"Dependencies Viewer {typeof(AnalyserViewModel).Assembly.GetName().Version?.ToString(3)}"; MainViewId = mainViewIdentifier.Id; SettingsCommand = new Command(() => IsSettingsOpen = true); CloseCommand = new Command(() => Application.Current.Shutdown()); AboutCommand = new Command(async() => await OpenAboutAsync()); OpenFileCommand = new Command(async() => await BusyService.RunActionAsync(OpenFileAsync).ConfigureAwait(false), () => !BusyService.IsBusy); OnDragOverCommand = new Command <DragEventArgs>(OnDragOver); OnDropCommand = new Command <DragEventArgs>(async(x) => await BusyService.RunActionAsync(async() => await OnDrop(x).ConfigureAwait(false)).ConfigureAwait(false), _ => !BusyService.IsBusy); OnDragEnterCommand = new Command <DragEventArgs>((x) => IsDragFile = true, CanDrag); OnDragLeaveCommand = new Command <DragEventArgs>((x) => IsDragFile = false, CanDrag); ExportCommands = GenerateExportCommand(); ImportCommands = GenerateImportCommand(); CloseResultCommand = new Command <AssemblyModel>(CloseResult); }
public AnalyserSettingsViewModel(AnalyserProvider analyserProvider, IAnalyserSettingProvider settingProvider) { AnalyserProvider = analyserProvider; Settings = settingProvider; }