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 = OutliningManager.Get(point.Value.Snapshot.TextBuffer); Command.Enabled = outlining.IsInOutliningRegion(point.Value); } }
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); }