public void RunLonestarOnActiveView(object sender, EventArgs e) { try { ActiveWindowManager activeWindowManager = new ActiveWindowManager(_package); ClearUI(activeWindowManager.GetActiveView()); BackgroundWorker worker = new BackgroundWorker(); worker.DoWork += ExecuteOnThread; worker.RunWorkerCompleted += (o, args) => UpdateUI(args.Result as List<FeatureResult>, activeWindowManager); worker.RunWorkerAsync(activeWindowManager.GetPathToActiveDocument()); } catch (Exception ex) { MessageBox.Show(ex.Message, "Error"); } }
private void UpdateUI(List<FeatureResult> featureResults, ActiveWindowManager activeWindowManager) { WpfUIStatusUpdater uiStatusUpdater = new WpfUIStatusUpdater(); uiStatusUpdater.UpdatedStatus += UpdateStatus; uiStatusUpdater.UpdateEditor(activeWindowManager.GetActiveView(), featureResults); uiStatusUpdater.UpdateStatusWithSummary(featureResults); _statusController.UpdateListsWithResults(featureResults); }