public SummaryItemInfoExtractor(ISummaryItem isi)
        {
            m_isi = isi;

            StringBuilder bldOrig = new StringBuilder();
            StringBuilder bldMod = new StringBuilder();
            foreach (Change ch in isi.Changes)
            {
                if (Utils.IsInOriginalDocument(ch.Type))
                    ch.GetInnerText(bldOrig);
                if (Utils.IsInModifiedDocument(ch.Type))
                    ch.GetInnerText(bldMod);
            }

            bldBefore = new StringBuilder();
            bldAfter = new StringBuilder();

            SurroundingTextExtractor txtex = new SurroundingTextExtractor();
            txtex.Execute(isi.Content, this);

            TextBeforeChange = bldBefore.ToString();
            TextAfterChange = bldAfter.ToString();

            OriginalText = bldOrig.ToString();
            ModifiedText = bldMod.ToString();
        }
Example #2
0
        private int GetChangeEndPos(ISummaryItem si)
        {
            Change cLast = si.Changes[si.Changes.Count - 1];
            StringBuilder bld = new StringBuilder();
            cLast.GetInnerText(bld);

            return cLast.RedlineCharPos + bld.Length;
        }
        private bool IsInContext(ISummaryItem item)
        {
            foreach (Change ch in item.Changes)
            {
                DocObject parent = ch.Parent;
                while (parent != null)
                {
                    if (m_selector(parent))
                        return true;
                    parent = parent.Parent;
                }

            }

            return false;
        }
Example #4
0
        protected override void RemoveGroupSummaryForProtectedColumns()
        {
            for (int i = Control.GroupSummary.Count - 1; i >= 0; i--)
            {
                ISummaryItem item = Control.GroupSummary[i];
                foreach (GridColumn column in Control.Columns)
                {
                    var xafGridColumn = column as XafGridColumn;
                    if ((xafGridColumn != null) && xafGridColumn.FieldName == item.FieldName && !new XafGridColumnWrapper(xafGridColumn).AllowGroupingChange)
                    {
                        Control.GroupSummary.RemoveAt(i);
                    }
                }
            }
            var masterDetailXafGridView = Control as IColumnView;

            if (masterDetailXafGridView != null)
            {
                masterDetailXafGridView.CanFilterGroupSummaryColumns = true;
            }
        }
Example #5
0
 protected abstract bool MatchesFilter(ISummaryItem si);
Example #6
0
 private int GetChangeStartPos(ISummaryItem si)
 {
     return si.Changes[0].RedlineCharPos;
 }
        private long Hash(ISummaryItem si)
        {
            long result = 0;
            foreach (Change c in si.Changes)
            {
                unchecked
                {
                    result = result * DocObject.LARGE_PRIME + c.GetHashCode();
                }
            }

            return result;
        }
Example #8
0
 public IList<Inline> Execute(List<DocObject> docObjects)
 {
     m_si = null;
     return ExecuteImpl(docObjects);
 }
Example #9
0
 public List<Inline> Execute(ISummaryItem si)
 {
     m_si = si;
     return ExecuteImpl(si.Content);
 }
Example #10
0
 private void CheckSummaryItem(ISummaryItem isi)
 {
     foreach (Change ch in isi.Changes)
     {
         StringBuilder bld = new StringBuilder();
         ch.GetInnerText(bld);
         if (bld.ToString().IndexOf(m_searchText, GetStringComparisonType()) != -1)
         {
             m_result.ChildNodes.Add(new SearchInChangesNode(isi, m_rtb, m_searchText, true));
             return;
         }
     }
 }
Example #11
0
 protected SummaryNode(ISummaryItem isi)
 {
     SummaryItem = isi;
     _childNodes.CollectionChanged += new System.Collections.Specialized.NotifyCollectionChangedEventHandler(_childNodes_CollectionChanged);
 }
Example #12
0
 public SummaryNode this[ISummaryItem item]
 {
     get
     {
         var node = (from o in ChildNodes
                     where o.SummaryItem == item
                     select o).FirstOrDefault();
         return node;
     }
 }