int IVsSolutionEvents.OnAfterCloseSolution(object pUnkReserved) { testSystemRoot = null; roots.Clear(); dataBase = null; dataGrid.ItemsSource = null; return(VSConstants.S_OK); }
private void LoadSettings(bool quiet) { // CmdArgs ThreadHelper.ThrowIfNotOnUIThread(); DataTable dataTable = new DataTable(); dataTable.Columns.Add("CommandArguments"); dataTable.Columns.Add("Filename"); DTE2 dte = (DTE2)Package.GetGlobalService(typeof(DTE)); try { if (File.Exists(dte.Solution.FullName + @".debugaddin.cmdargs")) { string[] lines = File.ReadAllLines(dte.Solution.FullName + @".debugaddin.cmdargs"); if (lines.Length > 0 && lines[0] == "Version 1.2") { foreach (var array in Utils.TupleUp(lines.Skip(1), 2)) { dataTable.Rows.Add(array[0], array[1]); } } } } catch (Exception ex) { Utils.PrintMessage("Exception", ex.Message + "\n" + ex.StackTrace, true); } dataTable.RowChanged += (x, y) => SaveCmdArgs(dataTable); dataTable.RowDeleted += (x, y) => SaveCmdArgs(dataTable); dataGrid.ItemsSource = dataTable.DefaultView; // Roots LoadRoots(); // Cases try { dataBase = new DataBaseRefresher.DataBase(); if (File.Exists(dte.Solution.FullName + @".debugaddin.algotests")) { dataBase.LoadFromFile(dte.Solution.FullName + @".debugaddin.algotests"); } } catch (Exception ex) { Utils.PrintMessage("Exception", ex.Message + "\n" + ex.StackTrace, true); } if (quiet == false) { System.Windows.Forms.MessageBox.Show("Loaded!"); } }