Beispiel #1
0
        protected override void Run(ITextEditor editor, IBookmarkMargin bookmarkMargin)
        {
            var bookmarks = (from b in bookmarkMargin.Bookmarks.OfType <Bookmark>()
                             where b.CanToggle
                             select b).ToList();

            foreach (SDBookmark b in bookmarks)
            {
                BookmarkManager.RemoveMark(b);
            }
        }
Beispiel #2
0
        public static void ToggleBookmark(ITextEditor editor, int line,
                                          Predicate <SDBookmark> canToggle,
                                          Func <Location, SDBookmark> bookmarkFactory)
        {
            foreach (SDBookmark bookmark in GetBookmarks(new FileName(editor.FileName)))
            {
                if (canToggle(bookmark) && bookmark.LineNumber == line)
                {
                    BookmarkManager.RemoveMark(bookmark);
                    return;
                }
            }
            // no bookmark at that line: create a new bookmark
            int lineStartOffset = editor.Document.GetLine(line).Offset;
            int column          = 1 + DocumentUtilitites.GetWhitespaceAfter(editor.Document, lineStartOffset).Length;

            BookmarkManager.AddMark(bookmarkFactory(new Location(column, line)));
        }
Beispiel #3
0
 protected override void RemoveMark()
 {
     BookmarkManager.RemoveMark(this);
 }