/
n-dimens
/
pascalabcnet
Обзор
Документация
Войти
/
n-dimens
/
pascalabcnet
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
ICSharpCode.TextEditorLinux/Src/Actions/BookmarkActions.cs
78 строк
2 KB
Mikhalkovich Stanislav
Для Linux-версии исправлен DockContent, редактор (показ всплывающего окна)
30 июн 2022, 09:47
30 июн 2022, 09:47
3072383
Код
Авторство
О чём код?
// <file> // <copyright see="prj:///doc/copyright.txt"/> // <license see="prj:///doc/license.txt"/> // <owner name="Mike Krüger" email="mike@icsharpcode.net"/> // <version>$Revision: 1965 $</version> // </file> using System; using ICSharpCode.TextEditor.Document; namespace ICSharpCode.TextEditor.Actions { public class ToggleBookmark : AbstractEditAction { public override void Execute(TextArea textArea) { textArea.Document.BookmarkManager.ToggleMarkAt(textArea.Caret.Line); textArea.Document.RequestUpdate(new TextAreaUpdate(TextAreaUpdateType.SingleLine, textArea.Caret.Line)); textArea.Document.CommitUpdate(); } } public class GotoPrevBookmark : AbstractEditAction { Predicate<Bookmark> predicate = null; public GotoPrevBookmark(Predicate<Bookmark> predicate) { this.predicate = predicate; } public override void Execute(TextArea textArea) { Bookmark mark = textArea.Document.BookmarkManager.GetPrevMark(textArea.Caret.Line, predicate); if (mark != null) { textArea.Caret.Line = mark.LineNumber; textArea.SelectionManager.ClearSelection(); } } } public class GotoNextBookmark : AbstractEditAction { Predicate<Bookmark> predicate = null; public GotoNextBookmark(Predicate<Bookmark> predicate) { this.predicate = predicate; } public override void Execute(TextArea textArea) { Bookmark mark = textArea.Document.BookmarkManager.GetNextMark(textArea.Caret.Line, predicate); if (mark != null) { textArea.Caret.Line = mark.LineNumber; textArea.SelectionManager.ClearSelection(); } } } public class ClearAllBookmarks : AbstractEditAction { Predicate<Bookmark> predicate = null; public ClearAllBookmarks(Predicate<Bookmark> predicate) { this.predicate = predicate; } public override void Execute(TextArea textArea) { textArea.Document.BookmarkManager.RemoveMarks(predicate); textArea.Document.RequestUpdate(new TextAreaUpdate(TextAreaUpdateType.WholeTextArea)); textArea.Document.CommitUpdate(); } } }