MS\Internal\Annotations\TextAnchor.cs (46)
52_segments.Add(new TextSegment(segment.Start, segment.End));
121for (int i = 0; i < _segments.Count; i++)
123if (_segments[i].Contains(textPointer))
169if (other._segments.Count != this._segments.Count)
172for (int i = 0; i < _segments.Count; i++)
174if ((_segments[i].Start.CompareTo(other._segments[i].Start) != 0) ||
175(_segments[i].End.CompareTo(other._segments[i].End) != 0))
195IEnumerator<TextSegment> ourEnumerator = _segments.GetEnumerator();
289while (currentIndex < anchor._segments.Count && hasMore)
293current = anchor._segments[currentIndex];
310anchor._segments.RemoveAt(currentIndex);
317anchor._segments[currentIndex] = CreateNormalizedSegment(otherSegment.End, current.End);
330anchor._segments[currentIndex] = CreateNormalizedSegment(current.Start, otherSegment.Start);
336anchor._segments.Insert(currentIndex + 1, CreateNormalizedSegment(otherSegment.End, current.End));
347if (anchor._segments.Count > 0)
391while (current < anchor._segments.Count && hasMore)
395currentSegment = anchor._segments[current];
408anchor._segments.RemoveAt(current);
419anchor._segments[current] = CreateNormalizedSegment(otherSegment.Start, currentSegment.End);
428anchor._segments[current] = CreateNormalizedSegment(currentSegment.Start, otherSegment.End);
430anchor._segments.Insert(current + 1, CreateNormalizedSegment(otherSegment.End, currentSegment.End));
446if (!hasMore && current < anchor._segments.Count)
448anchor._segments.RemoveRange(current, anchor._segments.Count - current);
451if (anchor._segments.Count == 0)
507return _segments.Count > 0 ? _segments[0].Start : null;
518return _segments.Count > 0 ? _segments[_segments.Count - 1].End : null;
530return (_segments.Count == 1 && (object)_segments[0].Start == (object)_segments[0].End);
545for (int i = 0; i < _segments.Count; i++)
547textBuffer.Append(TextRangeBase.GetTextInternal(_segments[i].Start, _segments[i].End));
561return _segments.AsReadOnly();
627for (; i < _segments.Count; i++)
629if (newSegment.Start.CompareTo(_segments[i].Start) < 0)
634if (i > 0 && newSegment.Start.CompareTo(_segments[i - 1].End) < 0)
638if (i < _segments.Count && newSegment.End.CompareTo(_segments[i].Start) > 0)
641_segments.Insert(i, newSegment);