public List<SummaryNode> ExecuteFilter(List<RedlineML.ISummaryItem> items, FilterContext context) { m_items = items; SummaryNode result = SummaryCategoryNode.Create("Unchanged Placeholders", ChangeCategory.UnchangedPlaceholders); result.ToolTipText = GetTooltipText(); Dictionary<string, SearchResult> results = RedlineML.FastSearch.RedlineMLSearch.Execute(m_placeholderStrings, m_rd, Utils.IsInModifiedDocument, null); foreach (SearchResult sr in results.Values) { SearchSummaryItemBuilder ssib = new SearchSummaryItemBuilder(sr, Utils.IsInOriginalDocument); foreach (ISummaryItem isi in ssib.Execute()) { result.ChildNodes.Add(new SummarySearchNode(isi, context.RTB, context.ChangePositionMap)); } } if (result.ChildNodes.Count > 0) m_result.Add(result); return m_result; }
private void SearchRedlineText(Predicate<ChangeType> changeTypeSelector) { var searchResult = RedlineMLSearch.Execute(new List<string> { m_searchText }, m_RedlineDoc, changeTypeSelector, null, m_ignoreCase); foreach (SearchResult sr in searchResult.Values) { SearchSummaryItemBuilder ssib = new SearchSummaryItemBuilder(sr, changeTypeSelector); foreach (ISummaryItem isi in ssib.Execute()) { m_result.ChildNodes.Add(new SummarySearchNode(isi, m_rtb, m_changePosMap)); } } }
private void AddMissingChangeItems(SummaryNode parentNode, SearchResult sr) { if (m_missingChanges == null) { m_missingChanges = SummaryCategoryNode.Create("Suggested Changes", ChangeCategory.MissingChanges); m_missingChanges.ToolTipText = "Changes that a reviewer might have neglected to make. This category highlights places where a matching replacement or deletion has not been applied consistently accross the whole document." + " Suggest changes are only flagged where the number of unchanged instances found is less than half the number of changed instances."; } SummaryNode headingNode = new RedlineHeadingNode((parentNode as RedlineHeadingNode).RedlineObjects, m_context.RTB); SearchSummaryItemBuilder ssib = new SearchSummaryItemBuilder(sr, Utils.IsInOriginalDocument); foreach (ISummaryItem isi in ssib.Execute()) { headingNode.ChildNodes.Add(new SummarySearchNode(isi, m_context.RTB, m_context.ChangePositionMap)); } m_missingChanges.ChildNodes.Add(headingNode); }