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);
        }
Example #5
0
        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);
        }
Example #6
0
        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);
        }
Example #7
0
 private IUserOutlining GetOutlining(ITextView view, out ITextBuffer buffer)
 {
     buffer = TextEditor.GetPrimaryBuffer(view);
     return(UserOutliningManager.Get(buffer));
 }