public void UpdateSpans(IMethodOffsetSpanMap map) { inDocMarkers.Clear(); SelectedMarkersInDocumentCount = 0; if (map != null) { var allMarkers = this.allMarkers; for (int i = 0; i < allMarkers.Count; i++) { var methodMarker = allMarkers[i] as IGlyphTextMethodMarkerImpl; if (methodMarker != null) { var span = map.ToSpan(methodMarker.Method, methodMarker.ILOffset); if (span != null) { inDocMarkers.Add(methodMarker, span.Value); if (methodMarker.SelectedMarkerTypeName != null) { SelectedMarkersInDocumentCount++; } } } } } }
SnapshotSpan?GetSnapshotSpan(IGlyphTextMethodMarker marker) { if (methodOffsetSpanMap == null) { return(null); } var span = methodOffsetSpanMap.ToSpan(marker.Method, marker.ILOffset); if (span == null) { return(null); } var snapshot = TextView.TextSnapshot; if (span.Value.End > snapshot.Length) { return(null); } return(new SnapshotSpan(snapshot, span.Value)); }
public void UpdateSpans(IMethodOffsetSpanMap map) { inDocMarkers.Clear(); SelectedMarkersInDocumentCount = 0; if (map != null) { var allMarkers = this.allMarkers; for (int i = 0; i < allMarkers.Count; i++) { var methodMarker = allMarkers[i] as IGlyphTextMethodMarkerImpl; if (methodMarker != null) { var span = map.ToSpan(methodMarker.Method, methodMarker.ILOffset); if (span != null) { inDocMarkers.Add(methodMarker, span.Value); if (methodMarker.SelectedMarkerTypeName != null) SelectedMarkersInDocumentCount++; } } } } }