public SegmentDef(IHighlightSegmentRaw seg, IMarkupPointerRaw start, IMarkupPointerRaw end, string wd) { segment = seg; startPtr = start; endPtr = end; word = wd; }
//adds a segment to the list //used when a misspelled word is found public void AddSegment(IHighlightSegmentRaw segment, string wordHere, IMarkupServicesRaw markupServices) { IMarkupPointerRaw start, end; markupServices.CreateMarkupPointer(out start); markupServices.CreateMarkupPointer(out end); segment.GetPointers(start, end); if (!list.ContainsKey(start)) { list.Add(start, new SegmentDef(segment, start, end, wordHere)); } }
private IHighlightSegmentRaw[] Subarray(int start, int end) { int count = end - start + 1; IHighlightSegmentRaw[] segments = new IHighlightSegmentRaw[count]; //fill in array by removing from the list starting at the end, so that // deleting from the list doesn't change the other indices for (int i = end; i >= start; i--) { segments[--count] = ((SegmentDef)list.GetByIndex(i)).segment; list.RemoveAt(i); } return(segments); }
public MatchingSegment(IHighlightSegmentRaw seg, IMarkupPointerRaw pointer) { _segment = seg; _pointer = pointer; }