示例#1
0
        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 =
                    OutliningManager.Get(point.Value.Snapshot.TextBuffer);
                outlining.RemoveAt(point.Value);
            }
        }
示例#2
0
        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);
            }
        }
            private void RemoveOutlineAt(SnapshotPoint snapshotPoint)
            {
                var            textBuffer = this.theHost.TextView.TextBuffer;
                IUserOutlining outlining  = UserOutliningManager.Get(textBuffer);

                if (outlining != null)
                {
                    outlining.RemoveAt(snapshotPoint);
                }
            }
示例#4
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);
        }
示例#5
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);
        }
示例#6
0
 public GlyphTagger(IUserOutlining manager)
 {
     this.manager = manager;
 }
示例#7
0
 public OutliningTagger(IUserOutlining manager)
 {
     this.manager = manager;
 }