protected override void OnInvoke(object sender, EventArgs e) { base.OnInvoke(sender, e); ITextView view = TextEditor.GetCurrentView(); if (view == null) { return; } ITextCaret caret = view.Caret; if (caret == null) { return; } var point = TextEditor.MapCaretToPrimaryBuffer(view); //SnapshotPoint? point = caret.Position.BufferPosition; if (point != null) { IUserOutlining outlining = UserOutliningManager.Get(point.Value.Snapshot.TextBuffer); outlining.RemoveAt(point.Value); Telemetry.WriteEvent("Remove Outlining"); } }
protected override void OnBeforeQueryStatus(object sender, EventArgs e) { base.OnBeforeQueryStatus(sender, e); ITextView view = TextEditor.GetCurrentView(); if (view == null) { return; } ITextCaret caret = view.Caret; if (caret == null) { return; } var point = TextEditor.MapCaretToPrimaryBuffer(view); //SnapshotPoint? point = caret.Position.BufferPosition; if (point != null) { IUserOutlining outlining = UserOutliningManager.Get(point.Value.Snapshot.TextBuffer); Command.Enabled = outlining.IsInOutliningRegion(point.Value); } }
private void AddOutlining(ITextBuffer buffer, SnapshotSpan span) { var outlines = UserOutliningManager.Get(buffer); outlines.Add(span); Telemetry.WriteEvent("Add Outlining"); }
private IUserOutlining GetOutlining(out ITextBuffer buffer) { buffer = null; ITextView view = TextEditor.GetCurrentView(); if (view != null) { buffer = TextEditor.GetPrimaryBuffer(view); //buffer = view.TextBuffer; return(UserOutliningManager.Get(buffer)); } return(null); }
public bool IsEnabled(ITextView view, ref String commandText) { ITextCaret caret = view.Caret; if (caret == null) { return(false); } var point = TextEditor.MapCaretToPrimaryBuffer(view); if (point != null) { IUserOutlining outlining = UserOutliningManager.Get(point.Value.Snapshot.TextBuffer); return(outlining.IsInOutliningRegion(point.Value)); } return(false); }
public bool Handle(ITextView view) { ITextCaret caret = view.Caret; if (caret == null) { return(false); } var point = TextEditor.MapCaretToPrimaryBuffer(view); //SnapshotPoint? point = caret.Position.BufferPosition; if (point != null) { IUserOutlining outlining = UserOutliningManager.Get(point.Value.Snapshot.TextBuffer); outlining.RemoveAt(point.Value); Telemetry.WriteEvent("Remove Outlining"); } return(true); }
private IUserOutlining GetOutlining(ITextView view, out ITextBuffer buffer) { buffer = TextEditor.GetPrimaryBuffer(view); return(UserOutliningManager.Get(buffer)); }