protected override void Run() { Observable.FromEventPattern <ProjectFileEventHandler, ProjectFileEventArgs> (e => IdeApp.Workspace.FileChangedInProject += e, e => IdeApp.Workspace.FileChangedInProject -= e) .Buffer(TimeSpan.FromMilliseconds(500)) .Where(l => l.Any()) .ObserveOn(SynchronizationContext.Current) .Select(p => p.Select(i => i.EventArgs)) .Subscribe((l) => RunTests(l), (e) => { System.Diagnostics.Debug.WriteLine(e.ToString()); }); Observable.FromEventPattern <SolutionEventArgs>(e => IdeApp.ProjectOperations.CurrentSelectedSolutionChanged += e, e => IdeApp.ProjectOperations.CurrentSelectedSolutionChanged -= e) .Subscribe(_ => AddInPreferences.OnSolutionChanged()); }
public override void ApplyChanges() { AddInPreferences.ProjectTestMap = rows.Where(kvp => kvp.Item2.Text != EmptyChoice).Select(t => new ProjectTestTuple(t.Item1.Text, t.Item2.Text)).ToList(); AddInPreferences.SaveConfig(); }