public InspectionResultsViewModel(RubberduckParserState state, IInspector inspector, VBE vbe, INavigateCommand navigateCommand, IClipboardWriter clipboard, IGeneralConfigService configService, IOperatingSystem operatingSystem) { _state = state; _inspector = inspector; _vbe = vbe; _navigateCommand = navigateCommand; _clipboard = clipboard; _configService = configService; _operatingSystem = operatingSystem; _refreshCommand = new DelegateCommand(LogManager.GetCurrentClassLogger(), async param => await Task.Run(() => ExecuteRefreshCommandAsync()), CanExecuteRefreshCommand); _disableInspectionCommand = new DelegateCommand(LogManager.GetCurrentClassLogger(), ExecuteDisableInspectionCommand); _quickFixCommand = new DelegateCommand(LogManager.GetCurrentClassLogger(), ExecuteQuickFixCommand, CanExecuteQuickFixCommand); _quickFixInModuleCommand = new DelegateCommand(LogManager.GetCurrentClassLogger(), ExecuteQuickFixInModuleCommand, _ => _state.Status == ParserState.Ready); _quickFixInProjectCommand = new DelegateCommand(LogManager.GetCurrentClassLogger(), ExecuteQuickFixInProjectCommand, _ => _state.Status == ParserState.Ready); _copyResultsCommand = new DelegateCommand(LogManager.GetCurrentClassLogger(), ExecuteCopyResultsCommand, CanExecuteCopyResultsCommand); _openSettingsCommand = new DelegateCommand(LogManager.GetCurrentClassLogger(), OpenSettings); _configService.SettingsChanged += _configService_SettingsChanged; _setInspectionTypeGroupingCommand = new DelegateCommand(LogManager.GetCurrentClassLogger(), param => { GroupByInspectionType = (bool)param; GroupByLocation = !(bool)param; }); _setLocationGroupingCommand = new DelegateCommand(LogManager.GetCurrentClassLogger(), param => { GroupByLocation = (bool)param; GroupByInspectionType = !(bool)param; }); _state.StateChanged += _state_StateChanged; }
public TestExplorerViewModel(ISelectionService selectionService, TestExplorerModel model, IClipboardWriter clipboard, // ReSharper disable once UnusedParameter.Local - left in place because it will likely be needed for app wide font settings, etc. IGeneralConfigService configService, ISettingsFormFactory settingsFormFactory) { _clipboard = clipboard; _settingsFormFactory = settingsFormFactory; NavigateCommand = new NavigateCommand(selectionService); RunSingleTestCommand = new DelegateCommand(LogManager.GetCurrentClassLogger(), ExecuteSingleTestCommand, CanExecuteSingleTest); RunSelectedTestsCommand = new DelegateCommand(LogManager.GetCurrentClassLogger(), ExecuteSelectedTestsCommand, CanExecuteSelectedTestsCommand); RunSelectedGroupCommand = new DelegateCommand(LogManager.GetCurrentClassLogger(), ExecuteRunSelectedGroupCommand, CanExecuteSelectedGroupCommand); CancelTestRunCommand = new DelegateCommand(LogManager.GetCurrentClassLogger(), ExecuteCancelTestRunCommand, CanExecuteCancelTestRunCommand); ResetResultsCommand = new DelegateCommand(LogManager.GetCurrentClassLogger(), ExecuteResetResultsCommand, CanExecuteResetResultsCommand); CopyResultsCommand = new DelegateCommand(LogManager.GetCurrentClassLogger(), ExecuteCopyResultsCommand); OpenTestSettingsCommand = new DelegateCommand(LogManager.GetCurrentClassLogger(), OpenSettings); CollapseAllCommand = new DelegateCommand(LogManager.GetCurrentClassLogger(), ExecuteCollapseAll); ExpandAllCommand = new DelegateCommand(LogManager.GetCurrentClassLogger(), ExecuteExpandAll); Model = model; Model.TestCompleted += HandleTestCompletion; if (CollectionViewSource.GetDefaultView(Model.Tests) is ListCollectionView tests) { tests.SortDescriptions.Add(new SortDescription("QualifiedName.QualifiedModuleName.Name", ListSortDirection.Ascending)); tests.SortDescriptions.Add(new SortDescription("QualifiedName.MemberName", ListSortDirection.Ascending)); Tests = tests; } OnPropertyChanged(nameof(Tests)); TestGrouping = TestExplorerGrouping.Outcome; }
public TestExplorerViewModel(VBE vbe, ITestEngine testEngine, TestExplorerModelBase model, IClipboardWriter clipboard) { _testEngine = testEngine; _testEngine.TestCompleted += TestEngineTestCompleted; _model = model; _clipboard = clipboard; _navigateCommand = new NavigateCommand(); _runAllTestsCommand = new RunAllTestsCommand(testEngine, model); _addTestModuleCommand = new AddTestModuleCommand(vbe); _addTestMethodCommand = new AddTestMethodCommand(vbe, model); _addErrorTestMethodCommand = new AddTestMethodExpectedErrorCommand(vbe, model); _refreshCommand = new DelegateCommand(ExecuteRefreshCommand, CanExecuteRefreshCommand); _repeatLastRunCommand = new DelegateCommand(ExecuteRepeatLastRunCommand, CanExecuteRepeatLastRunCommand); _runNotExecutedTestsCommand = new DelegateCommand(ExecuteRunNotExecutedTestsCommand, CanExecuteRunNotExecutedTestsCommand); _runFailedTestsCommand = new DelegateCommand(ExecuteRunFailedTestsCommand, CanExecuteRunFailedTestsCommand); _runPassedTestsCommand = new DelegateCommand(ExecuteRunPassedTestsCommand, CanExecuteRunPassedTestsCommand); _runSelectedTestCommand = new DelegateCommand(ExecuteSelectedTestCommand, CanExecuteSelectedTestCommand); _copyResultsCommand = new DelegateCommand(ExecuteCopyResultsCommand); }
public CopyResultsCommand(RubberduckParserState state) { _state = state; _clipboard = new ClipboardWriter(); AddToCanExecuteEvaluation(SpecialEvaluateCanExecute); }
public InspectionResultsViewModel( RubberduckParserState state, IInspector inspector, IQuickFixProvider quickFixProvider, INavigateCommand navigateCommand, ReparseCommand reparseCommand, IClipboardWriter clipboard, IGeneralConfigService configService, ISettingsFormFactory settingsFormFactory, IUiDispatcher uiDispatcher) { _state = state; _inspector = inspector; _quickFixProvider = quickFixProvider; NavigateCommand = navigateCommand; _clipboard = clipboard; _configService = configService; _settingsFormFactory = settingsFormFactory; _uiDispatcher = uiDispatcher; RefreshCommand = new DelegateCommand(LogManager.GetCurrentClassLogger(), o => { IsRefreshing = true; IsBusy = true; reparseCommand.Execute(o); }, o => !IsBusy && reparseCommand.CanExecute(o)); DisableInspectionCommand = new DelegateCommand(LogManager.GetCurrentClassLogger(), ExecuteDisableInspectionCommand); QuickFixCommand = new DelegateCommand(LogManager.GetCurrentClassLogger(), ExecuteQuickFixCommand, CanExecuteQuickFixCommand); QuickFixInProcedureCommand = new DelegateCommand(LogManager.GetCurrentClassLogger(), ExecuteQuickFixInProcedureCommand, _ => SelectedItem != null && _state.Status == ParserState.Ready); QuickFixInModuleCommand = new DelegateCommand(LogManager.GetCurrentClassLogger(), ExecuteQuickFixInModuleCommand, _ => SelectedItem != null && _state.Status == ParserState.Ready); QuickFixInProjectCommand = new DelegateCommand(LogManager.GetCurrentClassLogger(), ExecuteQuickFixInProjectCommand, _ => SelectedItem != null && _state.Status == ParserState.Ready); QuickFixInAllProjectsCommand = new DelegateCommand(LogManager.GetCurrentClassLogger(), ExecuteQuickFixInAllProjectsCommand, _ => SelectedItem != null && _state.Status == ParserState.Ready); CopyResultsCommand = new DelegateCommand(LogManager.GetCurrentClassLogger(), ExecuteCopyResultsCommand, CanExecuteCopyResultsCommand); OpenInspectionSettings = new DelegateCommand(LogManager.GetCurrentClassLogger(), OpenSettings); _configService.SettingsChanged += _configService_SettingsChanged; // todo: remove I/O work in constructor _runInspectionsOnReparse = _configService.LoadConfiguration().UserSettings.CodeInspectionSettings.RunInspectionsOnSuccessfulParse; SetInspectionTypeGroupingCommand = new DelegateCommand(LogManager.GetCurrentClassLogger(), param => { GroupByInspectionType = (bool)param; GroupByLocation = !(bool)param; }); SetLocationGroupingCommand = new DelegateCommand(LogManager.GetCurrentClassLogger(), param => { GroupByLocation = (bool)param; GroupByInspectionType = !(bool)param; }); _state.StateChanged += HandleStateChanged; BindingOperations.CollectionRegistering += BindingOperations_CollectionRegistering; }
public TestExplorerViewModel(ISelectionService selectionService, TestExplorerModel model, IClipboardWriter clipboard, // ReSharper disable once UnusedParameter.Local - left in place because it will likely be needed for app wide font settings, etc. #pragma warning disable IDE0060 // Remove unused parameter IConfigurationService <Configuration> configService, #pragma warning restore IDE0060 // Remove unused parameter ISettingsFormFactory settingsFormFactory, IRewritingManager rewritingManager, IAnnotationUpdater annotationUpdater) { _clipboard = clipboard; _settingsFormFactory = settingsFormFactory; NavigateCommand = new NavigateCommand(selectionService); RunSingleTestCommand = new DelegateCommand(LogManager.GetCurrentClassLogger(), ExecuteSingleTestCommand, CanExecuteSingleTest); RunSelectedTestsCommand = new DelegateCommand(LogManager.GetCurrentClassLogger(), ExecuteSelectedTestsCommand, CanExecuteSelectedCommands); RunSelectedGroupCommand = new DelegateCommand(LogManager.GetCurrentClassLogger(), ExecuteRunSelectedGroupCommand, CanExecuteGroupCommand); CancelTestRunCommand = new DelegateCommand(LogManager.GetCurrentClassLogger(), ExecuteCancelTestRunCommand, CanExecuteCancelTestRunCommand); ResetResultsCommand = new DelegateCommand(LogManager.GetCurrentClassLogger(), ExecuteResetResultsCommand, CanExecuteResetResultsCommand); CopyResultsCommand = new DelegateCommand(LogManager.GetCurrentClassLogger(), ExecuteCopyResultsCommand); OpenTestSettingsCommand = new DelegateCommand(LogManager.GetCurrentClassLogger(), OpenSettings); CollapseAllCommand = new DelegateCommand(LogManager.GetCurrentClassLogger(), ExecuteCollapseAll); ExpandAllCommand = new DelegateCommand(LogManager.GetCurrentClassLogger(), ExecuteExpandAll); IgnoreTestCommand = new DelegateCommand(LogManager.GetCurrentClassLogger(), ExecuteIgnoreTestCommand, CanExecuteIgnoreTestCommand); UnignoreTestCommand = new DelegateCommand(LogManager.GetCurrentClassLogger(), ExecuteUnignoreTestCommand, CanExecuteUnignoreTestCommand); IgnoreSelectedTestsCommand = new DelegateCommand(LogManager.GetCurrentClassLogger(), ExecuteIgnoreSelectedTestsCommand, CanExecuteIgnoreSelectedTests); UnignoreSelectedTestsCommand = new DelegateCommand(LogManager.GetCurrentClassLogger(), ExecuteUnignoreSelectedTestsCommand, CanExecuteUnignoreSelectedTests); IgnoreGroupCommand = new DelegateCommand(LogManager.GetCurrentClassLogger(), ExecuteIgnoreGroupCommand, CanExecuteIgnoreGroupCommand); UnignoreGroupCommand = new DelegateCommand(LogManager.GetCurrentClassLogger(), ExecuteUnignoreGroupCommand, CanExecuteUnignoreGroupCommand); RewritingManager = rewritingManager; AnnotationUpdater = annotationUpdater; Model = model; if (CollectionViewSource.GetDefaultView(Model.Tests) is ListCollectionView tests) { tests.SortDescriptions.Add(new SortDescription("QualifiedName.QualifiedModuleName.Name", ListSortDirection.Ascending)); tests.SortDescriptions.Add(new SortDescription("QualifiedName.MemberName", ListSortDirection.Ascending)); tests.IsLiveFiltering = true; tests.IsLiveGrouping = true; Tests = tests; } OnPropertyChanged(nameof(Tests)); TestGrouping = TestExplorerGrouping.Outcome; OutcomeFilter = TestExplorerOutcomeFilter.All; }
public TestExplorerViewModel(IVBE vbe, RubberduckParserState state, ITestEngine testEngine, TestExplorerModel model, IClipboardWriter clipboard, IGeneralConfigService configService, ISettingsFormFactory settingsFormFactory, IMessageBox messageBox) { _vbe = vbe; _state = state; _testEngine = testEngine; _testEngine.TestCompleted += TestEngineTestCompleted; Model = model; _clipboard = clipboard; _settingsFormFactory = settingsFormFactory; _messageBox = messageBox; _navigateCommand = new NavigateCommand(_state.ProjectsProvider); RunAllTestsCommand = new RunAllTestsCommand(vbe, state, testEngine, model, null); RunAllTestsCommand.RunCompleted += RunCompleted; AddTestModuleCommand = new AddTestModuleCommand(vbe, state, configService, _messageBox); AddTestMethodCommand = new AddTestMethodCommand(vbe, state); AddErrorTestMethodCommand = new AddTestMethodExpectedErrorCommand(vbe, state); RefreshCommand = new DelegateCommand(LogManager.GetCurrentClassLogger(), ExecuteRefreshCommand, CanExecuteRefreshCommand); RepeatLastRunCommand = new DelegateCommand(LogManager.GetCurrentClassLogger(), ExecuteRepeatLastRunCommand, CanExecuteRepeatLastRunCommand); RunNotExecutedTestsCommand = new DelegateCommand(LogManager.GetCurrentClassLogger(), ExecuteRunNotExecutedTestsCommand, CanExecuteRunNotExecutedTestsCommand); RunInconclusiveTestsCommand = new DelegateCommand(LogManager.GetCurrentClassLogger(), ExecuteRunInconclusiveTestsCommand, CanExecuteRunInconclusiveTestsCommand); RunFailedTestsCommand = new DelegateCommand(LogManager.GetCurrentClassLogger(), ExecuteRunFailedTestsCommand, CanExecuteRunFailedTestsCommand); RunPassedTestsCommand = new DelegateCommand(LogManager.GetCurrentClassLogger(), ExecuteRunPassedTestsCommand, CanExecuteRunPassedTestsCommand); RunSelectedTestCommand = new DelegateCommand(LogManager.GetCurrentClassLogger(), ExecuteSelectedTestCommand, CanExecuteSelectedTestCommand); CopyResultsCommand = new DelegateCommand(LogManager.GetCurrentClassLogger(), ExecuteCopyResultsCommand); OpenTestSettingsCommand = new DelegateCommand(LogManager.GetCurrentClassLogger(), OpenSettings); SetOutcomeGroupingCommand = new DelegateCommand(LogManager.GetCurrentClassLogger(), param => { GroupByOutcome = (bool)param; GroupByLocation = !(bool)param; }); SetLocationGroupingCommand = new DelegateCommand(LogManager.GetCurrentClassLogger(), param => { GroupByLocation = (bool)param; GroupByOutcome = !(bool)param; }); }
public TestExplorerViewModel(VBE vbe, RubberduckParserState state, ITestEngine testEngine, TestExplorerModel model, IClipboardWriter clipboard, NewUnitTestModuleCommand newTestModuleCommand, NewTestMethodCommand newTestMethodCommand, IGeneralConfigService configService, IOperatingSystem operatingSystem) { _state = state; _testEngine = testEngine; _testEngine.TestCompleted += TestEngineTestCompleted; _model = model; _clipboard = clipboard; _configService = configService; _operatingSystem = operatingSystem; _navigateCommand = new NavigateCommand(); _runAllTestsCommand = new RunAllTestsCommand(state, testEngine, model); _runAllTestsCommand.RunCompleted += RunCompleted; _addTestModuleCommand = new AddTestModuleCommand(vbe, state, newTestModuleCommand); _addTestMethodCommand = new AddTestMethodCommand(vbe, state, newTestMethodCommand); _addErrorTestMethodCommand = new AddTestMethodExpectedErrorCommand(vbe, state, newTestMethodCommand); _refreshCommand = new DelegateCommand(ExecuteRefreshCommand, CanExecuteRefreshCommand); _repeatLastRunCommand = new DelegateCommand(ExecuteRepeatLastRunCommand, CanExecuteRepeatLastRunCommand); _runNotExecutedTestsCommand = new DelegateCommand(ExecuteRunNotExecutedTestsCommand, CanExecuteRunNotExecutedTestsCommand); _runFailedTestsCommand = new DelegateCommand(ExecuteRunFailedTestsCommand, CanExecuteRunFailedTestsCommand); _runPassedTestsCommand = new DelegateCommand(ExecuteRunPassedTestsCommand, CanExecuteRunPassedTestsCommand); _runSelectedTestCommand = new DelegateCommand(ExecuteSelectedTestCommand, CanExecuteSelectedTestCommand); _copyResultsCommand = new DelegateCommand(ExecuteCopyResultsCommand); _openTestSettingsCommand = new DelegateCommand(OpenSettings); _setOutcomeGroupingCommand = new DelegateCommand(param => { GroupByOutcome = (bool)param; GroupByLocation = !(bool)param; }); _setLocationGroupingCommand = new DelegateCommand(param => { GroupByLocation = (bool)param; GroupByOutcome = !(bool)param; }); }
public InspectionResultsViewModel(RubberduckParserState state, IInspector inspector, INavigateCommand navigateCommand, ReparseCommand reparseCommand, IClipboardWriter clipboard, IGeneralConfigService configService, IOperatingSystem operatingSystem) { _state = state; _inspector = inspector; _navigateCommand = navigateCommand; _clipboard = clipboard; _configService = configService; _operatingSystem = operatingSystem; _refreshCommand = new DelegateCommand(LogManager.GetCurrentClassLogger(), o => { IsBusy = true; reparseCommand.Execute(o); }, o => !IsBusy && reparseCommand.CanExecute(o)); _disableInspectionCommand = new DelegateCommand(LogManager.GetCurrentClassLogger(), ExecuteDisableInspectionCommand); _quickFixCommand = new DelegateCommand(LogManager.GetCurrentClassLogger(), ExecuteQuickFixCommand, CanExecuteQuickFixCommand); _quickFixInModuleCommand = new DelegateCommand(LogManager.GetCurrentClassLogger(), ExecuteQuickFixInModuleCommand, _ => SelectedItem != null && _state.Status == ParserState.Ready); _quickFixInProjectCommand = new DelegateCommand(LogManager.GetCurrentClassLogger(), ExecuteQuickFixInProjectCommand, _ => SelectedItem != null && _state.Status == ParserState.Ready); _copyResultsCommand = new DelegateCommand(LogManager.GetCurrentClassLogger(), ExecuteCopyResultsCommand, CanExecuteCopyResultsCommand); _openSettingsCommand = new DelegateCommand(LogManager.GetCurrentClassLogger(), OpenSettings); _configService.SettingsChanged += _configService_SettingsChanged; // todo: remove I/O work in constructor _runInspectionsOnReparse = _configService.LoadConfiguration().UserSettings.CodeInspectionSettings.RunInspectionsOnSuccessfulParse; _setInspectionTypeGroupingCommand = new DelegateCommand(LogManager.GetCurrentClassLogger(), param => { GroupByInspectionType = (bool)param; GroupByLocation = !(bool)param; }); _setLocationGroupingCommand = new DelegateCommand(LogManager.GetCurrentClassLogger(), param => { GroupByLocation = (bool)param; GroupByInspectionType = !(bool)param; }); _state.StateChanged += _state_StateChanged; }
public InspectionResultsViewModel(RubberduckParserState state, IInspector inspector, VBE vbe, INavigateCommand navigateCommand, IClipboardWriter clipboard, IGeneralConfigService configService) { _dispatcher = Dispatcher.CurrentDispatcher; _state = state; _inspector = inspector; _vbe = vbe; _navigateCommand = navigateCommand; _clipboard = clipboard; _configService = configService; _refreshCommand = new DelegateCommand(async param => await Task.Run(() => ExecuteRefreshCommandAsync(param)), CanExecuteRefreshCommand); _disableInspectionCommand = new DelegateCommand(ExecuteDisableInspectionCommand); _quickFixCommand = new DelegateCommand(ExecuteQuickFixCommand, CanExecuteQuickFixCommand); _quickFixInModuleCommand = new DelegateCommand(ExecuteQuickFixInModuleCommand); _quickFixInProjectCommand = new DelegateCommand(ExecuteQuickFixInProjectCommand); _copyResultsCommand = new DelegateCommand(ExecuteCopyResultsCommand, CanExecuteCopyResultsCommand); _state.StateChanged += _state_StateChanged; }
public InspectionResultsViewModel( RubberduckParserState state, IInspector inspector, IQuickFixProvider quickFixProvider, INavigateCommand navigateCommand, ReparseCommand reparseCommand, IClipboardWriter clipboard, IGeneralConfigService configService, ISettingsFormFactory settingsFormFactory, IUiDispatcher uiDispatcher) { _state = state; _inspector = inspector; _quickFixProvider = quickFixProvider; NavigateCommand = navigateCommand; _clipboard = clipboard; _configService = configService; _settingsFormFactory = settingsFormFactory; _uiDispatcher = uiDispatcher; RefreshCommand = new DelegateCommand(LogManager.GetCurrentClassLogger(), o => { IsRefreshing = true; IsBusy = true; var cancellation = new ReparseCancellationFlag(); reparseCommand.Execute(cancellation); if (cancellation.Canceled) { IsBusy = false; } }, o => !IsBusy && reparseCommand.CanExecute(o)); DisableInspectionCommand = new DelegateCommand(LogManager.GetCurrentClassLogger(), ExecuteDisableInspectionCommand); QuickFixCommand = new DelegateCommand(LogManager.GetCurrentClassLogger(), ExecuteQuickFixCommand, CanExecuteQuickFixCommand); QuickFixInProcedureCommand = new DelegateCommand(LogManager.GetCurrentClassLogger(), ExecuteQuickFixInProcedureCommand, _ => SelectedItem != null && _state.Status == ParserState.Ready); QuickFixInModuleCommand = new DelegateCommand(LogManager.GetCurrentClassLogger(), ExecuteQuickFixInModuleCommand, _ => SelectedItem != null && _state.Status == ParserState.Ready); QuickFixInProjectCommand = new DelegateCommand(LogManager.GetCurrentClassLogger(), ExecuteQuickFixInProjectCommand, _ => SelectedItem != null && _state.Status == ParserState.Ready); QuickFixInAllProjectsCommand = new DelegateCommand(LogManager.GetCurrentClassLogger(), ExecuteQuickFixInAllProjectsCommand, _ => SelectedItem != null && _state.Status == ParserState.Ready); CopyResultsCommand = new DelegateCommand(LogManager.GetCurrentClassLogger(), ExecuteCopyResultsCommand, CanExecuteCopyResultsCommand); OpenInspectionSettings = new DelegateCommand(LogManager.GetCurrentClassLogger(), OpenSettings); CollapseAllCommand = new DelegateCommand(LogManager.GetCurrentClassLogger(), ExecuteCollapseAll); ExpandAllCommand = new DelegateCommand(LogManager.GetCurrentClassLogger(), ExecuteExpandAll); _configService.SettingsChanged += _configService_SettingsChanged; // todo: remove I/O work in constructor _runInspectionsOnReparse = _configService.LoadConfiguration().UserSettings.CodeInspectionSettings.RunInspectionsOnSuccessfulParse; if (CollectionViewSource.GetDefaultView(_results) is ListCollectionView results) { results.Filter = inspection => InspectionFilter((IInspectionResult)inspection); results.CustomSort = this; Results = results; } OnPropertyChanged(nameof(Results)); Grouping = InspectionResultGrouping.Type; _state.StateChanged += HandleStateChanged; }
public TestExplorerViewModel(IVBE vbe, RubberduckParserState state, ITestEngine testEngine, TestExplorerModel model, IClipboardWriter clipboard, IGeneralConfigService configService, ISettingsFormFactory settingsFormFactory, IMessageBox messageBox, ReparseCommand reparseCommand) { _vbe = vbe; _state = state; _testEngine = testEngine; _testEngine.TestCompleted += TestEngineTestCompleted; Model = model; _clipboard = clipboard; _settingsFormFactory = settingsFormFactory; _messageBox = messageBox; _navigateCommand = new NavigateCommand(_state.ProjectsProvider); RunSelectedTestCommand = new DelegateCommand(LogManager.GetCurrentClassLogger(), ExecuteSelectedTestCommand, CanExecuteSelectedTestCommand); RunSelectedCategoryTestsCommand = new DelegateCommand(LogManager.GetCurrentClassLogger(), ExecuteRunSelectedCategoryTestsCommand, CanExecuteRunSelectedCategoryTestsCommand); CopyResultsCommand = new DelegateCommand(LogManager.GetCurrentClassLogger(), ExecuteCopyResultsCommand); OpenTestSettingsCommand = new DelegateCommand(LogManager.GetCurrentClassLogger(), OpenSettings); SetOutcomeGroupingCommand = new DelegateCommand(LogManager.GetCurrentClassLogger(), param => { GroupByOutcome = true; if ((bool)param) { GroupByLocation = false; GroupByCategory = false; } }); SetLocationGroupingCommand = new DelegateCommand(LogManager.GetCurrentClassLogger(), param => { GroupByLocation = true; if ((bool)param) { GroupByOutcome = false; GroupByCategory = false; } }); SetCategoryGroupingCommand = new DelegateCommand(LogManager.GetCurrentClassLogger(), param => { GroupByCategory = true; if ((bool)param) { GroupByOutcome = false; GroupByLocation = false; } }); }
public InspectionResultsViewModel( RubberduckParserState state, IInspector inspector, IQuickFixProvider quickFixProvider, INavigateCommand navigateCommand, ReparseCommand reparseCommand, IClipboardWriter clipboard, IWebNavigator web, IConfigurationService <Configuration> configService, ISettingsFormFactory settingsFormFactory, IUiDispatcher uiDispatcher) { _web = web; _state = state; _inspector = inspector; _quickFixProvider = quickFixProvider; NavigateCommand = navigateCommand; _clipboard = clipboard; _configService = configService; _settingsFormFactory = settingsFormFactory; _uiDispatcher = uiDispatcher; RefreshCommand = new DelegateCommand(LogManager.GetCurrentClassLogger(), o => { IsBusy = true; _forceRefreshResults = true; var cancellation = new ReparseCancellationFlag(); reparseCommand.Execute(cancellation); if (cancellation.Canceled) { IsBusy = false; } }, o => !IsBusy && reparseCommand.CanExecute(o)); DisableInspectionCommand = new DelegateCommand(LogManager.GetCurrentClassLogger(), ExecuteDisableInspectionCommand); QuickFixCommand = new DelegateCommand(LogManager.GetCurrentClassLogger(), ExecuteQuickFixCommand, CanExecuteQuickFixCommand); QuickFixSelectedItemsCommand = new DelegateCommand(LogManager.GetCurrentClassLogger(), ExecuteQuickFixForSelection, CanExecuteQuickFixForSelection); QuickFixInProcedureCommand = new DelegateCommand(LogManager.GetCurrentClassLogger(), ExecuteQuickFixInProcedureCommand, CanExecuteQuickFixInProcedure); QuickFixInModuleCommand = new DelegateCommand(LogManager.GetCurrentClassLogger(), ExecuteQuickFixInModuleCommand, CanExecuteQuickFixInModule); QuickFixInProjectCommand = new DelegateCommand(LogManager.GetCurrentClassLogger(), ExecuteQuickFixInProjectCommand, CanExecuteQuickFixInProject); QuickFixInAllProjectsCommand = new DelegateCommand(LogManager.GetCurrentClassLogger(), ExecuteQuickFixInAllProjectsCommand, CanExecuteQuickFixAll); CopyResultsCommand = new DelegateCommand(LogManager.GetCurrentClassLogger(), ExecuteCopyResultsCommand, CanExecuteCopyResultsCommand); OpenInspectionSettings = new DelegateCommand(LogManager.GetCurrentClassLogger(), OpenSettings); CollapseAllCommand = new DelegateCommand(LogManager.GetCurrentClassLogger(), ExecuteCollapseAll); ExpandAllCommand = new DelegateCommand(LogManager.GetCurrentClassLogger(), ExecuteExpandAll); OpenInspectionDetailsPageCommand = new DelegateCommand(LogManager.GetCurrentClassLogger(), ExecuteOpenInspectionDetailsPageCommand); QuickFixCommands = new List <(ICommand command, string key, Func <IQuickFix, bool> visibility)> { (QuickFixCommand, "QuickFix_Instance", quickFix => true), (QuickFixSelectedItemsCommand, "QuickFix_Selection", quickFix => quickFix.CanFixMultiple), (QuickFixInProcedureCommand, "QuickFix_ThisProcedure", quickFix => quickFix.CanFixInProcedure), (QuickFixInModuleCommand, "QuickFix_ThisModule", quickFix => quickFix.CanFixInModule), (QuickFixInProjectCommand, "QuickFix_ThisProject", quickFix => quickFix.CanFixInProject), (QuickFixInAllProjectsCommand, "QuickFix_All", quickFix => quickFix.CanFixAll) }; _configService.SettingsChanged += _configService_SettingsChanged; // todo: remove I/O work in constructor _runInspectionsOnReparse = _configService.Read().UserSettings.CodeInspectionSettings.RunInspectionsOnSuccessfulParse; if (CollectionViewSource.GetDefaultView(_results) is ListCollectionView results) { results.Filter = inspection => InspectionFilter((IInspectionResult)inspection); results.CustomSort = this; Results = results; } OnPropertyChanged(nameof(Results)); Grouping = InspectionResultGrouping.Type; _state.StateChanged += HandleStateChanged; }
public CodeExplorer_CopyResultsCommand(RubberduckParserState state) { _state = state; _clipboard = new ClipboardWriter(); }
public CopyResultsCommand(RubberduckParserState state) : base(LogManager.GetCurrentClassLogger()) { _state = state; _clipboard = new ClipboardWriter(); }