public QuickFiltersViewModel(IQuickFilters quickFilters) { if (quickFilters == null) { throw new ArgumentNullException(nameof(quickFilters)); } _quickFilters = quickFilters; AddCommand = new DelegateCommand(() => AddQuickFilter()); _viewModels = new ObservableCollection <QuickFilterViewModel>(); foreach (var filter in quickFilters.Filters) { CreateAndAddViewModel(filter); } }
public LogViewMainPanelViewModel(IServiceContainer services, IActionCenter actionCenter, IDataSources dataSources, IQuickFilters quickFilters, IHighlighters highlighters, IApplicationSettings applicationSettings) : base(applicationSettings) { if (actionCenter == null) { throw new ArgumentNullException(nameof(actionCenter)); } _applicationSettings = applicationSettings; _actionCenter = actionCenter; _dataSources = new DataSourcesViewModel(applicationSettings, dataSources, _actionCenter); _dataSources.PropertyChanged += DataSourcesOnPropertyChanged; _quickFilters = new QuickFiltersSidePanelViewModel(applicationSettings, quickFilters); _quickFilters.OnFiltersChanged += OnFiltersChanged; _highlighters = new HighlightersSidePanelViewModel(highlighters); _goToLine = new GoToLineViewModel(); _goToLine.LineNumberChosen += GoToLineOnLineNumberChosen; _quickNavigation = new QuickNavigationViewModel(dataSources); _quickNavigation.DataSourceChosen += QuickNavigationOnDataSourceChosen; _bookmarks = new BookmarksViewModel(dataSources, OnNavigateToBookmark); _outline = new OutlineSidePanelViewModel(services); _issues = new IssuesSidePanelViewModel(services); _sidePanels = new ISidePanelViewModel[] { _dataSources, _quickFilters, //_highlighters, _bookmarks, _outline, _issues }; SelectedSidePanel = _sidePanels.FirstOrDefault(x => x.Id == _applicationSettings.MainWindow?.SelectedSidePanel); PropertyChanged += OnPropertyChanged; ChangeDataSource(CurrentDataSource); }
public QuickFiltersSidePanelViewModel(IApplicationSettings settings, IQuickFilters quickFilters) { if (settings == null) { throw new ArgumentNullException(nameof(settings)); } if (quickFilters == null) { throw new ArgumentNullException(nameof(quickFilters)); } _settings = settings; _filters = new QuickFiltersViewModel(quickFilters); _filters.OnFilterAdded += QuickFiltersOnOnFilterAdded; _filters.OnFilterRemoved += QuickFiltersOnOnFilterRemoved; _filters.OnFiltersChanged += OnOnFiltersChanged; UpdateTooltip(); PropertyChanged += OnPropertyChanged; }