private void FillSnapshotFromLast(string snapshotTag, TreeView flattv, TreeView treetv, FindSettings findSettings, RichTextBox tbPreview) { dictTBPreview.Add(findSettings, tbPreview); CopyItems(last_tvResultFlatTree.Items, flattv.Items, findSettings, tbPreview); CopyItems(last_tvResultTree.Items, treetv.Items, findSettings, tbPreview); dictTVData[flattv] = new TVData() { longDir = System.IO.Path.GetDirectoryName(Dte.Solution.FullName) }; dictTVData[treetv] = new TVData() { longDir = System.IO.Path.GetDirectoryName(Dte.Solution.FullName) }; }
internal void SetHeaderShortLong(TreeView treeView, ItemCollection collection, bool blShort) { if (dictTVData.Count == 0) { return; } Debug.Assert(dictTVData.ContainsKey(treeView), "There is no tvData in the dictionary for " + treeView.Name); TVData tvData = dictTVData[treeView]; if (blShort) { foreach (TreeViewItem item in collection) { if (item.Items.Count != 0) { if (item.Header.ToString().StartsWith(tvData.longDir)) { item.Header = tvData.shortDir + item.Header.ToString().Substring(tvData.longDir.Length); } } else { SetHeaderShortLong(treeView, item.Items, blShort); } } } else { foreach (TreeViewItem item in collection) { if (item.Items.Count != 0) { if (item.Header.ToString().StartsWith(tvData.shortDir)) { item.Header = tvData.longDir + item.Header.ToString().Substring(tvData.shortDir.Length); } } else { SetHeaderShortLong(treeView, item.Items, blShort); } } } }
internal void MoveResultToFlatTreeList(TreeView tvResultFlatTree, FindSettings last_searchSetting, RichTextBox tbPreview, List <ResultItem> resultList, bool partialMode = true) { List <ResultItem> tmp = new List <ResultItem>(); string content = ""; foreach (ResultItem resultItem in resultList) { tmp.Add(resultItem.GetCopy()); } TreeViewItem treeItem; dictTVData[tvResultFlatTree] = new TVData() { longDir = GetSolutionFullName() }; if (!partialMode) { tvResultFlatTree.Items.Clear(); } foreach (ResultItem resultItem in resultList) { treeItem = GetTVItemByFilePath(tvResultFlatTree.Items, resultItem.linePath); content = resultItem.lineContent.Trim(); if (treeItem == null) { treeItem = new TreeViewItem() { Header = resultItem.linePath, FontWeight = FontWeights.Bold }; tvResultFlatTree.Items.Add(treeItem); } treeItem.Items.Add(AddLeafItem(resultItem)); } SetExpandAllInLvl(tvResultFlatTree.Items, true); this.Focusable = false; }
internal void MoveResultToTreeList(TreeView tvResultTree, FindSettings last_searchSettings, RichTextBox tbPreview, List <ResultItem> resultList, bool partialMode = true) { List <ResultItem> tmp = new List <ResultItem>(); foreach (ResultItem resultItem in resultList) { tmp.Add(resultItem.GetCopy()); } ItemCollection treeItemColleaction; string pathAgg; TreeViewItem treeItem; dictTVData[tvResultTree] = new TVData() { longDir = GetSolutionFullName() }; if (!partialMode) { tvResultTree.Items.Clear(); } foreach (ResultItem resultItem in resultList) { treeItemColleaction = tvResultTree.Items; treeItem = null; pathAgg = ""; for (int i = 0; i < resultItem.PathPartsList.Count; i++) { if (pathAgg == "") { pathAgg = resultItem.PathPartsList[i]; } else { pathAgg = pathAgg + @"\" + resultItem.PathPartsList[i]; } if (Directory.Exists(pathAgg) || File.Exists(pathAgg)) { treeItem = GetTVItemByFilePath(treeItemColleaction, resultItem.PathPartsList[i]); if (treeItem == null) { treeItem = new TreeViewItem() { Header = resultItem.PathPartsList[i], FontWeight = FontWeights.Bold }; treeItemColleaction.Add(treeItem); } treeItemColleaction = treeItem.Items; } if (i == resultItem.PathPartsList.Count - 1) { treeItemColleaction.Add(AddLeafItem(resultItem)); } } } if (!partialMode) { foreach (TreeViewItem tmpItem in tvResultTree.Items) { JoinNodesWOLeafs(tmpItem); } } SetExpandAllInLvl(tvResultTree.Items, true); }