public void InitializeView(ITestModel model, TestCentricPresenter presenter) { Model = model; Presenter = presenter; UserSettings = model.Services.UserSettings; LoadAlternateImages(); Model.Events.TestLoaded += (TestNodeEventArgs e) => { CheckPropertiesDialog(); Presenter.EnableRunCommand(true); runCommandEnabled = true; }; Model.Events.TestReloaded += (TestNodeEventArgs e) => { if (e.Test != null) { Invoke(new LoadHandler(Reload), new object[] { e.Test }); } }; Model.Events.TestsUnloading += (TestEventArgs e) => { ClosePropertiesDialog(); if (UserSettings.Gui.TestTree.SaveVisualState) { try { new VisualState(this).Save(VisualState.GetVisualStateFileName(Model.TestFiles[0])); } catch (Exception ex) { Debug.WriteLine("Unable to save visual state."); Debug.WriteLine(ex); } } Clear(); explicitlySelectedNode = null; runCommandEnabled = false; }; Model.Events.RunStarting += (RunStartingEventArgs e) => { CheckPropertiesDialog(); #if ACCUMULATE_RESULTS if (runningTests != null) { foreach (ITest test in runningTests) { this[test].ClearResults(); } } #else ClearAllResults(); #endif runCommandEnabled = false; }; Model.Events.RunFinished += (TestResultEventArgs e) => { if (runningTests != null) { foreach (TestNode test in runningTests) { this[test.Id].Expand(); } } if (propertiesDialog != null) { propertiesDialog.Invoke(new PropertiesDisplayHandler(propertiesDialog.DisplayProperties)); } runningTests = null; runCommandEnabled = true; }; Model.Events.TestFinished += (TestResultEventArgs e) => { SetTestResult(e.Result); }; Model.Events.SuiteFinished += (TestResultEventArgs e) => { SetTestResult(e.Result); }; //Services.UserSettings.Changed += (object sender, SettingsEventArgs e) => //{ // if (args.SettingName == "Gui.TestTree.AlternateImageSet") // { // LoadAlternateImages(); // Invalidate(); // } //}; //Model.Events.CategorySelectionChanged += (TestEventArgs e) => //{ // TestNodeFilter filter = TestNodeFilter.Empty; // if (Model.SelectedCategories.Length > 0) // { // filter = new CategoryFilter(Model.SelectedCategories); // if (Model.ExcludeSelectedCategories) // filter = new NotFilter(filter); // } // TreeFilter = filter; //}; }