public QuerySessionViewModel(IWindowService windowService, IRepository repository, ShortcutService shortcutService, IStatusService statusService, bool readOnly) : base(repository, windowService, shortcutService, statusService) { ReadOnly = readOnly; InitializeViewModesList(); FilterCollection = new FilterCollectionViewModel(Repository.Tags); FilterCollection.FilterChanged += async(sender, args) => await UpdateMatchCount(); UpdateMatchCount().Wait(); DetailItem = new MediaItemViewModel(Repository); QueryResultViewModel = new QueryResultViewModel(Repository, ShortcutService, StatusService); QueryResultViewModel.SelectionChanged += async(s, a) => { await QueryResultViewModelOnSelectionChanged(s, a); }; EditMediaInfoViewModel = new EditMediaInfoViewModel(Repository, ShortcutService, StatusService, true, ReadOnly); ToolWindowState = QueryToolWindowState.Filters; SelectedViewMode = ViewMode.Detail; }
public override async Task Close() { QueryResultViewModel.Close(); await EditMediaInfoViewModel.Close(); }