public static ITrackingSpan RangeToTrackingSpan(vsrange vsrange, ITextSnapshot textSnapshot) { var from = vsrange.From; ITextSnapshotLine anchor = textSnapshot.GetLineFromLineNumber(from.Line); var start = anchor.Start.Position; var to = vsrange.To; var end = textSnapshot.GetLineFromLineNumber(to.Line).Start.Position + to.Col; return textSnapshot.CreateTrackingSpan(start, end - start, SpanTrackingMode.EdgeInclusive); }
public void MoveTo(vsrange range, ITextSnapshot currentSnapshot) { Span = RangeToTrackingSpan(range, currentSnapshot); }