TextEdit
Многострочный редактор текста с выделением, несколькими курсорами и историей отмены.
TextEdit редактирует многострочный текст в интерфейсе. Это не файловый менеджер: загрузку, сохранение и проверку данных реализует приложение. После создания добавьте контрол в UI и задайте размеры. Даже пустой документ содержит одну логическую строку.
Для загрузки документа присвойте Text. Setter испускает TextSet, но не TextChanged, и при обычной включённой истории допускает отмену замены. Если это новый документ, после загрузки явно вызовите ClearUndoHistory и TagSavedVersion. Не очищайте историю при каждой синхронизации модели: пользователь потеряет возможность отмены.
Для отслеживания правок подключите TextChanged и читайте Text. Уведомление отложено; несколько синхронных изменений могут объединиться в один сигнал. TextSet сообщает о назначении всего текста или Clear, а не об отдельной клавише. Обновление модели при загрузке выполняйте явно.
Строки и колонки начинаются с 0. Колонка считается в кодовых точках Unicode, а не в C# UTF-16 char: символ вне BMP занимает одну колонку, хотя String.Length учитывает две кодовые единицы. Кодовая точка также не всегда равна одному видимому символу. Не переносите индексы из C#-строки без преобразования.
InsertTextAtCaret заменяет выделение; по умолчанию действует на все подходящие курсоры, а caretIndex = 0 выбирает основной. RemoveText удаляет диапазон с исключённой правой границей. Объединяйте связанные изменения через BeginComplexOperation/EndComplexOperation с try/finally, чтобы одна команда отменялась одним Undo.
Editable = false ограничивает пользовательское редактирование и Undo/Redo, но не программные setters и вставки. Для признака несохранённых изменений сравнивайте GetVersion с GetSavedVersion. TagSavedVersion вызывайте после успешного сохранения приложением: сам метод файл не записывает. После очистки истории восстановите сохранённую отметку явно.
Объявления сверены с C# SDK 1.0.0. Раскройте имя, чтобы увидеть сигнатуры и описание.
Конструкторы1
TextEditКонструктор
public TextEdit();Создаёт редактируемый пустой контрол с одной логической строкой и пустой историей отмены. Добавление в UI и размеры задаются отдельно.
Свойства48
AutowrapModeСвойство
public TextServer.AutowrapMode AutowrapMode { get; set; }Правило визуального переноса при WrapMode.Boundary: Arbitrary — по границам графем, Word — по словам, WordSmart — с разбиением слишком длинного слова, Off — без мягких переносов. Само по себе не включает Boundary.
BackspaceDeletesCompositeCharacterEnabledСвойство
public bool BackspaceDeletesCompositeCharacterEnabled { get; set; }При true обычный Backspace удаляет составной символ до предыдущей границы; false — одну кодовую точку. CaretMidGrapheme = true имеет приоритет и также выбирает удаление одной точки. Не управляет RemoveText с явно заданным диапазоном.
CaretBlinkСвойство
public bool CaretBlink { get; set; }Включает мигание текстовой каретки. Таймер запускается при наличии фокуса; false отключает мигание, но не скрывает каретку. Видимость по-прежнему зависит от фокуса и других условий отрисовки. Интервал задаётся CaretBlinkInterval.
CaretBlinkIntervalСвойство
public float CaretBlinkInterval { get; set; }Положительный интервал переключения видимости каретки в секундах. Например, 0.5 означает переключение каждые полсекунды; полный цикл видимая/скрытая занимает два интервала. Значение 0 не отключает мигание: используйте CaretBlink = false. Это не задержка повтора ввода.
CaretDrawWhenEditableDisabledСвойство
public bool CaretDrawWhenEditableDisabled { get; set; }Разрешает отображать каретку при Editable = false с учётом остальных условий её видимости. Не разрешает ввод и не переводит элемент в редактируемый режим. Для обычного просмотра текста без каретки оставьте false.
CaretMidGraphemeСвойство
public bool CaretMidGrapheme { get; set; }Разрешает курсору/удалению работать внутри составных символов. При true Backspace удаляет одну кодовую точку даже если BackspaceDeletesCompositeCharacterEnabled включён. Не означает работу с половинами UTF-16-суррогатной пары.
CaretMoveOnRightClickСвойство
public bool CaretMoveOnRightClick { get; set; }Разрешает перемещать каретку правой кнопкой мыши. Не перемещает её при назначении свойства и не включает контекстное меню: оно управляется отдельно через ContextMenuEnabled.
CaretMultipleСвойство
public bool CaretMultiple { get; set; }Разрешает несколько курсоров. false немедленно удаляет вторичные, сбрасывает состояние многокурсорной операции и запрещает AddCaret. Не переключайте эту настройку внутри BeginMulticaretEdit/EndMulticaretEdit.
CaretTypeСвойство
public TextEdit.CaretTypeEnum CaretType { get; set; }Форма текстовой каретки: Line или Block. Block меняет отрисовку, но не включает замену символов: режим перезаписи задаётся отдельно через OvertypeMode. Не меняет текст и позиции курсоров.
ContextMenuEnabledСвойство
public bool ContextMenuEnabled { get; set; }Разрешает пользователю открывать встроенное контекстное меню. false не удаляет PopupMenu и не запрещает программные GetMenu или MenuOption. Это настройка интерфейса, а не запрет редактирования; для ввода используйте Editable.
CustomWordSeparatorsСвойство
public string CustomWordSeparators { get; set; }Дополнительные символы границ слов для текстовой системы редактора. Само назначение строки не включает их: используйте UseCustomWordSeparators. Не является regex и не меняет фиксированные проверки границ WholeWords в Search.
DeselectOnFocusLossEnabledСвойство
public bool DeselectOnFocusLossEnabled { get; set; }Управляет снятием выделения при потере фокуса. false позволяет сохранять выделение, когда фокус получает другой элемент. Переключение false → true у редактора без фокуса сразу снимает существующее выделение. Не меняет текст и не передаёт фокус.
DragAndDropSelectionEnabledСвойство
public bool DragAndDropSelectionEnabled { get; set; }Разрешает пользовательское перетаскивание выделенного текста средствами TextEdit. Не создаёт выделение, не выполняет перенос при назначении и не включает автоматически приём файлов или объектов проекта. Для выделения отдельно требуется SelectingEnabled.
DrawControlCharsСвойство
public bool DrawControlChars { get; set; }Разрешает отображение управляющих символов текстовой системой. Не удаляет их из документа и не служит очисткой/проверкой безопасности входного текста.
DrawSpacesСвойство
public bool DrawSpaces { get; set; }Показывает маркеры пробелов, не меняя Text или правила выделения. Это отображение, а не добавление символов в файл.
DrawTabsСвойство
public bool DrawTabs { get; set; }Показывает визуальные маркеры tab, сохраняя текст документа. Не включает приём Tab и не переводит табуляцию в пробелы.
EditableСвойство
public bool Editable { get; set; }Разрешает пользовательское редактирование; true по умолчанию. false также блокирует действия Undo/Redo, но не Text, SetLine, InsertTextAtCaret и RemoveText из кода. Это режим UI, не защита данных модели.
EmojiMenuEnabledСвойство
public bool EmojiMenuEnabled { get; set; }Разрешает команду выбора эмодзи в контекстном меню при поддержке системного окна выбора платформой. false делает соответствующий пункт недоступным, а не обязательно удаляет его. Также требуется Editable. Не добавляет шрифт эмодзи и не гарантирует наличие системного окна на каждой платформе.
EmptySelectionClipboardEnabledСвойство
public bool EmptySelectionClipboardEnabled { get; set; }Разрешает стандартным Copy и Cut обрабатывать полные строки при отсутствии выделения. По умолчанию true. Не означает копирование пустой строки вместо данных: строка под курсором копируется целиком, а Cut может удалить её. Не влияет на выбранный текст и само назначение свойства не обращается к буферу.
HighlightAllOccurrencesСвойство
public bool HighlightAllOccurrences { get; set; }Подсвечивает совпадения текста выделения курсора 0 с учётом регистра и границ целого слова. Пустое или состоящее только из пробельных символов выделение не подсвечивается. Не создаёт дополнительных выделений и не задаёт SetSearchText. Отличается от AddSelectionForNextOccurrence: та команда допускает совпадение внутри слова.
HighlightCurrentLineСвойство
public bool HighlightCurrentLine { get; set; }Подсвечивает фон текущих строк курсоров цветом темы. Это визуальная подсветка, а не выделение текста: HasSelection и GetSelectedText не меняются. Для явного диапазона используйте Select.
IndentWrappedLinesСвойство
public bool IndentWrappedLines { get; set; }Добавляет визуальный отступ продолжениям перенесённой строки. Не вставляет пробелы/табуляцию и не меняет текст или логические номера строк.
LanguageСвойство
public string Language { get; set; }Языковая подсказка формирования текста, например ar; пустая строка использует локаль. Не переводит документ и не переключает язык приложения. Меняет правила формирования/выбора глифов, сохраняя Text.
MiddleMousePasteEnabledСвойство
public bool MiddleMousePasteEnabled { get; set; }Разрешает обработку вставки средней кнопкой мыши через primary-буфер на поддерживающих его платформах. Не создаёт поддержку primary-буфера и не управляет обычным Paste. false отключает этот путь ввода, но не блокирует программный PastePrimaryClipboard. Назначение свойства ничего не вставляет.
MinimapDrawСвойство
public bool MinimapDraw { get; set; }Показывает мини-карту документа. Она занимает часть ширины TextEdit, поэтому при включённом переносе может изменить число визуальных строк. Исходный Text и число логических строк не меняются. Ширина задаётся MinimapWidth.
MinimapWidthСвойство
public int MinimapWidth { get; set; }Ширина области мини-карты в пикселях элемента управления. Используйте неотрицательное значение, оставляя место для основного текста. Это не масштаб шрифта мини-карты. Изменение пересчитывает доступную ширину переноса; для отключения используйте MinimapDraw = false.
PlaceholderTextСвойство
public string PlaceholderText { get; set; }Подсказка пустого редактора, отдельно от Text. GetPlaceholder возвращает исходную строку; отображение использует перевод UI. Не участвует в сохранении, поиске документа или истории его содержимого.
ScrollFitContentHeightСвойство
public bool ScrollFitContentHeight { get; set; }Учитывать содержимое в минимальной высоте контрола. Родительский контейнер может расширить редактор вместо внутренней прокрутки. Не меняет размер шрифта и не добавляет строки.
ScrollFitContentWidthСвойство
public bool ScrollFitContentWidth { get; set; }Учитывать содержимое в минимальной ширине контрола. Это требование раскладки, не фиксированная ширина или увеличение текста; учитывайте взаимодействие с переносами.
ScrollHorizontalСвойство
public int ScrollHorizontal { get; set; }Горизонтальное смещение в пикселях. Ограничивается диапазоном внутренней полосы прокрутки; при переносе доступное горизонтальное смещение может исчезнуть. Это не номер колонки текста.
ScrollPastEndOfFileСвойство
public bool ScrollPastEndOfFile { get; set; }Разрешает дополнительное место прокрутки после конца текста. Не добавляет пустые строки в документ и не увеличивает GetLineCount.
ScrollSmoothСвойство
public bool ScrollSmooth { get; set; }Включает плавную вертикальную прокрутку. Не меняет единицы ScrollVertical и не гарантирует анимацию любого программного SetVScroll.
ScrollVScrollSpeedСвойство
public float ScrollVScrollSpeed { get; set; }Скорость плавной вертикальной прокрутки, не меньше 1. Не устанавливает текущее смещение и не является высотой строки или величиной горизонтального шага.
ScrollVerticalСвойство
public double ScrollVertical { get; set; }Вертикальное смещение в единицах визуальных строк, допускающее дробную часть. Это не пиксели и не всегда логический номер строки: при переносах используйте GetScrollPosForLine. Getter возвращает фактическое ограниченное значение.
SelectingEnabledСвойство
public bool SelectingEnabled { get; set; }Разрешает выделение текста. Отключение снимает существующие выделения, но не блокирует перемещение курсора через Select и не делает документ read-only. Editable управляется отдельно.
SelectionHandleEnabledСвойство
public bool SelectionHandleEnabled { get; set; }Включает экранные маркеры управления выделением для сенсорного ввода. Не включает само выделение: оно управляется SelectingEnabled. Не относится к числу курсоров и не заменяет CaretMultiple.
ShortcutKeysEnabledСвойство
public bool ShortcutKeysEnabled { get; set; }Включает встроенные сочетания команд редактирования и их обозначения в контекстном меню. Не отключает весь ввод с клавиатуры и не блокирует программные вызовы команд. Для запрета пользовательского изменения текста используйте Editable = false.
StructuredTextBidiOverrideСвойство
public TextServer.StructuredTextParser StructuredTextBidiOverride { get; set; }Parser структурированного текста для смешанного LTR/RTL: URI, путь, email, список и другие поддерживаемые режимы. Это управление порядком отображения разделителей, не преобразование документа в другую кодировку. Параметры parser задаются отдельно.
StructuredTextBidiOverrideOptionsСвойство
public Reckfell.Collections.Array StructuredTextBidiOverrideOptions { get; set; }Общий Array параметров BiDi-parser. Setter сравнивает содержимое и пропускает равное; простое назначение Duplicate с прежними значениями не отсоединяет старый массив. Изменение массива на месте не запускает пересчёт текста. Передавайте отдельный подготовленный массив и новый массив с изменённым содержимым при обновлении.
SyntaxHighlighterСвойство
public SyntaxHighlighter SyntaxHighlighter { get; set; }Ресурс подсветки этого редактора; null отключает подсветку. Используйте отдельный экземпляр для каждого TextEdit: ресурс хранит только один контекст. Повторное присваивание того же ресурса пропускается и не заменяет ClearHighlightingCache/EmitChanged.
TabInputModeСвойство
public bool TabInputMode { get; set; }Управляет обработкой клавиши Tab редактором. Не преобразует уже сохранённые символы tab, не задаёт их ширину и не является режимом автоперевода отступов в пробелы.
TextСвойство
public string Text { get; set; }Полный текст с разделителями строк \n. Присваивание заменяет документ, испускает TextSet без TextChanged и допускает Undo при включённой истории. Для загрузки нового документа затем явно очистите историю и отметьте сохранённую версию.
TextDirectionСвойство
public Control.TextDirection TextDirection { get; set; }Базовое направление письма: Inherited следует раскладке Control, Auto выбирает его по тексту, Ltr/Rtl задают явно. Не переводит и не разворачивает сохранённую строку Text. Порядок символов в документе остаётся логическим.
UseCustomWordSeparatorsСвойство
public bool UseCustomWordSeparators { get; set; }Включает CustomWordSeparators для формирования границ слов. Настраивается независимо от UseDefaultWordSeparators; обе группы могут использоваться вместе. Не переключает режим WholeWords у Search.
UseDefaultWordSeparatorsСвойство
public bool UseDefaultWordSeparators { get; set; }Включает стандартные разделители слов текстовой системы. Отключение не включает пользовательские автоматически: UseCustomWordSeparators задаётся отдельно. Не меняет проверки границ WholeWords в Search.
VirtualKeyboardEnabledСвойство
public bool VirtualKeyboardEnabled { get; set; }Разрешает экранную клавиатуру, если её поддерживает текущая платформа. Назначение true само не открывает клавиатуру. Показ при получении фокуса отдельно регулируется VirtualKeyboardShowOnFocus; для редактирования требуется Editable. Не создаёт собственную клавиатуру средствами UI.
VirtualKeyboardShowOnFocusСвойство
public bool VirtualKeyboardShowOnFocus { get; set; }Разрешает запрос экранной клавиатуры при получении фокуса. Нужны VirtualKeyboardEnabled, Editable и поддержка платформы. false отключает именно показ по фокусу, а не все другие способы открытия клавиатуры.
WrapModeСвойство
public TextEdit.LineWrappingMode WrapMode { get; set; }None отключает визуальные переносы, Boundary ограничивает строку доступной шириной контрола. Места переноса задаёт AutowrapMode. Не вставляет переводы строк и не меняет GetLineCount; ширина зависит также от полей, полосы прокрутки, темы и миникарты.
Методы259
AddCaretint
public int AddCaret(int line, int column);Добавляет курсор и возвращает его индекс; -1 при выключенном CaretMultiple или совпадении с существующим курсором/выделением вне многокурсорной операции. Позиция ограничивается документом. Внутри BeginMulticaretEdit новый курсор временно игнорируется текущей операцией до EndMulticaretEdit.
| Имя | Тип | По умолчанию |
|---|---|---|
line | int | — |
column | int | — |
lineЛогическая строка с индексом от 0.
columnКолонка в кодовых точках Unicode, не UTF-16-индекс.
intДобавляет курсор и возвращает его индекс; -1 при выключенном CaretMultiple или совпадении с существующим курсором/выделением вне многокурсорной операции. Позиция ограничивается документом. Внутри BeginMulticaretEdit новый курсор временно игнорируется текущей операцией до EndMulticaretEdit.
AddCaretAtCaretsvoid
public void AddCaretAtCarets(bool below);Добавляет курсор на одну видимую строку выше или ниже каждого исходного курсора, сохраняя визуальную горизонтальную позицию и соответствующий диапазон выделения. Требует CaretMultiple. При переносе текста это может быть соседняя часть той же логической строки; скрытые строки пропускаются. За краями документа курсор не добавляется; совпадающие позиции объединяются.
| Имя | Тип | По умолчанию |
|---|---|---|
below | bool | — |
belowtrue — на одну видимую строку ниже; false — выше.
AddGuttervoid
public void AddGutter(int at = -1);Добавляет боковое поле и ячейки для всех логических строк. at в пределах 0…Count вставляет по индексу; отрицательное или больше Count добавляет в конец. Индексы следующих полей сдвигаются. Новое поле: String, ширина 24, показано, не clickable и не overwritable. Испускает GutterAdded без индекса.
| Имя | Тип | По умолчанию |
|---|---|---|
at | int | -1 |
atИндекс вставки 0…GetGutterCount; отрицательное или больше Count добавляет в конец.
AddSelectionForNextOccurrencevoid
public void AddSelectionForNextOccurrence();Добавляет выделение следующего буквального совпадения текста у последнего курсора по индексу. Требует SelectingEnabled и CaretMultiple. Без выделения первый вызов только выделяет слово. Поиск учитывает регистр, допускает часть слова и циклически обходит документ; многострочный запрос не поддерживается. Совпадения могут пересекаться: после объединения число курсоров не обязательно увеличивается. Текст не меняется.
AdjustCaretsAfterEditvoid · Устарело
public void AdjustCaretsAfterEdit(int caret, int fromLine, int fromCol, int toLine, int toCol);Устаревший метод без действия. Текущие операции редактирования сами корректируют курсоры; удалите вызов из нового кода.
| Имя | Тип | По умолчанию |
|---|---|---|
caret | int | — |
fromLine | int | — |
fromCol | int | — |
toLine | int | — |
toCol | int | — |
caretТекущий индекс курсора; не постоянный идентификатор.
fromLineНе используется устаревшим методом.
fromColНе используется устаревшим методом.
toLineНе используется устаревшим методом.
toColНе используется устаревшим методом.
AdjustViewportToCaretvoid
public void AdjustViewportToCaret(int caretIndex = 0);Прокручивает область, чтобы показать указанный курсор, не меняя его позицию. После изменения текста/размеров используйте актуальную раскладку. В многокурсорном режиме выбирайте нужный индекс явно.
| Имя | Тип | По умолчанию |
|---|---|---|
caretIndex | int | 0 |
caretIndexТекущий индекс конкретного курсора, 0 — основной.
ApplyImevoid
public void ApplyIme();Применяет текущую IME-композицию через путь вставки и закрывает её. Не сохраняет документ в файл. Вызывайте из согласованного редактируемого контекста, не используйте для обычной программной вставки строки.
Backspacevoid
public void Backspace(int caretIndex = -1);Запускает путь удаления перед курсором. Стандартная реализация требует Editable; у начала строки соединяет строки, у начала документа ничего не удаляет. Если в целевом наборе есть выделение, удаляет выделения и не удаляет символы у прочих курсоров без выделения. По умолчанию действует на все подходящие курсоры. Переопределённый _Backspace полностью заменяет стандартный путь.
| Имя | Тип | По умолчанию |
|---|---|---|
caretIndex | int | -1 |
caretIndexИндекс курсора; у Backspace -1 обрабатывает весь подходящий набор.
BeginComplexOperationvoid
public void BeginComplexOperation();Начинает группу изменений для одного Undo. Допускает вложенные группы; завершайте каждый Begin через EndComplexOperation в finally. Не является транзакцией модели и не откладывает все сигналы до конца группы.
BeginMulticaretEditvoid
public void BeginMulticaretEdit();Начинает область безопасной обработки нескольких курсоров: объединение откладывается, новые курсоры могут помечаться игнорируемыми. Завершайте через EndMulticaretEdit в finally; области могут вкладываться. Для группировки Undo отдельно используйте BeginComplexOperation: это разные механизмы.
CancelImevoid
public void CancelIme();Отменяет незавершённую IME-композицию и обновляет её представление. Не отменяет уже сохранённый Text и не заменяет Undo предыдущих правок.
CenterViewportToCaretvoid
public void CenterViewportToCaret(int caretIndex = 0);Центрирует область относительно указанного курсора в пределах прокрутки. Не создаёт выделение и не перемещает курсор.
| Имя | Тип | По умолчанию |
|---|---|---|
caretIndex | int | 0 |
caretIndexТекущий индекс конкретного курсора, 0 — основной.
Clearvoid
public void Clear();Очищает текст и испускает TextSet. Пустой документ сохраняет одну строку. При Editable = true и включённой истории операция отменяема; при Editable = false очищает историю. Не путайте с ClearUndoHistory, который сохраняет текст.
ClearUndoHistoryvoid
public void ClearUndoHistory();Удаляет Undo/Redo, сохраняя текущий текст. Также сбрасывает отметку GetSavedVersion. После загрузки документа при необходимости вызовите TagSavedVersion заново; очистка истории сама ничего не сохраняет на диск.
CollapseCaretsvoid
public void CollapseCarets(int fromLine, int fromColumn, int toLine, int toColumn, bool inclusive = false);Переносит курсоры и затронутые границы выделений внутри диапазона в исходную позицию fromLine/fromColumn. При обратном порядке границы диапазона нормализуются, но цель остаётся исходным from. inclusive включает оба края; по умолчанию оба исключены. Полностью попавшее внутрь выделение снимается, частичное сокращается; совпадающие курсоры объединяются. В области multicaret-edit объединение может откладываться. Текст и история Undo не меняются.
| Имя | Тип | По умолчанию |
|---|---|---|
fromLine | int | — |
fromColumn | int | — |
toLine | int | — |
toColumn | int | — |
inclusive | bool | false |
fromLineИсходная логическая строка цели схлопывания; также первая граница диапазона.
fromColumnИсходная колонка цели в кодовых точках Unicode; сохраняется как цель и при обратном диапазоне.
toLineЛогическая строка второй границы диапазона.
toColumnКолонка второй границы в кодовых точках Unicode.
inclusiveВключить обе границы; false исключает обе.
Copyvoid
public void Copy(int caretIndex = -1);В стандартной реализации копирует выделенный текст в системный буфер, не меняя документ. При caretIndex = -1 выделения объединяются переводами строк в порядке документа. Если выделений нет, EmptySelectionClipboardEnabled разрешает копирование полных строк с завершающим переводом строки; несколько курсоров одной строки не дублируют её. При отключённой настройке и отсутствии выделения буфер не меняется. Работает и при Editable = false. Переопределение _Copy заменяет стандартное поведение.
| Имя | Тип | По умолчанию |
|---|---|---|
caretIndex | int | -1 |
caretIndexИндекс существующего курсора; -1 — все.
Cutvoid
public void Cut(int caretIndex = -1);В стандартной реализации сначала копирует текст, затем при Editable удаляет выделение или полные строки, если разрешён EmptySelectionClipboardEnabled. При Editable = false документ не меняется, но копирование всё равно возможно. Undo восстанавливает документ, а не прежнее содержимое системного буфера. Встроенное копирование внутри Cut не вызывает пользовательский _Copy; для изменения всего действия переопределите _Cut.
| Имя | Тип | По умолчанию |
|---|---|---|
caretIndex | int | -1 |
caretIndexИндекс существующего курсора; -1 — все.
DeleteSelectionvoid
public void DeleteSelection(int caretIndex = -1);Удаляет выделенный текст и сворачивает затронутые выделения. По умолчанию обрабатывает все подходящие курсоры и объединяет удаление в один шаг Undo. Конкретный caretIndex ограничивает операцию одним курсором. Программный вызов работает независимо от Editable.
| Имя | Тип | По умолчанию |
|---|---|---|
caretIndex | int | -1 |
caretIndexТекущий индекс курсора; -1 разрешён только методами, явно описывающими обработку всех курсоров.
Deselectvoid
public void Deselect(int caretIndex = -1);Снимает выделение, сохраняя позиции курсоров и текст. caretIndex = -1 действует на все курсоры; конкретный индекс — только на один. Не удаляет вторичные курсоры.
| Имя | Тип | По умолчанию |
|---|---|---|
caretIndex | int | -1 |
caretIndexТекущий индекс курсора; -1 разрешён только методами, явно описывающими обработку всех курсоров.
EndActionvoid
public void EndAction();Отмечает границу текущего действия StartAction; это не Undo, не отмена изменений и не немедленный сброс текста. Завершение группы может обрабатываться при следующем действии. Для явного переключения группы используйте StartAction с новым типом или None.
EndComplexOperationvoid
public void EndComplexOperation();Завершает уровень группы отмены. Внешняя завершённая группа объединяет вложенные изменения в один шаг истории. Вызывайте в finally для парного BeginComplexOperation.
EndMulticaretEditvoid
public void EndMulticaretEdit();Завершает уровень многокурсорной операции. При выходе из внешней области выполняет ожидающее объединение и очищает игнорируемые индексы. Не заменяет EndComplexOperation для истории Undo.
GetAutowrapModeTextServer.AutowrapMode
public TextServer.AutowrapMode GetAutowrapMode();Правило визуального переноса при WrapMode.Boundary: Arbitrary — по границам графем, Word — по словам, WordSmart — с разбиением слишком длинного слова, Off — без мягких переносов. Само по себе не включает Boundary.
TextServer.AutowrapModeПравило визуального переноса при WrapMode.Boundary: Arbitrary — по границам графем, Word — по словам, WordSmart — с разбиением слишком длинного слова, Off — без мягких переносов. Само по себе не включает Boundary.
GetCaretBlinkIntervalfloat
public float GetCaretBlinkInterval();Положительный интервал переключения видимости каретки в секундах. Например, 0.5 означает переключение каждые полсекунды; полный цикл видимая/скрытая занимает два интервала. Значение 0 не отключает мигание: используйте CaretBlink = false. Это не задержка повтора ввода.
floatПоложительный интервал переключения видимости каретки в секундах. Например, 0.5 означает переключение каждые полсекунды; полный цикл видимая/скрытая занимает два интервала. Значение 0 не отключает мигание: используйте CaretBlink = false. Это не задержка повтора ввода.
GetCaretColumnint
public int GetCaretColumn(int caretIndex = 0);Колонка активного конца в кодовых точках Unicode. Это не пиксельная позиция, не UTF-16-индекс и не гарантированная граница одного видимого символа.
| Имя | Тип | По умолчанию |
|---|---|---|
caretIndex | int | 0 |
caretIndexТекущий индекс курсора; -1 разрешён только методами, явно описывающими обработку всех курсоров.
intКолонка активного конца в кодовых точках Unicode. Это не пиксельная позиция, не UTF-16-индекс и не гарантированная граница одного видимого символа.
GetCaretCountint
public int GetCaretCount();Число пользовательских курсоров, минимум 1. Временный курсор перетаскивания не включается. Индексы действительны только для текущего набора и могут меняться при объединении/удалении.
intЧисло пользовательских курсоров, минимум 1. Временный курсор перетаскивания не включается. Индексы действительны только для текущего набора и могут меняться при объединении/удалении.
GetCaretDrawPosVector2
public Vector2 GetCaretDrawPos(int caretIndex = 0);Последняя вычисленная локальная позиция рисования курсора. Зависит от актуального кадра и раскладки; не заменяет GetCaretLine/GetCaretColumn для хранения позиции в документе.
| Имя | Тип | По умолчанию |
|---|---|---|
caretIndex | int | 0 |
caretIndexТекущий индекс конкретного курсора, 0 — основной.
Vector2Последняя вычисленная локальная позиция рисования курсора. Зависит от актуального кадра и раскладки; не заменяет GetCaretLine/GetCaretColumn для хранения позиции в документе.
GetCaretIndexEditOrderint[] · Устарело
public int[] GetCaretIndexEditOrder();Устаревший обратный порядок индексов. Новый API сам корректирует курсоры; при необходимости сортировки используйте GetSortedCarets, не полагайтесь на старый порядок ручного редактирования.
int[]Устаревший обратный порядок индексов. Новый API сам корректирует курсоры; при необходимости сортировки используйте GetSortedCarets, не полагайтесь на старый порядок ручного редактирования.
GetCaretLineint
public int GetCaretLine(int caretIndex = 0);Логическая строка активного конца указанного курсора, не строка якоря или номер визуального переноса.
| Имя | Тип | По умолчанию |
|---|---|---|
caretIndex | int | 0 |
caretIndexТекущий индекс курсора; -1 разрешён только методами, явно описывающими обработку всех курсоров.
intЛогическая строка активного конца указанного курсора, не строка якоря или номер визуального переноса.
GetCaretTypeTextEdit.CaretTypeEnum
public TextEdit.CaretTypeEnum GetCaretType();Форма текстовой каретки: Line или Block. Block меняет отрисовку, но не включает замену символов: режим перезаписи задаётся отдельно через OvertypeMode. Не меняет текст и позиции курсоров.
TextEdit.CaretTypeEnumФорма текстовой каретки: Line или Block. Block меняет отрисовку, но не включает замену символов: режим перезаписи задаётся отдельно через OvertypeMode. Не меняет текст и позиции курсоров.
GetCaretWrapIndexint
public int GetCaretWrapIndex(int caretIndex = 0);Визуальная часть текущей логической строки, в которой находится указанный курсор. Не меняет индекс курсора или строку документа.
| Имя | Тип | По умолчанию |
|---|---|---|
caretIndex | int | 0 |
caretIndexТекущий индекс конкретного курсора, 0 — основной.
intВизуальная часть текущей логической строки, в которой находится указанный курсор. Не меняет индекс курсора или строку документа.
GetCustomWordSeparatorsstring
public string GetCustomWordSeparators();Дополнительные символы границ слов для текстовой системы редактора. Само назначение строки не включает их: используйте UseCustomWordSeparators. Не является regex и не меняет фиксированные проверки границ WholeWords в Search.
stringДополнительные символы границ слов для текстовой системы редактора. Само назначение строки не включает их: используйте UseCustomWordSeparators. Не является regex и не меняет фиксированные проверки границ WholeWords в Search.
GetDrawControlCharsbool
public bool GetDrawControlChars();Разрешает отображение управляющих символов текстовой системой. Не удаляет их из документа и не служит очисткой/проверкой безопасности входного текста.
boolРазрешает отображение управляющих символов текстовой системой. Не удаляет их из документа и не служит очисткой/проверкой безопасности входного текста.
GetFirstNonWhiteSpaceColumnint
public int GetFirstNonWhiteSpaceColumn(int line);Колонка первого непробельного символа в кодовых точках Unicode. Tab занимает одну колонку, хотя визуальный отступ может быть шире. Для полностью пробельной строки возвращает её длину.
| Имя | Тип | По умолчанию |
|---|---|---|
line | int | — |
lineИндекс логической строки от 0 до GetLineCount() - 1.
intКолонка первого непробельного символа в кодовых точках Unicode. Tab занимает одну колонку, хотя визуальный отступ может быть шире. Для полностью пробельной строки возвращает её длину.
GetFirstVisibleLineint
public int GetFirstVisibleLine();Логический номер верхней строки области. При прокрутке внутрь длинной строки её первый визуальный фрагмент может быть уже выше области; getter не возвращает wrapIndex.
intЛогический номер верхней строки области. При прокрутке внутрь длинной строки её первый визуальный фрагмент может быть уже выше области; getter не возвращает wrapIndex.
GetGutterCountint
public int GetGutterCount();Число определений полей, включая скрытые. Для отсутствия полей проверяйте этот счётчик, а не равенство GetTotalGutterWidth нулю.
intЧисло определений полей, включая скрытые. Для отсутствия полей проверяйте этот счётчик, а не равенство GetTotalGutterWidth нулю.
GetGutterNamestring
public string GetGutterName(int gutter);Сохранённое имя определения поля. Это не подпись конкретной строки и не гарантированно уникальный ID.
| Имя | Тип | По умолчанию |
|---|---|---|
gutter | int | — |
gutterТекущий индекс поля от 0 до GetGutterCount() - 1.
stringСохранённое имя определения поля. Это не подпись конкретной строки и не гарантированно уникальный ID.
GetGutterTypeTextEdit.GutterType
public TextEdit.GutterType GetGutterType(int gutter);Режим отображения поля; по умолчанию String. Не сообщает, заполнены ли данные отдельных строк.
| Имя | Тип | По умолчанию |
|---|---|---|
gutter | int | — |
gutterТекущий индекс поля от 0 до GetGutterCount() - 1.
TextEdit.GutterTypeРежим отображения поля; по умолчанию String. Не сообщает, заполнены ли данные отдельных строк.
GetGutterWidthint
public int GetGutterWidth(int gutter);Сохранённая ширина отдельного поля, без общего отступа. Скрытие поля не обнуляет это значение.
| Имя | Тип | По умолчанию |
|---|---|---|
gutter | int | — |
gutterТекущий индекс поля от 0 до GetGutterCount() - 1.
intСохранённая ширина отдельного поля, без общего отступа. Скрытие поля не обнуляет это значение.
GetHScrollint
public int GetHScroll();Горизонтальное смещение в пикселях. Ограничивается диапазоном внутренней полосы прокрутки; при переносе доступное горизонтальное смещение может исчезнуть. Это не номер колонки текста.
intГоризонтальное смещение в пикселях. Ограничивается диапазоном внутренней полосы прокрутки; при переносе доступное горизонтальное смещение может исчезнуть. Это не номер колонки текста.
GetHScrollBarHScrollBar
public HScrollBar GetHScrollBar();Внутренняя HScrollBar, принадлежащая TextEdit. Не освобождайте и не переносите её отдельно; удаление редактора удаляет полосу. Для обычной прокрутки используйте ScrollHorizontal.
HScrollBarВнутренняя HScrollBar, принадлежащая TextEdit. Не освобождайте и не переносите её отдельно; удаление редактора удаляет полосу. Для обычной прокрутки используйте ScrollHorizontal.
GetIndentLevelint
public int GetIndentLevel(int line);Величина начального отступа: число tab умножается на GetTabSize, затем прибавляются начальные пробелы. Это не колонка первого символа и не уровень вложенности синтаксического дерева.
| Имя | Тип | По умолчанию |
|---|---|---|
line | int | — |
lineИндекс логической строки от 0 до GetLineCount() - 1.
intВеличина начального отступа: число tab умножается на GetTabSize, затем прибавляются начальные пробелы. Это не колонка первого символа и не уровень вложенности синтаксического дерева.
GetLanguagestring
public string GetLanguage();Языковая подсказка формирования текста, например ar; пустая строка использует локаль. Не переводит документ и не переключает язык приложения. Меняет правила формирования/выбора глифов, сохраняя Text.
stringЯзыковая подсказка формирования текста, например ar; пустая строка использует локаль. Не переводит документ и не переключает язык приложения. Меняет правила формирования/выбора глифов, сохраняя Text.
GetLastFullVisibleLineint
public int GetLastFullVisibleLine();Логический номер нижней полностью помещающейся визуальной строки. Чтобы различать части перенесённой строки, дополнительно читайте GetLastFullVisibleLineWrapIndex.
intЛогический номер нижней полностью помещающейся визуальной строки. Чтобы различать части перенесённой строки, дополнительно читайте GetLastFullVisibleLineWrapIndex.
GetLastFullVisibleLineWrapIndexint
public int GetLastFullVisibleLineWrapIndex();Индекс нижнего полностью помещающегося визуального фрагмента в строке GetLastFullVisibleLine. Это не самостоятельный номер строки документа.
intИндекс нижнего полностью помещающегося визуального фрагмента в строке GetLastFullVisibleLine. Это не самостоятельный номер строки документа.
public int GetLastUnhiddenLine();Возвращает индекс последней логической строки, не скрытой системой сворачивания производного редактора. В обычном TextEdit без скрытия это GetLineCount() - 1. Не означает последнюю строку в текущей области прокрутки; для неё используйте методы viewport. Пустой документ имеет строку 0.
intВозвращает индекс последней логической строки, не скрытой системой сворачивания производного редактора. В обычном TextEdit без скрытия это GetLineCount() - 1. Не означает последнюю строку в текущей области прокрутки; для неё используйте методы viewport. Пустой документ имеет строку 0.
GetLinestring
public string GetLine(int line);Текст логической строки без разделителя \n. Индекс начинается с 0. Для недействительного индекса возвращается пустая строка, поэтому сначала проверяйте GetLineCount, если нужно отличить ошибку от пустой строки документа.
| Имя | Тип | По умолчанию |
|---|---|---|
line | int | — |
lineИндекс логической строки от 0 до GetLineCount() - 1.
stringТекст логической строки без разделителя \n. Индекс начинается с 0. Для недействительного индекса возвращается пустая строка, поэтому сначала проверяйте GetLineCount, если нужно отличить ошибку от пустой строки документа.
GetLineBackgroundColorColor
public Color GetLineBackgroundColor(int line);Сохранённый дополнительный цвет фона логической строки, не окончательный цвет с учётом темы и выделения.
| Имя | Тип | По умолчанию |
|---|---|---|
line | int | — |
lineИндекс логической строки от 0 до GetLineCount() - 1.
ColorСохранённый дополнительный цвет фона логической строки, не окончательный цвет с учётом темы и выделения.
GetLineColumnAtPos2 перегрузки
public Vector2I GetLineColumnAtPos(Vector2I position, bool allowOutOfBounds);Преобразует локальную позицию TextEdit в Vector2I: X — колонка в кодовых точках Unicode, Y — логическая строка. clampLine/clampColumn управляют ограничением по текстовой раскладке; при отсутствии позиции возможен (-1, -1). Это не универсальная проверка попадания внутрь контрола: сначала проверяйте его локальную область. У старой перегрузки allowOutOfBounds фактически передаётся как clampLine, а clampColumn всегда true. Для ясности вызывайте перегрузку с тремя аргументами.
| Имя | Тип | По умолчанию |
|---|---|---|
position | Vector2I | — |
allowOutOfBounds | bool | — |
positionЛокальная пиксельная позиция контрола, не экранная координата.
allowOutOfBoundsИсторическое имя: фактически clampLine; clampColumn в этой перегрузке всегда true.
Vector2IПреобразует локальную позицию TextEdit в Vector2I: X — колонка в кодовых точках Unicode, Y — логическая строка. clampLine/clampColumn управляют ограничением по текстовой раскладке; при отсутствии позиции возможен (-1, -1). Это не универсальная проверка попадания внутрь контрола: сначала проверяйте его локальную область. У старой перегрузки allowOutOfBounds фактически передаётся как clampLine, а clampColumn всегда true. Для ясности вызывайте перегрузку с тремя аргументами.
public Vector2I GetLineColumnAtPos(Vector2I position, bool clampLine = true, bool clampColumn = true);Преобразует локальную позицию TextEdit в Vector2I: X — колонка в кодовых точках Unicode, Y — логическая строка. clampLine/clampColumn управляют ограничением по текстовой раскладке; при отсутствии позиции возможен (-1, -1). Это не универсальная проверка попадания внутрь контрола: сначала проверяйте его локальную область. У старой перегрузки allowOutOfBounds фактически передаётся как clampLine, а clampColumn всегда true. Для ясности вызывайте перегрузку с тремя аргументами.
| Имя | Тип | По умолчанию |
|---|---|---|
position | Vector2I | — |
clampLine | bool | true |
clampColumn | bool | true |
positionЛокальная пиксельная позиция контрола, не экранная координата.
clampLineОграничивать результат по строкам текстовой раскладки.
clampColumnОграничивать результат по ширине текста строки.
Vector2IПреобразует локальную позицию TextEdit в Vector2I: X — колонка в кодовых точках Unicode, Y — логическая строка. clampLine/clampColumn управляют ограничением по текстовой раскладке; при отсутствии позиции возможен (-1, -1). Это не универсальная проверка попадания внутрь контрола: сначала проверяйте его локальную область. У старой перегрузки allowOutOfBounds фактически передаётся как clampLine, а clampColumn всегда true. Для ясности вызывайте перегрузку с тремя аргументами.
GetLineCountint
public int GetLineCount();Число логических строк, включая пустые; у пустого документа 1. Визуальные переносы длинной строки не добавляют логических строк.
intЧисло логических строк, включая пустые; у пустого документа 1. Визуальные переносы длинной строки не добавляют логических строк.
GetLineGutterIconTexture2D
public Texture2D GetLineGutterIcon(int line, int gutter);Общий ресурс иконки ячейки или null. Это не копия текстуры и не гарантия, что поле сейчас показывает иконку.
| Имя | Тип | По умолчанию |
|---|---|---|
line | int | — |
gutter | int | — |
lineИндекс логической строки от 0 до GetLineCount() - 1.
gutterТекущий индекс поля от 0 до GetGutterCount() - 1.
Texture2DОбщий ресурс иконки ячейки или null. Это не копия текстуры и не гарантия, что поле сейчас показывает иконку.
GetLineGutterItemColorColor
public Color GetLineGutterItemColor(int line, int gutter);Сохранённый цвет текста/иконки ячейки. Не возвращает фон строки или цвет текста основного документа.
| Имя | Тип | По умолчанию |
|---|---|---|
line | int | — |
gutter | int | — |
lineИндекс логической строки от 0 до GetLineCount() - 1.
gutterТекущий индекс поля от 0 до GetGutterCount() - 1.
ColorСохранённый цвет текста/иконки ячейки. Не возвращает фон строки или цвет текста основного документа.
GetLineGutterMetadataVariant
public Variant GetLineGutterMetadata(int line, int gutter);Возвращает сохранённый Variant. Контейнеры остаются общими с исходным значением. Освобождайте C#-обёртку Variant после использования; это не удаляет поле или запись модели.
| Имя | Тип | По умолчанию |
|---|---|---|
line | int | — |
gutter | int | — |
lineИндекс логической строки от 0 до GetLineCount() - 1.
gutterТекущий индекс поля от 0 до GetGutterCount() - 1.
VariantВозвращает сохранённый Variant. Контейнеры остаются общими с исходным значением. Освобождайте C#-обёртку Variant после использования; это не удаляет поле или запись модели.
GetLineGutterTextstring
public string GetLineGutterText(int line, int gutter);Сохранённая подпись ячейки поля. Сохраняется и при другом GutterType или скрытом поле.
| Имя | Тип | По умолчанию |
|---|---|---|
line | int | — |
gutter | int | — |
lineИндекс логической строки от 0 до GetLineCount() - 1.
gutterТекущий индекс поля от 0 до GetGutterCount() - 1.
stringСохранённая подпись ячейки поля. Сохраняется и при другом GutterType или скрытом поле.
GetLineHeightint
public int GetLineHeight();Высота визуальной строки в пикселях с учётом интервала темы, не меньше 1. Не равна обязательно размеру шрифта и не является числом логических строк.
intВысота визуальной строки в пикселях с учётом интервала темы, не меньше 1. Не равна обязательно размеру шрифта и не является числом логических строк.
GetLineRangesFromCaretsReckfell.Collections.Array<Vector2I>
public Reckfell.Collections.Array<Vector2I> GetLineRangesFromCarets(bool onlySelections = false, bool mergeAdjacent = true);Новый массив Vector2I диапазонов логических строк: X — первая, Y — последняя включённая строка. onlySelections исключает курсоры без выделения; mergeAdjacent объединяет соседние диапазоны. Если выделение заканчивается в колонке 0, эта конечная строка не входит в диапазон.
| Имя | Тип | По умолчанию |
|---|---|---|
onlySelections | bool | false |
mergeAdjacent | bool | true |
onlySelectionsУчитывать только курсоры с активным выделением.
mergeAdjacentОбъединять соседние диапазоны логических строк.
Reckfell.Collections.Array<Vector2I>Новый массив Vector2I диапазонов логических строк: X — первая, Y — последняя включённая строка. onlySelections исключает курсоры без выделения; mergeAdjacent объединяет соседние диапазоны. Если выделение заканчивается в колонке 0, эта конечная строка не входит в диапазон.
GetLineWidthint
public int GetLineWidth(int line, int wrapIndex = -1);Ширина сформированного текста в пикселях. wrapIndex = -1 запрашивает размер буфера строки, иначе конкретную визуальную часть. При включённых переносах это не ширина всего текста в воображаемой неперенесённой строке.
| Имя | Тип | По умолчанию |
|---|---|---|
line | int | — |
wrapIndex | int | -1 |
lineИндекс логической строки от 0 до GetLineCount() - 1.
wrapIndexИндекс визуальной части; у GetLineWidth -1 выбирает буфер строки.
intШирина сформированного текста в пикселях. wrapIndex = -1 запрашивает размер буфера строки, иначе конкретную визуальную часть. При включённых переносах это не ширина всего текста в воображаемой неперенесённой строке.
GetLineWithImestring
public string GetLineWithIme(int line);Строка представления с временной IME-композицией, если она действует на эту строку. Без композиции совпадает с GetLine. Для сохранения используйте Text/GetLine, чтобы не записать незавершённый ввод как окончательный.
| Имя | Тип | По умолчанию |
|---|---|---|
line | int | — |
lineИндекс логической строки от 0 до GetLineCount() - 1.
stringСтрока представления с временной IME-композицией, если она действует на эту строку. Без композиции совпадает с GetLine. Для сохранения используйте Text/GetLine, чтобы не записать незавершённый ввод как окончательный.
GetLineWrapCountint
public int GetLineWrapCount(int line);Число дополнительных визуальных переносов строки. 0 означает одну визуальную часть; общее число частей равно Count + 1. Это не GetLineCount документа.
| Имя | Тип | По умолчанию |
|---|---|---|
line | int | — |
lineИндекс логической строки от 0 до GetLineCount() - 1.
intЧисло дополнительных визуальных переносов строки. 0 означает одну визуальную часть; общее число частей равно Count + 1. Это не GetLineCount документа.
GetLineWrapIndexAtColumnint
public int GetLineWrapIndexAtColumn(int line, int column);Индекс визуальной части, содержащей колонку логической строки. Колонка — кодовая точка Unicode, допустим и конец строки. Без переноса результат 0; это не номер строки документа.
| Имя | Тип | По умолчанию |
|---|---|---|
line | int | — |
column | int | — |
lineИндекс логической строки от 0 до GetLineCount() - 1.
columnКолонка в кодовых точках Unicode, включая допустимый конец строки.
intИндекс визуальной части, содержащей колонку логической строки. Колонка — кодовая точка Unicode, допустим и конец строки. Без переноса результат 0; это не номер строки документа.
GetLineWrappedTextstring[]
public string[] GetLineWrappedText(int line);Новый массив визуальных частей одной логической строки; без переноса содержит один элемент. Может учитывать временный IME-текст. Не используйте для сохранения документа — читайте Text. Изменение массива не меняет редактор.
| Имя | Тип | По умолчанию |
|---|---|---|
line | int | — |
lineИндекс логической строки от 0 до GetLineCount() - 1.
string[]Новый массив визуальных частей одной логической строки; без переноса содержит один элемент. Может учитывать временный IME-текст. Не используйте для сохранения документа — читайте Text. Изменение массива не меняет редактор.
GetLineWrappingModeTextEdit.LineWrappingMode
public TextEdit.LineWrappingMode GetLineWrappingMode();None отключает визуальные переносы, Boundary ограничивает строку доступной шириной контрола. Места переноса задаёт AutowrapMode. Не вставляет переводы строк и не меняет GetLineCount; ширина зависит также от полей, полосы прокрутки, темы и миникарты.
TextEdit.LineWrappingModeNone отключает визуальные переносы, Boundary ограничивает строку доступной шириной контрола. Места переноса задаёт AutowrapMode. Не вставляет переводы строк и не меняет GetLineCount; ширина зависит также от полей, полосы прокрутки, темы и миникарты.
GetLocalMousePosVector2
public Vector2 GetLocalMousePos();Возвращает позицию мыши в координатах TextEdit с зеркальным X при RTL-разметке: Width - X. Это не глобальная позиция экрана и не координаты текста в строках/колонках. Отличается от обычного GetLocalMousePosition при RTL.
Vector2Возвращает позицию мыши в координатах TextEdit с зеркальным X при RTL-разметке: Width - X. Это не глобальная позиция экрана и не координаты текста в строках/колонках. Отличается от обычного GetLocalMousePosition при RTL.
GetMenuPopupMenu
public PopupMenu GetMenu();Возвращает встроенный PopupMenu, создавая его при первом обращении, но не открывая. Повторные вызовы возвращают тот же объект. Меню принадлежит TextEdit и удаляется вместе с ним: не вызывайте Free или Dispose для заимствованного объекта. Идентификаторы встроенных команд задаёт MenuItems; после своих пунктов проверяйте собственные ID.
PopupMenuВозвращает встроенный PopupMenu, создавая его при первом обращении, но не открывая. Повторные вызовы возвращают тот же объект. Меню принадлежит TextEdit и удаляется вместе с ним: не вызывайте Free или Dispose для заимствованного объекта. Идентификаторы встроенных команд задаёт MenuItems; после своих пунктов проверяйте собственные ID.
GetMinimapLineAtPosint
public int GetMinimapLineAtPos(Vector2I position);По локальной вертикальной позиции вычисляет логическую строку мини-карты с учётом прокрутки, переносов и скрытия. Результат ограничивается диапазоном строк документа. Метод не проверяет X и не возвращает -1 только потому, что точка вне области мини-карты: сначала проверьте её прямоугольник.
| Имя | Тип | По умолчанию |
|---|---|---|
position | Vector2I | — |
positionЛокальная позиция элемента в пикселях; для мини-карты используется Y без проверки X.
intПо локальной вертикальной позиции вычисляет логическую строку мини-карты с учётом прокрутки, переносов и скрытия. Результат ограничивается диапазоном строк документа. Метод не проверяет X и не возвращает -1 только потому, что точка вне области мини-карты: сначала проверьте её прямоугольник.
GetMinimapVisibleLinesint
public int GetMinimapVisibleLines();Возвращает вместимость мини-карты по высоте: доступная высота делится на высоту строки мини-карты с интервалом. Это не число строк документа и не количество строк, реально заполненных текстом. Для логических строк используйте GetLineCount.
intВозвращает вместимость мини-карты по высоте: доступная высота делится на высоту строки мини-карты с интервалом. Это не число строк документа и не количество строк, реально заполненных текстом. Для логических строк используйте GetLineCount.
GetMinimapWidthint
public int GetMinimapWidth();Ширина области мини-карты в пикселях элемента управления. Используйте неотрицательное значение, оставляя место для основного текста. Это не масштаб шрифта мини-карты. Изменение пересчитывает доступную ширину переноса; для отключения используйте MinimapDraw = false.
intШирина области мини-карты в пикселях элемента управления. Используйте неотрицательное значение, оставляя место для основного текста. Это не масштаб шрифта мини-карты. Изменение пересчитывает доступную ширину переноса; для отключения используйте MinimapDraw = false.
GetNextCompositeCharacterColumnint
public int GetNextCompositeCharacterColumn(int line, int column);Следующая граница составного символа по сформированному тексту TextServer. Вход и результат — колонки в кодовых точках Unicode, не UTF-16-индексы. На конце строки возвращает ту же конечную колонку. Для одного видимого составного символа шаг может быть больше 1.
| Имя | Тип | По умолчанию |
|---|---|---|
line | int | — |
column | int | — |
lineИндекс логической строки от 0 до GetLineCount() - 1.
columnКолонка в кодовых точках Unicode, не UTF-16-индекс.
intСледующая граница составного символа по сформированному тексту TextServer. Вход и результат — колонки в кодовых точках Unicode, не UTF-16-индексы. На конце строки возвращает ту же конечную колонку. Для одного видимого составного символа шаг может быть больше 1.
GetNextVisibleLineIndexOffsetFromVector2I
public Vector2I GetNextVisibleLineIndexOffsetFrom(int line, int wrapIndex, int visibleAmount);Обход видимых строк с учётом переносов и скрытия. Vector2I.X — число пройденных логических строк с включением начальной, не абсолютный индекс; Y — индекс части переноса целевой строки. Знак visibleAmount задаёт направление. Для ненулевого обхода вычисляйте строку как line + X - 1 вниз или line - X + 1 вверх и проверяйте границы. Например, переход на вторую визуальную строку внутри той же логической возвращает (1, 1). При visibleAmount = 0 возвращает (0, 0).
| Имя | Тип | По умолчанию |
|---|---|---|
line | int | — |
wrapIndex | int | — |
visibleAmount | int | — |
lineСуществующая начальная логическая строка, индекс от 0.
wrapIndexИндекс части переноса начальной строки от 0 до GetLineWrapCount(line).
visibleAmountЧисло видимых строк с включением начальной; положительное — вниз, отрицательное — вверх. Для вычисления назначения используйте ненулевое значение.
Vector2IОбход видимых строк с учётом переносов и скрытия. Vector2I.X — число пройденных логических строк с включением начальной, не абсолютный индекс; Y — индекс части переноса целевой строки. Знак visibleAmount задаёт направление. Для ненулевого обхода вычисляйте строку как line + X - 1 вниз или line - X + 1 вверх и проверяйте границы. Например, переход на вторую визуальную строку внутри той же логической возвращает (1, 1). При visibleAmount = 0 возвращает (0, 0).
GetNextVisibleLineOffsetFromint
public int GetNextVisibleLineOffsetFrom(int line, int visibleAmount);Считает пройденные логические строки при обходе видимых строк, включая начальную; скрытые строки учитываются в результате, но не как видимые. Знак visibleAmount задаёт направление, результат неотрицательный. Это число строк, не индекс назначения и не число пикселей. Без системы скрытия возвращает Abs(visibleAmount), даже за пределами документа: проверяйте рассчитанный индекс. Для непустого обхода индекс назначения — line + result - 1 вниз или line - result + 1 вверх.
| Имя | Тип | По умолчанию |
|---|---|---|
line | int | — |
visibleAmount | int | — |
lineСуществующая начальная логическая строка, индекс от 0.
visibleAmountЧисло видимых строк с включением начальной; положительное — вниз, отрицательное — вверх. Для вычисления назначения используйте ненулевое значение.
intСчитает пройденные логические строки при обходе видимых строк, включая начальную; скрытые строки учитываются в результате, но не как видимые. Знак visibleAmount задаёт направление, результат неотрицательный. Это число строк, не индекс назначения и не число пикселей. Без системы скрытия возвращает Abs(visibleAmount), даже за пределами документа: проверяйте рассчитанный индекс. Для непустого обхода индекс назначения — line + result - 1 вниз или line - result + 1 вверх.
GetPlaceholderstring
public string GetPlaceholder();Подсказка пустого редактора, отдельно от Text. GetPlaceholder возвращает исходную строку; отображение использует перевод UI. Не участвует в сохранении, поиске документа или истории его содержимого.
stringПодсказка пустого редактора, отдельно от Text. GetPlaceholder возвращает исходную строку; отображение использует перевод UI. Не участвует в сохранении, поиске документа или истории его содержимого.
GetPosAtLineColumnVector2I
public Vector2I GetPosAtLineColumn(int line, int column);Локальная опорная точка символа: позиция GetRectAtLineColumn плюс (0, GetLineHeight()). Это нижняя точка, не верхний левый угол прямоугольника. Наследует зависимость от кэша рисования и возвращает (-1, -1), если позиция недоступна.
| Имя | Тип | По умолчанию |
|---|---|---|
line | int | — |
column | int | — |
lineИндекс логической строки от 0 до GetLineCount() - 1.
columnКолонка в кодовых точках Unicode, включая допустимый конец строки.
Vector2IЛокальная опорная точка символа: позиция GetRectAtLineColumn плюс (0, GetLineHeight()). Это нижняя точка, не верхний левый угол прямоугольника. Наследует зависимость от кэша рисования и возвращает (-1, -1), если позиция недоступна.
GetPreviousCompositeCharacterColumnint
public int GetPreviousCompositeCharacterColumn(int line, int column);Предыдущая граница составного символа в кодовых точках Unicode. В начале строки возвращает 0. Не вычитайте всегда 1 для пользовательского удаления: комбинируемые знаки могут образовывать общий символ.
| Имя | Тип | По умолчанию |
|---|---|---|
line | int | — |
column | int | — |
lineИндекс логической строки от 0 до GetLineCount() - 1.
columnКолонка в кодовых точках Unicode, не UTF-16-индекс.
intПредыдущая граница составного символа в кодовых точках Unicode. В начале строки возвращает 0. Не вычитайте всегда 1 для пользовательского удаления: комбинируемые знаки могут образовывать общий символ.
GetRectAtLineColumnRect2I
public Rect2I GetRectAtLineColumn(int line, int column);Прямоугольник символа/графемы в локальных координатах TextEdit по последнему кэшу рисования. Для недоступной/неотрисованной позиции возвращает (-1, -1, 0, 0); пустой документ — отдельный случай с пустым Rect2I в начале координат. Запрашивайте после раскладки/отрисовки, не используйте как постоянные координаты документа.
| Имя | Тип | По умолчанию |
|---|---|---|
line | int | — |
column | int | — |
lineИндекс логической строки от 0 до GetLineCount() - 1.
columnКолонка в кодовых точках Unicode, включая допустимый конец строки.
Rect2IПрямоугольник символа/графемы в локальных координатах TextEdit по последнему кэшу рисования. Для недоступной/неотрисованной позиции возвращает (-1, -1, 0, 0); пустой документ — отдельный случай с пустым Rect2I в начале координат. Запрашивайте после раскладки/отрисовки, не используйте как постоянные координаты документа.
GetSavedVersionuint
public uint GetSavedVersion();Последняя отметка TagSavedVersion; ClearUndoHistory её сбрасывает. Не подтверждает существование или актуальность файла на диске.
uintПоследняя отметка TagSavedVersion; ClearUndoHistory её сбрасывает. Не подтверждает существование или актуальность файла на диске.
GetScrollPosForLinedouble
public double GetScrollPosForLine(int line, int wrapIndex = 0);Вертикальная позиция логической строки и её wrapIndex в единицах визуальных строк. Без переносов и скрытия совпадает с номером строки. Результат можно передать SetVScroll, но он может ограничиться доступным диапазоном.
| Имя | Тип | По умолчанию |
|---|---|---|
line | int | — |
wrapIndex | int | 0 |
lineИндекс логической строки от 0 до GetLineCount() - 1.
wrapIndexИндекс визуальной части; у GetLineWidth -1 выбирает буфер строки.
doubleВертикальная позиция логической строки и её wrapIndex в единицах визуальных строк. Без переносов и скрытия совпадает с номером строки. Результат можно передать SetVScroll, но он может ограничиться доступным диапазоном.
GetSelectedTextstring
public string GetSelectedText(int caretIndex = -1);Текст выделения без изменения документа. При caretIndex = -1 объединяет непустые выделения в порядке документа через перевод строки; это не исходный непрерывный диапазон. Для сохранения отдельных фрагментов читайте каждый курсор явно. Без выделения возвращает пустую строку.
| Имя | Тип | По умолчанию |
|---|---|---|
caretIndex | int | -1 |
caretIndexТекущий индекс курсора; -1 разрешён только методами, явно описывающими обработку всех курсоров.
stringТекст выделения без изменения документа. При caretIndex = -1 объединяет непустые выделения в порядке документа через перевод строки; это не исходный непрерывный диапазон. Для сохранения отдельных фрагментов читайте каждый курсор явно. Без выделения возвращает пустую строку.
GetSelectionAtLineColumnint
public int GetSelectionAtLineColumn(int line, int column, bool includeEdges = true, bool onlySelections = true);Индекс первого курсора/выделения, содержащего позицию, либо -1. includeEdges управляет границами, onlySelections исключает курсоры без выделения. При пересечениях возвращается первый найденный индекс, не список всех совпадений.
| Имя | Тип | По умолчанию |
|---|---|---|
line | int | — |
column | int | — |
includeEdges | bool | true |
onlySelections | bool | true |
lineЛогическая строка с индексом от 0.
columnКолонка в кодовых точках Unicode, не UTF-16-индекс.
includeEdgesВключать границы проверяемого диапазона.
onlySelectionsУчитывать только курсоры с активным выделением.
intИндекс первого курсора/выделения, содержащего позицию, либо -1. includeEdges управляет границами, onlySelections исключает курсоры без выделения. При пересечениях возвращается первый найденный индекс, не список всех совпадений.
GetSelectionColumnint · Устарело
public int GetSelectionColumn(int caretIndex = 0);Устаревший alias GetSelectionOriginColumn. В новом коде явно выбирайте якорь Origin или нормализованное начало From.
| Имя | Тип | По умолчанию |
|---|---|---|
caretIndex | int | 0 |
caretIndexТекущий индекс курсора; -1 разрешён только методами, явно описывающими обработку всех курсоров.
intУстаревший alias GetSelectionOriginColumn. В новом коде явно выбирайте якорь Origin или нормализованное начало From.
GetSelectionFromColumnint
public int GetSelectionFromColumn(int caretIndex = 0);Колонка нормализованного начала, относящаяся к GetSelectionFromLine. Без выделения — колонка курсора. Кодовые точки Unicode, не UTF-16-индексы.
| Имя | Тип | По умолчанию |
|---|---|---|
caretIndex | int | 0 |
caretIndexТекущий индекс курсора; -1 разрешён только методами, явно описывающими обработку всех курсоров.
intКолонка нормализованного начала, относящаяся к GetSelectionFromLine. Без выделения — колонка курсора. Кодовые точки Unicode, не UTF-16-индексы.
GetSelectionFromLineint
public int GetSelectionFromLine(int caretIndex = 0);Меньшая граница активного выделения по порядку документа. Без выделения возвращает строку курсора. Не возвращает всегда строку якоря.
| Имя | Тип | По умолчанию |
|---|---|---|
caretIndex | int | 0 |
caretIndexТекущий индекс курсора; -1 разрешён только методами, явно описывающими обработку всех курсоров.
intМеньшая граница активного выделения по порядку документа. Без выделения возвращает строку курсора. Не возвращает всегда строку якоря.
GetSelectionLineint · Устарело
public int GetSelectionLine(int caretIndex = 0);Устаревший alias GetSelectionOriginLine, не нормализованное начало. В новом коде используйте Origin или GetSelectionFromLine согласно задаче.
| Имя | Тип | По умолчанию |
|---|---|---|
caretIndex | int | 0 |
caretIndexТекущий индекс курсора; -1 разрешён только методами, явно описывающими обработку всех курсоров.
intУстаревший alias GetSelectionOriginLine, не нормализованное начало. В новом коде используйте Origin или GetSelectionFromLine согласно задаче.
GetSelectionModeTextEdit.SelectionMode
public TextEdit.SelectionMode GetSelectionMode();Возвращает режим обработки выделения, например Pointer или Word. Это не проверка наличия выделенного текста: используйте HasSelection. Режим None сам по себе не означает отсутствие выделения.
TextEdit.SelectionModeВозвращает режим обработки выделения, например Pointer или Word. Это не проверка наличия выделенного текста: используйте HasSelection. Режим None сам по себе не означает отсутствие выделения.
GetSelectionOriginColumnint
public int GetSelectionOriginColumn(int caretIndex = 0);Колонка якоря в кодовых точках Unicode. При обратном выделении может находиться после активного курсора; для нормализованного начала используйте GetSelectionFromColumn.
| Имя | Тип | По умолчанию |
|---|---|---|
caretIndex | int | 0 |
caretIndexТекущий индекс курсора; -1 разрешён только методами, явно описывающими обработку всех курсоров.
intКолонка якоря в кодовых точках Unicode. При обратном выделении может находиться после активного курсора; для нормализованного начала используйте GetSelectionFromColumn.
GetSelectionOriginLineint
public int GetSelectionOriginLine(int caretIndex = 0);Строка якоря выделения указанного курсора. Это исходная сторона жеста, а не обязательно меньший номер строки. Перед использованием как границы активного выделения проверьте HasSelection.
| Имя | Тип | По умолчанию |
|---|---|---|
caretIndex | int | 0 |
caretIndexТекущий индекс курсора; -1 разрешён только методами, явно описывающими обработку всех курсоров.
intСтрока якоря выделения указанного курсора. Это исходная сторона жеста, а не обязательно меньший номер строки. Перед использованием как границы активного выделения проверьте HasSelection.
GetSelectionToColumnint
public int GetSelectionToColumn(int caretIndex = 0);Исключённая конечная колонка, относящаяся к GetSelectionToLine. Без выделения — колонка курсора. Не считайте её длиной выделения при нескольких строках.
| Имя | Тип | По умолчанию |
|---|---|---|
caretIndex | int | 0 |
caretIndexТекущий индекс курсора; -1 разрешён только методами, явно описывающими обработку всех курсоров.
intИсключённая конечная колонка, относящаяся к GetSelectionToLine. Без выделения — колонка курсора. Не считайте её длиной выделения при нескольких строках.
GetSelectionToLineint
public int GetSelectionToLine(int caretIndex = 0);Более поздняя граница активного выделения по порядку документа. Без выделения возвращает строку курсора. Конечная позиция выделенного текста исключается.
| Имя | Тип | По умолчанию |
|---|---|---|
caretIndex | int | 0 |
caretIndexТекущий индекс курсора; -1 разрешён только методами, явно описывающими обработку всех курсоров.
intБолее поздняя граница активного выделения по порядку документа. Без выделения возвращает строку курсора. Конечная позиция выделенного текста исключается.
GetSortedCaretsint[]
public int[] GetSortedCarets(bool includeIgnoredCarets = false);Новый массив индексов, упорядоченный по нормализованному началу выделения либо позиции курсора сверху вниз. Не меняет реальные индексы или порядок создания. По умолчанию исключает временно игнорируемые курсоры многокурсорной операции. Не храните массив после изменения состава курсоров.
| Имя | Тип | По умолчанию |
|---|---|---|
includeIgnoredCarets | bool | false |
includeIgnoredCaretsВключить временно игнорируемые индексы многокурсорной операции.
int[]Новый массив индексов, упорядоченный по нормализованному началу выделения либо позиции курсора сверху вниз. Не меняет реальные индексы или порядок создания. По умолчанию исключает временно игнорируемые курсоры многокурсорной операции. Не храните массив после изменения состава курсоров.
GetStructuredTextBidiOverrideTextServer.StructuredTextParser
public TextServer.StructuredTextParser GetStructuredTextBidiOverride();Parser структурированного текста для смешанного LTR/RTL: URI, путь, email, список и другие поддерживаемые режимы. Это управление порядком отображения разделителей, не преобразование документа в другую кодировку. Параметры parser задаются отдельно.
TextServer.StructuredTextParserParser структурированного текста для смешанного LTR/RTL: URI, путь, email, список и другие поддерживаемые режимы. Это управление порядком отображения разделителей, не преобразование документа в другую кодировку. Параметры parser задаются отдельно.
GetStructuredTextBidiOverrideOptionsReckfell.Collections.Array
public Reckfell.Collections.Array GetStructuredTextBidiOverrideOptions();Общий Array параметров BiDi-parser. Setter сравнивает содержимое и пропускает равное; простое назначение Duplicate с прежними значениями не отсоединяет старый массив. Изменение массива на месте не запускает пересчёт текста. Передавайте отдельный подготовленный массив и новый массив с изменённым содержимым при обновлении.
Reckfell.Collections.ArrayОбщий Array параметров BiDi-parser. Setter сравнивает содержимое и пропускает равное; простое назначение Duplicate с прежними значениями не отсоединяет старый массив. Изменение массива на месте не запускает пересчёт текста. Передавайте отдельный подготовленный массив и новый массив с изменённым содержимым при обновлении.
GetSyntaxHighlighterSyntaxHighlighter
public SyntaxHighlighter GetSyntaxHighlighter();Ресурс подсветки этого редактора; null отключает подсветку. Используйте отдельный экземпляр для каждого TextEdit: ресурс хранит только один контекст. Повторное присваивание того же ресурса пропускается и не заменяет ClearHighlightingCache/EmitChanged.
SyntaxHighlighterРесурс подсветки этого редактора; null отключает подсветку. Используйте отдельный экземпляр для каждого TextEdit: ресурс хранит только один контекст. Повторное присваивание того же ресурса пропускается и не заменяет ClearHighlightingCache/EmitChanged.
GetTabInputModebool
public bool GetTabInputMode();Управляет обработкой клавиши Tab редактором. Не преобразует уже сохранённые символы tab, не задаёт их ширину и не является режимом автоперевода отступов в пробелы.
boolУправляет обработкой клавиши Tab редактором. Не преобразует уже сохранённые символы tab, не задаёт их ширину и не является режимом автоперевода отступов в пробелы.
GetTabSizeint
public int GetTabSize();Сохранённая ширина табуляции для раскладки, не число символов tab в документе.
intСохранённая ширина табуляции для раскладки, не число символов tab в документе.
GetTextstring
public string GetText();Полный текст с разделителями строк \n. Присваивание заменяет документ, испускает TextSet без TextChanged и допускает Undo при включённой истории. Для загрузки нового документа затем явно очистите историю и отметьте сохранённую версию.
stringПолный текст с разделителями строк \n. Присваивание заменяет документ, испускает TextSet без TextChanged и допускает Undo при включённой истории. Для загрузки нового документа затем явно очистите историю и отметьте сохранённую версию.
GetTextDirectionControl.TextDirection
public Control.TextDirection GetTextDirection();Базовое направление письма: Inherited следует раскладке Control, Auto выбирает его по тексту, Ltr/Rtl задают явно. Не переводит и не разворачивает сохранённую строку Text. Порядок символов в документе остаётся логическим.
Control.TextDirectionБазовое направление письма: Inherited следует раскладке Control, Auto выбирает его по тексту, Ltr/Rtl задают явно. Не переводит и не разворачивает сохранённую строку Text. Порядок символов в документе остаётся логическим.
GetTotalGutterWidthint
public int GetTotalGutterWidth();Сумма ширин показанных полей плюс внутренний отступ. Ограничение текущей реализации: после скрытия или удаления всех ранее показанных полей может остаться отступ 2 пикселя. Для наличия полей используйте GetGutterCount; это не ширина одной колонки.
intСумма ширин показанных полей плюс внутренний отступ. Ограничение текущей реализации: после скрытия или удаления всех ранее показанных полей может остаться отступ 2 пикселя. Для наличия полей используйте GetGutterCount; это не ширина одной колонки.
GetTotalVisibleLineCountint
public int GetTotalVisibleLineCount();Общее число визуальных строк документа: логические строки плюс переносы, за вычетом скрытых строк при поддержке скрытия. Не ограничено текущей областью прокрутки.
intОбщее число визуальных строк документа: логические строки плюс переносы, за вычетом скрытых строк при поддержке скрытия. Не ограничено текущей областью прокрутки.
GetVScrolldouble
public double GetVScroll();Вертикальное смещение в единицах визуальных строк, допускающее дробную часть. Это не пиксели и не всегда логический номер строки: при переносах используйте GetScrollPosForLine. Getter возвращает фактическое ограниченное значение.
doubleВертикальное смещение в единицах визуальных строк, допускающее дробную часть. Это не пиксели и не всегда логический номер строки: при переносах используйте GetScrollPosForLine. Getter возвращает фактическое ограниченное значение.
GetVScrollBarVScrollBar
public VScrollBar GetVScrollBar();Внутренняя VScrollBar, принадлежащая TextEdit. Не освобождайте и не переносите её отдельно; удаление редактора удаляет полосу. Её значения — визуальные строки, не пиксели.
VScrollBarВнутренняя VScrollBar, принадлежащая TextEdit. Не освобождайте и не переносите её отдельно; удаление редактора удаляет полосу. Её значения — визуальные строки, не пиксели.
GetVScrollSpeedfloat
public float GetVScrollSpeed();Скорость плавной вертикальной прокрутки, не меньше 1. Не устанавливает текущее смещение и не является высотой строки или величиной горизонтального шага.
floatСкорость плавной вертикальной прокрутки, не меньше 1. Не устанавливает текущее смещение и не является высотой строки или величиной горизонтального шага.
GetVersionuint
public uint GetVersion();Идентификатор текущего состояния истории редактирования, не версия движка и не хеш текста. Undo может вернуть прежнее значение. Сравнивайте с GetSavedVersion в пределах текущего документа и истории.
uintИдентификатор текущего состояния истории редактирования, не версия движка и не хеш текста. Undo может вернуть прежнее значение. Сравнивайте с GetSavedVersion в пределах текущего документа и истории.
GetVirtualKeyboardShowOnFocusbool
public bool GetVirtualKeyboardShowOnFocus();Разрешает запрос экранной клавиатуры при получении фокуса. Нужны VirtualKeyboardEnabled, Editable и поддержка платформы. false отключает именно показ по фокусу, а не все другие способы открытия клавиатуры.
boolРазрешает запрос экранной клавиатуры при получении фокуса. Нужны VirtualKeyboardEnabled, Editable и поддержка платформы. false отключает именно показ по фокусу, а не все другие способы открытия клавиатуры.
GetVisibleLineCountint
public int GetVisibleLineCount();Число целых визуальных строк, помещающихся по высоте в контрол. Это вместимость области, а не число строк документа, которые сейчас отрисованы.
intЧисло целых визуальных строк, помещающихся по высоте в контрол. Это вместимость области, а не число строк документа, которые сейчас отрисованы.
GetVisibleLineCountInRangeint
public int GetVisibleLineCountInRange(int fromLine, int toLine);Число визуальных строк в диапазоне логических строк с обеими включёнными границами. Учитывает переносы/скрытие и нормализует обратный порядок аргументов. Не проверяет, сколько из них сейчас видно на экране.
| Имя | Тип | По умолчанию |
|---|---|---|
fromLine | int | — |
toLine | int | — |
fromLineВключённая граница диапазона логических строк.
toLineВключённая граница диапазона; обратный порядок допустим.
intЧисло визуальных строк в диапазоне логических строк с обеими включёнными границами. Учитывает переносы/скрытие и нормализует обратный порядок аргументов. Не проверяет, сколько из них сейчас видно на экране.
GetWordAtPosstring
public string GetWordAtPos(Vector2 position);Возвращает слово текстовой системы в локальной позиции элемента с учётом прокрутки и переносов. Не перемещает курсор и не создаёт выделение. Если позиция не попадает в текст или слово не найдено, возвращает пустую строку. Передавайте координаты элемента, а не экрана; правила слов не являются анализатором C#.
| Имя | Тип | По умолчанию |
|---|---|---|
position | Vector2 | — |
positionЛокальная позиция элемента в пикселях; для мини-карты используется Y без проверки X.
stringВозвращает слово текстовой системы в локальной позиции элемента с учётом прокрутки и переносов. Не перемещает курсор и не создаёт выделение. Если позиция не попадает в текст или слово не найдено, возвращает пустую строку. Передавайте координаты элемента, а не экрана; правила слов не являются анализатором C#.
GetWordUnderCaretstring
public string GetWordUnderCaret(int caretIndex = -1);Возвращает слово по границам TextServer около курсора. caretIndex = -1 может объединять слова нескольких курсоров переводами строк в порядке индексов, а не порядке документа. Для одного слова задайте индекс явно. Это не поиск Search и не анализ идентификаторов C# компилятором.
| Имя | Тип | По умолчанию |
|---|---|---|
caretIndex | int | -1 |
caretIndexИндекс курсора; -1 обрабатывает все курсоры.
stringВозвращает слово по границам TextServer около курсора. caretIndex = -1 может объединять слова нескольких курсоров переводами строк в порядке индексов, а не порядке документа. Для одного слова задайте индекс явно. Это не поиск Search и не анализ идентификаторов C# компилятором.
HasImeTextbool
public bool HasImeText();Есть ли временная IME-композиция. Это не проверка Editable, наличия подключённой клавиатуры или несохранённых правок документа.
boolЕсть ли временная IME-композиция. Это не проверка Editable, наличия подключённой клавиатуры или несохранённых правок документа.
HasRedobool
public bool HasRedo();Есть ли отменённая операция для повторения. Для исполнения Redo дополнительно требуется Editable = true.
boolЕсть ли отменённая операция для повторения. Для исполнения Redo дополнительно требуется Editable = true.
HasSelectionbool
public bool HasSelection(int caretIndex = -1);Есть ли активное выделение у курсора. По умолчанию caretIndex = -1 проверяет любой курсор, а 0 — только основной. Не означает, что текст документа изменился.
| Имя | Тип | По умолчанию |
|---|---|---|
caretIndex | int | -1 |
caretIndexТекущий индекс курсора; -1 разрешён только методами, явно описывающими обработку всех курсоров.
boolЕсть ли активное выделение у курсора. По умолчанию caretIndex = -1 проверяет любой курсор, а 0 — только основной. Не означает, что текст документа изменился.
HasUndobool
public bool HasUndo();Есть ли операция для отмены, включая ещё не завершённую текущую запись. Не означает разрешение Undo: Editable должен быть true.
boolЕсть ли операция для отмены, включая ещё не завершённую текущую запись. Не означает разрешение Undo: Editable должен быть true.
InsertLineAtvoid
public void InsertLineAt(int line, string text);Вставляет текст и перевод строки перед существующей логической строкой. line должен быть меньше GetLineCount; значение Count не служит командой добавления в конец. Вставляемый текст может содержать дополнительные переводы строк. Вся операция отменяется одним Undo.
| Имя | Тип | По умолчанию |
|---|---|---|
line | int | — |
text | string | — |
lineИндекс существующей логической строки от 0 до GetLineCount() - 1.
textВставляемый текст; переводы строк создают дополнительные логические строки.
InsertTextvoid
public void InsertText(string text, int line, int column, bool beforeSelectionBegin = true, bool beforeSelectionEnd = false);Вставляет текст в указанную позицию, не удаляя существующее выделение. Корректирует курсоры и границы выделений; флаги beforeSelectionBegin/End задают поведение при вставке ровно на границе. Операция отменяема и работает при Editable = false. Для замены выделения используйте InsertTextAtCaret.
| Имя | Тип | По умолчанию |
|---|---|---|
text | string | — |
line | int | — |
column | int | — |
beforeSelectionBegin | bool | true |
beforeSelectionEnd | bool | false |
textВставляемый текст; переводы строк создают дополнительные логические строки.
lineИндекс существующей логической строки от 0 до GetLineCount() - 1.
columnКолонка вставки в кодовых точках Unicode от 0 до длины строки.
beforeSelectionBeginПри вставке точно в начало true сдвигает начало за вставку, оставляя её вне выделения; false оставляет начало перед вставкой.
beforeSelectionEndПри вставке точно в конец true сдвигает конец за вставку, включая её; false оставляет конец перед вставкой.
InsertTextAtCaretvoid
public void InsertTextAtCaret(string text, int caretIndex = -1);Вставляет текст, заменяя выделение целевого курсора, и перемещает его к концу вставки. caretIndex = -1 обрабатывает все подходящие курсоры, 0 — основной. Программный вызов работает и при Editable = false. Для одной вставки в модель с несколькими курсорами задайте индекс явно.
| Имя | Тип | По умолчанию |
|---|---|---|
text | string | — |
caretIndex | int | -1 |
textВставляемый или назначаемый текст; \n создаёт логические строки.
caretIndex0 — основной курсор, -1 — все подходящие; иной индекс должен существовать.
IsBackspaceDeletesCompositeCharacterEnabledbool
public bool IsBackspaceDeletesCompositeCharacterEnabled();При true обычный Backspace удаляет составной символ до предыдущей границы; false — одну кодовую точку. CaretMidGrapheme = true имеет приоритет и также выбирает удаление одной точки. Не управляет RemoveText с явно заданным диапазоном.
boolПри true обычный Backspace удаляет составной символ до предыдущей границы; false — одну кодовую точку. CaretMidGrapheme = true имеет приоритет и также выбирает удаление одной точки. Не управляет RemoveText с явно заданным диапазоном.
IsCaretAfterSelectionOriginbool
public bool IsCaretAfterSelectionOrigin(int caretIndex = 0);Расположен ли активный курсор после якоря в порядке документа. Используйте для сохранения направления выделения; это не проверка наличия выделения.
| Имя | Тип | По умолчанию |
|---|---|---|
caretIndex | int | 0 |
caretIndexТекущий индекс курсора; -1 разрешён только методами, явно описывающими обработку всех курсоров.
boolРасположен ли активный курсор после якоря в порядке документа. Используйте для сохранения направления выделения; это не проверка наличия выделения.
IsCaretBlinkEnabledbool
public bool IsCaretBlinkEnabled();Включает мигание текстовой каретки. Таймер запускается при наличии фокуса; false отключает мигание, но не скрывает каретку. Видимость по-прежнему зависит от фокуса и других условий отрисовки. Интервал задаётся CaretBlinkInterval.
boolТекущее значение настройки CaretBlink; не подтверждает, что эффект виден в данном кадре.
IsCaretMidGraphemeEnabledbool
public bool IsCaretMidGraphemeEnabled();Разрешает курсору/удалению работать внутри составных символов. При true Backspace удаляет одну кодовую точку даже если BackspaceDeletesCompositeCharacterEnabled включён. Не означает работу с половинами UTF-16-суррогатной пары.
boolРазрешает курсору/удалению работать внутри составных символов. При true Backspace удаляет одну кодовую точку даже если BackspaceDeletesCompositeCharacterEnabled включён. Не означает работу с половинами UTF-16-суррогатной пары.
IsCaretVisiblebool
public bool IsCaretVisible(int caretIndex = 0);Сохранённый результат видимости курсора при отрисовке. Не равен наличию курсора, Editable или попаданию всей логической строки в область. До актуального рисования данные могут быть устаревшими.
| Имя | Тип | По умолчанию |
|---|---|---|
caretIndex | int | 0 |
caretIndexТекущий индекс конкретного курсора, 0 — основной.
boolСохранённый результат видимости курсора при отрисовке. Не равен наличию курсора, Editable или попаданию всей логической строки в область. До актуального рисования данные могут быть устаревшими.
IsContextMenuEnabledbool
public bool IsContextMenuEnabled();Разрешает пользователю открывать встроенное контекстное меню. false не удаляет PopupMenu и не запрещает программные GetMenu или MenuOption. Это настройка интерфейса, а не запрет редактирования; для ввода используйте Editable.
boolРазрешает пользователю открывать встроенное контекстное меню. false не удаляет PopupMenu и не запрещает программные GetMenu или MenuOption. Это настройка интерфейса, а не запрет редактирования; для ввода используйте Editable.
IsCustomWordSeparatorsEnabledbool
public bool IsCustomWordSeparatorsEnabled();Включает CustomWordSeparators для формирования границ слов. Настраивается независимо от UseDefaultWordSeparators; обе группы могут использоваться вместе. Не переключает режим WholeWords у Search.
boolВключает CustomWordSeparators для формирования границ слов. Настраивается независимо от UseDefaultWordSeparators; обе группы могут использоваться вместе. Не переключает режим WholeWords у Search.
IsDefaultWordSeparatorsEnabledbool
public bool IsDefaultWordSeparatorsEnabled();Включает стандартные разделители слов текстовой системы. Отключение не включает пользовательские автоматически: UseCustomWordSeparators задаётся отдельно. Не меняет проверки границ WholeWords в Search.
boolВключает стандартные разделители слов текстовой системы. Отключение не включает пользовательские автоматически: UseCustomWordSeparators задаётся отдельно. Не меняет проверки границ WholeWords в Search.
IsDeselectOnFocusLossEnabledbool
public bool IsDeselectOnFocusLossEnabled();Управляет снятием выделения при потере фокуса. false позволяет сохранять выделение, когда фокус получает другой элемент. Переключение false → true у редактора без фокуса сразу снимает существующее выделение. Не меняет текст и не передаёт фокус.
boolУправляет снятием выделения при потере фокуса. false позволяет сохранять выделение, когда фокус получает другой элемент. Переключение false → true у редактора без фокуса сразу снимает существующее выделение. Не меняет текст и не передаёт фокус.
IsDragAndDropSelectionEnabledbool
public bool IsDragAndDropSelectionEnabled();Разрешает пользовательское перетаскивание выделенного текста средствами TextEdit. Не создаёт выделение, не выполняет перенос при назначении и не включает автоматически приём файлов или объектов проекта. Для выделения отдельно требуется SelectingEnabled.
boolТекущее значение настройки DragAndDropSelectionEnabled; не подтверждает, что эффект виден в данном кадре.
IsDraggingCursorbool
public bool IsDraggingCursor();true во время внутреннего перетаскивания выделения или области мини-карты. Это состояние взаимодействия TextEdit, а не глобальная проверка нажатой кнопки мыши и не наличие произвольной drag-and-drop операции.
booltrue во время внутреннего перетаскивания выделения или области мини-карты. Это состояние взаимодействия TextEdit, а не глобальная проверка нажатой кнопки мыши и не наличие произвольной drag-and-drop операции.
IsDrawingCaretWhenEditableDisabledbool
public bool IsDrawingCaretWhenEditableDisabled();Разрешает отображать каретку при Editable = false с учётом остальных условий её видимости. Не разрешает ввод и не переводит элемент в редактируемый режим. Для обычного просмотра текста без каретки оставьте false.
boolТекущее значение настройки CaretDrawWhenEditableDisabled; не подтверждает, что эффект виден в данном кадре.
IsDrawingMinimapbool
public bool IsDrawingMinimap();Показывает мини-карту документа. Она занимает часть ширины TextEdit, поэтому при включённом переносе может изменить число визуальных строк. Исходный Text и число логических строк не меняются. Ширина задаётся MinimapWidth.
boolТекущее значение настройки MinimapDraw; не подтверждает, что эффект виден в данном кадре.
IsDrawingSpacesbool
public bool IsDrawingSpaces();Показывает маркеры пробелов, не меняя Text или правила выделения. Это отображение, а не добавление символов в файл.
boolПоказывает маркеры пробелов, не меняя Text или правила выделения. Это отображение, а не добавление символов в файл.
IsDrawingTabsbool
public bool IsDrawingTabs();Показывает визуальные маркеры tab, сохраняя текст документа. Не включает приём Tab и не переводит табуляцию в пробелы.
boolПоказывает визуальные маркеры tab, сохраняя текст документа. Не включает приём Tab и не переводит табуляцию в пробелы.
IsEditablebool
public bool IsEditable();Разрешает пользовательское редактирование; true по умолчанию. false также блокирует действия Undo/Redo, но не Text, SetLine, InsertTextAtCaret и RemoveText из кода. Это режим UI, не защита данных модели.
boolРазрешает пользовательское редактирование; true по умолчанию. false также блокирует действия Undo/Redo, но не Text, SetLine, InsertTextAtCaret и RemoveText из кода. Это режим UI, не защита данных модели.
IsEmojiMenuEnabledbool
public bool IsEmojiMenuEnabled();Разрешает команду выбора эмодзи в контекстном меню при поддержке системного окна выбора платформой. false делает соответствующий пункт недоступным, а не обязательно удаляет его. Также требуется Editable. Не добавляет шрифт эмодзи и не гарантирует наличие системного окна на каждой платформе.
boolРазрешает команду выбора эмодзи в контекстном меню при поддержке системного окна выбора платформой. false делает соответствующий пункт недоступным, а не обязательно удаляет его. Также требуется Editable. Не добавляет шрифт эмодзи и не гарантирует наличие системного окна на каждой платформе.
IsEmptySelectionClipboardEnabledbool
public bool IsEmptySelectionClipboardEnabled();Разрешает стандартным Copy и Cut обрабатывать полные строки при отсутствии выделения. По умолчанию true. Не означает копирование пустой строки вместо данных: строка под курсором копируется целиком, а Cut может удалить её. Не влияет на выбранный текст и само назначение свойства не обращается к буферу.
boolЗначение соответствующей настройки, не наличие данных или поддержки буфера платформой.
IsFitContentHeightEnabledbool
public bool IsFitContentHeightEnabled();Возвращает настройку ScrollFitContentHeight, а не факт, что весь текст виден без прокрутки. Итоговый размер зависит от родительской компоновки.
boolВозвращает настройку ScrollFitContentHeight, а не факт, что весь текст виден без прокрутки. Итоговый размер зависит от родительской компоновки.
IsFitContentWidthEnabledbool
public bool IsFitContentWidthEnabled();Возвращает настройку ScrollFitContentWidth, а не проверку отсутствия горизонтальной прокрутки. Итоговый размер зависит от родительской компоновки и переносов.
boolВозвращает настройку ScrollFitContentWidth, а не проверку отсутствия горизонтальной прокрутки. Итоговый размер зависит от родительской компоновки и переносов.
IsGutterClickablebool
public bool IsGutterClickable(int gutter);Собственный общий флаг поля, не итоговое OR с построчным IsLineGutterClickable и не разрешение выполнения команды.
| Имя | Тип | По умолчанию |
|---|---|---|
gutter | int | — |
gutterТекущий индекс поля от 0 до GetGutterCount() - 1.
boolСобственный общий флаг поля, не итоговое OR с построчным IsLineGutterClickable и не разрешение выполнения команды.
IsGutterDrawnbool
public bool IsGutterDrawn(int gutter);Разрешено ли отображение определения поля. Не проверяет видимость конкретной строки в прокрученной области редактора.
| Имя | Тип | По умолчанию |
|---|---|---|
gutter | int | — |
gutterТекущий индекс поля от 0 до GetGutterCount() - 1.
boolРазрешено ли отображение определения поля. Не проверяет видимость конкретной строки в прокрученной области редактора.
IsGutterOverwritablebool
public bool IsGutterOverwritable(int gutter);Участвует ли поле в MergeGutters. Это не флаг пользовательского редактирования текста.
| Имя | Тип | По умолчанию |
|---|---|---|
gutter | int | — |
gutterТекущий индекс поля от 0 до GetGutterCount() - 1.
boolУчаствует ли поле в MergeGutters. Это не флаг пользовательского редактирования текста.
IsHighlightAllOccurrencesEnabledbool
public bool IsHighlightAllOccurrencesEnabled();Подсвечивает совпадения текста выделения курсора 0 с учётом регистра и границ целого слова. Пустое или состоящее только из пробельных символов выделение не подсвечивается. Не создаёт дополнительных выделений и не задаёт SetSearchText. Отличается от AddSelectionForNextOccurrence: та команда допускает совпадение внутри слова.
boolТекущее значение настройки HighlightAllOccurrences; не подтверждает, что эффект виден в данном кадре.
IsHighlightCurrentLineEnabledbool
public bool IsHighlightCurrentLineEnabled();Подсвечивает фон текущих строк курсоров цветом темы. Это визуальная подсветка, а не выделение текста: HasSelection и GetSelectedText не меняются. Для явного диапазона используйте Select.
boolТекущее значение настройки HighlightCurrentLine; не подтверждает, что эффект виден в данном кадре.
IsInMulitcaretEditbool
public bool IsInMulitcaretEdit();Активна ли область BeginMulticaretEdit. Написание Mulitcaret — часть текущего C# API; используйте имя точно. Это не признак, что в редакторе больше одного курсора.
boolАктивна ли область BeginMulticaretEdit. Написание Mulitcaret — часть текущего C# API; используйте имя точно. Это не признак, что в редакторе больше одного курсора.
IsIndentWrappedLinesbool
public bool IsIndentWrappedLines();Добавляет визуальный отступ продолжениям перенесённой строки. Не вставляет пробелы/табуляцию и не меняет текст или логические номера строк.
boolДобавляет визуальный отступ продолжениям перенесённой строки. Не вставляет пробелы/табуляцию и не меняет текст или логические номера строк.
IsLineGutterClickablebool
public bool IsLineGutterClickable(int line, int gutter);Собственный флаг этой ячейки. Не включает общий IsGutterClickable, поэтому false не гарантирует обычный курсор наведения.
| Имя | Тип | По умолчанию |
|---|---|---|
line | int | — |
gutter | int | — |
lineИндекс логической строки от 0 до GetLineCount() - 1.
gutterТекущий индекс поля от 0 до GetGutterCount() - 1.
boolСобственный флаг этой ячейки. Не включает общий IsGutterClickable, поэтому false не гарантирует обычный курсор наведения.
IsLineInViewportbool
public bool IsLineInViewport(int line);Проверка строки относительно текущей области с ограничением реализации: у верхней границы сравниваются логический номер и индекс переноса. При прокрутке внутри длинной строки результат может зависеть от номера строки. Не используйте как единственный критерий видимости перенесённого текста; проверяйте конкретную позицию через GetRectAtLineColumn после рисования либо рассчитывайте границы по строке и wrapIndex.
| Имя | Тип | По умолчанию |
|---|---|---|
line | int | — |
lineИндекс логической строки от 0 до GetLineCount() - 1.
boolПроверка строки относительно текущей области с ограничением реализации: у верхней границы сравниваются логический номер и индекс переноса. При прокрутке внутри длинной строки результат может зависеть от номера строки. Не используйте как единственный критерий видимости перенесённого текста; проверяйте конкретную позицию через GetRectAtLineColumn после рисования либо рассчитывайте границы по строке и wrapIndex.
IsLineWrappedbool
public bool IsLineWrapped(int line);Есть ли у логической строки дополнительные визуальные части при текущих ширине и WrapMode. Пересчитывайте после изменения размера; это не наличие символа перевода строки в документе.
| Имя | Тип | По умолчанию |
|---|---|---|
line | int | — |
lineИндекс логической строки от 0 до GetLineCount() - 1.
boolЕсть ли у логической строки дополнительные визуальные части при текущих ширине и WrapMode. Пересчитывайте после изменения размера; это не наличие символа перевода строки в документе.
IsMenuVisiblebool
public bool IsMenuVisible();Проверяет фактическую видимость уже созданного встроенного меню. До GetMenu или пользовательского открытия возвращает false и само меню не создаёт. Не равнозначно ContextMenuEnabled.
boolПроверяет фактическую видимость уже созданного встроенного меню. До GetMenu или пользовательского открытия возвращает false и само меню не создаёт. Не равнозначно ContextMenuEnabled.
IsMiddleMousePasteEnabledbool
public bool IsMiddleMousePasteEnabled();Разрешает обработку вставки средней кнопкой мыши через primary-буфер на поддерживающих его платформах. Не создаёт поддержку primary-буфера и не управляет обычным Paste. false отключает этот путь ввода, но не блокирует программный PastePrimaryClipboard. Назначение свойства ничего не вставляет.
boolЗначение соответствующей настройки, не наличие данных или поддержки буфера платформой.
IsMouseOverSelectionbool
public bool IsMouseOverSelection(bool edges, int caretIndex = -1);Проверяет, находится ли текущая позиция мыши внутри выделения указанного курсора; -1 проверяет все. edges включает границы. Учитывает преобразование позиции в строки/колонки, но не принимает позицию аргументом. Для проверки произвольной позиции используйте GetSelectionAtLineColumn.
| Имя | Тип | По умолчанию |
|---|---|---|
edges | bool | — |
caretIndex | int | -1 |
edgesСчитать границы частью выделения.
caretIndexИндекс курсора; -1 проверяет все выделения.
boolПроверяет, находится ли текущая позиция мыши внутри выделения указанного курсора; -1 проверяет все. edges включает границы. Учитывает преобразование позиции в строки/колонки, но не принимает позицию аргументом. Для проверки произвольной позиции используйте GetSelectionAtLineColumn.
IsMoveCaretOnRightClickEnabledbool
public bool IsMoveCaretOnRightClickEnabled();Разрешает перемещать каретку правой кнопкой мыши. Не перемещает её при назначении свойства и не включает контекстное меню: оно управляется отдельно через ContextMenuEnabled.
boolТекущее значение настройки CaretMoveOnRightClick; не подтверждает, что эффект виден в данном кадре.
IsMultipleCaretsEnabledbool
public bool IsMultipleCaretsEnabled();Разрешает несколько курсоров. false немедленно удаляет вторичные, сбрасывает состояние многокурсорной операции и запрещает AddCaret. Не переключайте эту настройку внутри BeginMulticaretEdit/EndMulticaretEdit.
boolРазрешает несколько курсоров. false немедленно удаляет вторичные, сбрасывает состояние многокурсорной операции и запрещает AddCaret. Не переключайте эту настройку внутри BeginMulticaretEdit/EndMulticaretEdit.
IsOvertypeModeEnabledbool
public bool IsOvertypeModeEnabled();Включён ли режим замены пользовательского ввода. Не означает, что любой программный setter удаляет старые символы.
boolВключён ли режим замены пользовательского ввода. Не означает, что любой программный setter удаляет старые символы.
IsScrollPastEndOfFileEnabledbool
public bool IsScrollPastEndOfFileEnabled();Разрешает дополнительное место прокрутки после конца текста. Не добавляет пустые строки в документ и не увеличивает GetLineCount.
boolРазрешает дополнительное место прокрутки после конца текста. Не добавляет пустые строки в документ и не увеличивает GetLineCount.
IsSelectingEnabledbool
public bool IsSelectingEnabled();Разрешает выделение текста. Отключение снимает существующие выделения, но не блокирует перемещение курсора через Select и не делает документ read-only. Editable управляется отдельно.
boolРазрешает выделение текста. Отключение снимает существующие выделения, но не блокирует перемещение курсора через Select и не делает документ read-only. Editable управляется отдельно.
IsSelectionHandleEnabledbool
public bool IsSelectionHandleEnabled();Включает экранные маркеры управления выделением для сенсорного ввода. Не включает само выделение: оно управляется SelectingEnabled. Не относится к числу курсоров и не заменяет CaretMultiple.
boolТекущее значение настройки SelectionHandleEnabled; не подтверждает, что эффект виден в данном кадре.
IsShortcutKeysEnabledbool
public bool IsShortcutKeysEnabled();Включает встроенные сочетания команд редактирования и их обозначения в контекстном меню. Не отключает весь ввод с клавиатуры и не блокирует программные вызовы команд. Для запрета пользовательского изменения текста используйте Editable = false.
boolВключает встроенные сочетания команд редактирования и их обозначения в контекстном меню. Не отключает весь ввод с клавиатуры и не блокирует программные вызовы команд. Для запрета пользовательского изменения текста используйте Editable = false.
IsSmoothScrollEnabledbool
public bool IsSmoothScrollEnabled();Включает плавную вертикальную прокрутку. Не меняет единицы ScrollVertical и не гарантирует анимацию любого программного SetVScroll.
boolВключает плавную вертикальную прокрутку. Не меняет единицы ScrollVertical и не гарантирует анимацию любого программного SetVScroll.
IsVirtualKeyboardEnabledbool
public bool IsVirtualKeyboardEnabled();Разрешает экранную клавиатуру, если её поддерживает текущая платформа. Назначение true само не открывает клавиатуру. Показ при получении фокуса отдельно регулируется VirtualKeyboardShowOnFocus; для редактирования требуется Editable. Не создаёт собственную клавиатуру средствами UI.
boolРазрешает экранную клавиатуру, если её поддерживает текущая платформа. Назначение true само не открывает клавиатуру. Показ при получении фокуса отдельно регулируется VirtualKeyboardShowOnFocus; для редактирования требуется Editable. Не создаёт собственную клавиатуру средствами UI.
MenuOptionvoid
public void MenuOption(int option);Выполняет встроенную команду по ID из MenuItems, переданному как int; это ID, не индекс строки PopupMenu. Не открывает меню. ContextMenuEnabled = false не блокирует вызов. Команда Clear учитывает Editable, в отличие от прямого Clear; команды направления меняют отображение, сохраняя Text. Состояние недоступного пункта меню не заменяет проверки условий вашей программной команды.
| Имя | Тип | По умолчанию |
|---|---|---|
option | int | — |
optionЧисловой ID встроенной команды: (int)TextEdit.MenuItems.SelectAll, например. Не индекс PopupMenu.
MergeGuttersvoid
public void MergeGutters(int fromLine, int toLine);Выборочно копирует данные fromLine в toLine только для Overwritable-полей. Непустой текст и существующая иконка заменяют назначение и копируют цвет; пустой текст и null-иконка старые значения не очищают. Metadata пропускается только при пустой строке: nil может перезаписать назначение. true у построчного clickable переносится, false не снимает прежний true. Источник и текст документа сохраняются; это не перенос строки и не глубокая копия контейнеров.
| Имя | Тип | По умолчанию |
|---|---|---|
fromLine | int | — |
toLine | int | — |
fromLineСтрока-источник, данные которой остаются на месте.
toLineСтрока назначения для выборочного копирования.
MergeOverlappingCaretsvoid
public void MergeOverlappingCarets();Объединяет совпадающие курсоры и пересекающиеся выделения. Соседние непустые выделения, только касающиеся границами, остаются отдельными. Может удалить курсоры и изменить индексы; внутри многокурсорной операции откладывает объединение до её конца.
MulticaretEditIgnoreCaretbool
public bool MulticaretEditIgnoreCaret(int caretIndex);Помечен ли индекс как игнорируемый в текущей многокурсорной операции. Проверяйте при ручном обходе, чтобы повторно не обработать курсор, уже затронутый другой правкой. После внешнего EndMulticaretEdit список очищается.
| Имя | Тип | По умолчанию |
|---|---|---|
caretIndex | int | — |
caretIndexТекущий индекс курсора; -1 разрешён только методами, явно описывающими обработку всех курсоров.
boolПомечен ли индекс как игнорируемый в текущей многокурсорной операции. Проверяйте при ручном обходе, чтобы повторно не обработать курсор, уже затронутый другой правкой. После внешнего EndMulticaretEdit список очищается.
Pastevoid
public void Paste(int caretIndex = -1);В стандартной реализации заменяет выделения текстом системного буфера; пустой буфер или Editable = false ничего не меняют. При caretIndex = -1 и нескольких курсорах ровно такое же число строк буфера распределяется по одному фрагменту на курсор в порядке документа; иначе каждому вставляется весь текст. Завершающий перевод строки создаёт дополнительный пустой фрагмент при подсчёте. Если один курсор без выделения и сохранён признак копирования полной строки тем же TextEdit, неизменённый текст вставляется в начало текущей строки. Изменения группируются для Undo. _Paste заменяет это поведение.
| Имя | Тип | По умолчанию |
|---|---|---|
caretIndex | int | -1 |
caretIndexИндекс существующего курсора; -1 — все.
PastePrimaryClipboardvoid
public void PastePrimaryClipboard(int caretIndex = -1);В стандартной реализации вставляет текст отдельного primary-буфера выделения, если платформа поддерживает его и Editable включён. Это не обычный системный буфер Paste. При одном курсоре сначала снимает выделение и переносит курсор к мыши, даже если буфер пуст. При нескольких курсорах текущая реализация проверяет caretIndex, но вставляет во все курсоры: аргумент не выбирает цель. После поддержанного вызова запрашивает фокус. _PastePrimaryClipboard заменяет поведение; для вставки в конкретный курсор используйте явно полученный текст с InsertTextAtCaret.
| Имя | Тип | По умолчанию |
|---|---|---|
caretIndex | int | -1 |
caretIndexПроверяется на допустимость, но стандартная реализация не использует его для выбора цели вставки.
Redovoid
public void Redo();Повторяет отменённую операцию/группу. Требует Editable = true и HasRedo. Новое редактирование после Undo может удалить прежнюю ветвь Redo.
RemoveCaretvoid
public void RemoveCaret(int caret);Удаляет курсор по текущему индексу, если остаётся хотя бы один. Индексы следующих курсоров сдвигаются. Нельзя удалять единственный курсор; для сброса дополнительных используйте RemoveSecondaryCarets.
| Имя | Тип | По умолчанию |
|---|---|---|
caret | int | — |
caretТекущий индекс курсора; не постоянный идентификатор.
RemoveGuttervoid
public void RemoveGutter(int gutter);Удаляет определение поля и его данные во всех строках. Индексы следующих полей уменьшаются; сохранённые индексы нужно пересчитать. Испускает GutterRemoved без аргументов, не удаляя текст документа.
| Имя | Тип | По умолчанию |
|---|---|---|
gutter | int | — |
gutterТекущий индекс поля от 0 до GetGutterCount() - 1.
RemoveLineAtvoid
public void RemoveLineAt(int line, bool moveCaretsDown = true);Удаляет логическую строку вместе с нужным разделителем. Для единственной строки очищает содержимое, сохраняя одну пустую строку. moveCaretsDown задаёт направление переноса затронутых курсоров; на краях применяется допустимая ближайшая позиция. Операция отменяема.
| Имя | Тип | По умолчанию |
|---|---|---|
line | int | — |
moveCaretsDown | bool | true |
lineИндекс существующей логической строки от 0 до GetLineCount() - 1.
moveCaretsDownПереносить затронутые курсоры к следующей строке; false предпочитает предыдущую. На краях используется допустимая позиция.
RemoveSecondaryCaretsvoid
public void RemoveSecondaryCarets();Удаляет все курсоры кроме текущего индекса 0. Сохраняет текст и состояние оставшегося курсора; это не Deselect всех выделений.
RemoveTextvoid
public void RemoveText(int fromLine, int fromColumn, int toLine, int toColumn);Удаляет диапазон [fromLine/fromColumn, toLine/toColumn), включая разделители строк внутри него. Правая граница исключена; удаление между строками соединяет оставшиеся части. Колонки — кодовые точки Unicode. Операция отменяема и не требует Editable = true.
| Имя | Тип | По умолчанию |
|---|---|---|
fromLine | int | — |
fromColumn | int | — |
toLine | int | — |
toColumn | int | — |
fromLineНачальная логическая строка удаления; в LinesEditedFrom — первая сообщённая граница, которая может быть больше второй.
fromColumnНачальная колонка удаления в кодовых точках Unicode, включая эту позицию.
toLineКонечная логическая строка удаления; в LinesEditedFrom — вторая сообщённая граница.
toColumnКонечная колонка в кодовых точках Unicode; сама эта позиция не удаляется.
SearchVector2I
public Vector2I Search(string text, uint flags, int fromLine, int fromColumn);Ищет буквальный текст внутри логических строк. flags = 0 игнорирует регистр; MatchCase, WholeWords и Backwards комбинируются как uint. Начальная позиция включена; после края поиск обходит документ циклически. Результат Vector2I: X — колонка в кодовых точках Unicode, Y — строка; отсутствие — (-1, -1). Не выделяет результат и не перемещает курсор. Регулярные выражения и совпадения через разделитель строк не поддерживаются. При переборе сдвигайте старт и останавливайтесь при повторе первой найденной позиции.
| Имя | Тип | По умолчанию |
|---|---|---|
text | string | — |
flags | uint | — |
fromLine | int | — |
fromColumn | int | — |
textБуквальный текст запроса/вставки. Search не поддерживает regex или запрос через несколько строк.
flagsБиты MatchCase, WholeWords, Backwards как uint; 0 — прямой поиск без учёта регистра.
fromLineСуществующая логическая строка; в Search — строка начала обхода.
fromColumnКолонка начала поиска в кодовых точках Unicode, включая эту позицию.
Vector2IИщет буквальный текст внутри логических строк. flags = 0 игнорирует регистр; MatchCase, WholeWords и Backwards комбинируются как uint. Начальная позиция включена; после края поиск обходит документ циклически. Результат Vector2I: X — колонка в кодовых точках Unicode, Y — строка; отсутствие — (-1, -1). Не выделяет результат и не перемещает курсор. Регулярные выражения и совпадения через разделитель строк не поддерживаются. При переборе сдвигайте старт и останавливайтесь при повторе первой найденной позиции.
Selectvoid
public void Select(int originLine, int originColumn, int caretLine, int caretColumn, int caretIndex = 0);Задаёт выделение от origin к позиции курсора, сохраняя направление. Границы нормализуются через GetSelectionFrom/To; индексы строк и колонок начинаются с 0, колонки — кодовые точки Unicode. Даже при SelectingEnabled = false перемещает курсор, но не активирует выделение. Не меняет текст и не объединяет пересекающиеся курсоры автоматически.
| Имя | Тип | По умолчанию |
|---|---|---|
originLine | int | — |
originColumn | int | — |
caretLine | int | — |
caretColumn | int | — |
caretIndex | int | 0 |
originLineЛогическая строка якоря выделения.
originColumnКолонка якоря в кодовых точках Unicode.
caretLineСтрока активного конца выделения; может быть раньше якоря.
caretColumnКолонка активного конца в кодовых точках Unicode.
caretIndexТекущий индекс курсора; -1 разрешён только методами, явно описывающими обработку всех курсоров.
SelectAllvoid
public void SelectAll();Выделяет весь документ основным курсором и удаляет вторичные курсоры. Не меняет текст. При SelectingEnabled = false ничего не выделяет; пустой документ остаётся без выделения.
SelectWordUnderCaretvoid
public void SelectWordUnderCaret(int caretIndex = -1);Переключает выделение у указанного курсора: если выделение уже есть, снимает его; иначе выделяет слово по границам текстовой системы и настройкам разделителей. caretIndex = -1 обрабатывает все курсоры. Требует SelectingEnabled. Текст не меняется; пересекающиеся курсоры объединяются. Это не безусловная команда выделения слова: повторный вызов снимает выделение.
| Имя | Тип | По умолчанию |
|---|---|---|
caretIndex | int | -1 |
caretIndexИндекс курсора; -1 обрабатывает все курсоры.
SetAutowrapModevoid
public void SetAutowrapMode(TextServer.AutowrapMode autowrapMode);Правило визуального переноса при WrapMode.Boundary: Arbitrary — по границам графем, Word — по словам, WordSmart — с разбиением слишком длинного слова, Off — без мягких переносов. Само по себе не включает Boundary.
| Имя | Тип | По умолчанию |
|---|---|---|
autowrapMode | TextServer.AutowrapMode | — |
autowrapModeOff, Arbitrary, Word или WordSmart. Работает при Boundary.
SetBackspaceDeletesCompositeCharacterEnabledvoid
public void SetBackspaceDeletesCompositeCharacterEnabled(bool enable);При true обычный Backspace удаляет составной символ до предыдущей границы; false — одну кодовую точку. CaretMidGrapheme = true имеет приоритет и также выбирает удаление одной точки. Не управляет RemoveText с явно заданным диапазоном.
| Имя | Тип | По умолчанию |
|---|---|---|
enable | bool | — |
enableВключить соответствующую настройку составного удаления.
SetCaretBlinkEnabledvoid
public void SetCaretBlinkEnabled(bool enable);Включает мигание текстовой каретки. Таймер запускается при наличии фокуса; false отключает мигание, но не скрывает каретку. Видимость по-прежнему зависит от фокуса и других условий отрисовки. Интервал задаётся CaretBlinkInterval.
| Имя | Тип | По умолчанию |
|---|---|---|
enable | bool | — |
enableВключить описанное поведение; не меняет содержимое Text.
SetCaretBlinkIntervalvoid
public void SetCaretBlinkInterval(float interval);Положительный интервал переключения видимости каретки в секундах. Например, 0.5 означает переключение каждые полсекунды; полный цикл видимая/скрытая занимает два интервала. Значение 0 не отключает мигание: используйте CaretBlink = false. Это не задержка повтора ввода.
| Имя | Тип | По умолчанию |
|---|---|---|
interval | float | — |
intervalИнтервал переключения видимости в секундах, строго больше 0.
SetCaretColumnvoid
public void SetCaretColumn(int column, bool adjustViewport = true, int caretIndex = 0);Перемещает курсор по его текущей строке; значение ограничивается диапазоном 0…длина строки в кодовых точках Unicode. При совпадении с якорем снимает выделение. adjustViewport управляет прокруткой, а не значением колонки.
| Имя | Тип | По умолчанию |
|---|---|---|
column | int | — |
adjustViewport | bool | true |
caretIndex | int | 0 |
columnКолонка в кодовых точках Unicode, не UTF-16-индекс.
adjustViewportПрокрутить к новой позиции при необходимости.
caretIndexТекущий индекс курсора; -1 разрешён только методами, явно описывающими обработку всех курсоров.
SetCaretLinevoid
public void SetCaretLine(int line, bool adjustViewport = true, bool canBeHidden = true, int wrapIndex = 0, int caretIndex = 0);Перемещает курсор на логическую строку, ограничивая номер документом. wrapIndex >= 0 сохраняет визуальную X-позицию в выбранном переносе; -1 сохраняет числовую колонку с ограничением длиной строки. Для точной позиции задайте строку, затем SetCaretColumn. canBeHidden = false ищет видимую строку.
| Имя | Тип | По умолчанию |
|---|---|---|
line | int | — |
adjustViewport | bool | true |
canBeHidden | bool | true |
wrapIndex | int | 0 |
caretIndex | int | 0 |
lineЛогическая строка с индексом от 0.
adjustViewportПрокрутить к новой позиции при необходимости.
canBeHiddenРазрешить скрытую строку; false ищет подходящую видимую.
wrapIndexВизуальный перенос для сохранения X; -1 использует числовую колонку.
caretIndexТекущий индекс курсора; -1 разрешён только методами, явно описывающими обработку всех курсоров.
SetCaretMidGraphemeEnabledvoid
public void SetCaretMidGraphemeEnabled(bool enabled);Разрешает курсору/удалению работать внутри составных символов. При true Backspace удаляет одну кодовую точку даже если BackspaceDeletesCompositeCharacterEnabled включён. Не означает работу с половинами UTF-16-суррогатной пары.
| Имя | Тип | По умолчанию |
|---|---|---|
enabled | bool | — |
enabledВключить настройку режима ввода/визуализации; текст автоматически не преобразуется.
SetCaretTypevoid
public void SetCaretType(TextEdit.CaretTypeEnum type);Форма текстовой каретки: Line или Block. Block меняет отрисовку, но не включает замену символов: режим перезаписи задаётся отдельно через OvertypeMode. Не меняет текст и позиции курсоров.
| Имя | Тип | По умолчанию |
|---|---|---|
type | TextEdit.CaretTypeEnum | — |
typeLine — линия, Block — блок; форма не включает OvertypeMode.
SetContextMenuEnabledvoid
public void SetContextMenuEnabled(bool enabled);Разрешает пользователю открывать встроенное контекстное меню. false не удаляет PopupMenu и не запрещает программные GetMenu или MenuOption. Это настройка интерфейса, а не запрет редактирования; для ввода используйте Editable.
| Имя | Тип | По умолчанию |
|---|---|---|
enabled | bool | — |
enabledВключить описанное поведение интерфейса.
SetCustomWordSeparatorsvoid
public void SetCustomWordSeparators(string customWordSeparators);Дополнительные символы границ слов для текстовой системы редактора. Само назначение строки не включает их: используйте UseCustomWordSeparators. Не является regex и не меняет фиксированные проверки границ WholeWords в Search.
| Имя | Тип | По умолчанию |
|---|---|---|
customWordSeparators | string | — |
customWordSeparatorsНабор дополнительных символов-разделителей, не регулярное выражение.
SetDeselectOnFocusLossEnabledvoid
public void SetDeselectOnFocusLossEnabled(bool enable);Управляет снятием выделения при потере фокуса. false позволяет сохранять выделение, когда фокус получает другой элемент. Переключение false → true у редактора без фокуса сразу снимает существующее выделение. Не меняет текст и не передаёт фокус.
| Имя | Тип | По умолчанию |
|---|---|---|
enable | bool | — |
enableВключить снятие выделения при потере фокуса; при включении без фокуса выделение снимается сразу.
SetDragAndDropSelectionEnabledvoid
public void SetDragAndDropSelectionEnabled(bool enable);Разрешает пользовательское перетаскивание выделенного текста средствами TextEdit. Не создаёт выделение, не выполняет перенос при назначении и не включает автоматически приём файлов или объектов проекта. Для выделения отдельно требуется SelectingEnabled.
| Имя | Тип | По умолчанию |
|---|---|---|
enable | bool | — |
enableВключить описанное поведение; не меняет содержимое Text.
SetDrawCaretWhenEditableDisabledvoid
public void SetDrawCaretWhenEditableDisabled(bool enable);Разрешает отображать каретку при Editable = false с учётом остальных условий её видимости. Не разрешает ввод и не переводит элемент в редактируемый режим. Для обычного просмотра текста без каретки оставьте false.
| Имя | Тип | По умолчанию |
|---|---|---|
enable | bool | — |
enableВключить описанное поведение; не меняет содержимое Text.
SetDrawControlCharsvoid
public void SetDrawControlChars(bool enabled);Разрешает отображение управляющих символов текстовой системой. Не удаляет их из документа и не служит очисткой/проверкой безопасности входного текста.
| Имя | Тип | По умолчанию |
|---|---|---|
enabled | bool | — |
enabledВключить настройку режима ввода/визуализации; текст автоматически не преобразуется.
SetDrawMinimapvoid
public void SetDrawMinimap(bool enabled);Показывает мини-карту документа. Она занимает часть ширины TextEdit, поэтому при включённом переносе может изменить число визуальных строк. Исходный Text и число логических строк не меняются. Ширина задаётся MinimapWidth.
| Имя | Тип | По умолчанию |
|---|---|---|
enabled | bool | — |
enabledВключить описанное поведение; не меняет содержимое Text.
SetDrawSpacesvoid
public void SetDrawSpaces(bool enabled);Показывает маркеры пробелов, не меняя Text или правила выделения. Это отображение, а не добавление символов в файл.
| Имя | Тип | По умолчанию |
|---|---|---|
enabled | bool | — |
enabledВключить настройку режима ввода/визуализации; текст автоматически не преобразуется.
SetDrawTabsvoid
public void SetDrawTabs(bool enabled);Показывает визуальные маркеры tab, сохраняя текст документа. Не включает приём Tab и не переводит табуляцию в пробелы.
| Имя | Тип | По умолчанию |
|---|---|---|
enabled | bool | — |
enabledВключить настройку режима ввода/визуализации; текст автоматически не преобразуется.
SetEditablevoid
public void SetEditable(bool enabled);Разрешает пользовательское редактирование; true по умолчанию. false также блокирует действия Undo/Redo, но не Text, SetLine, InsertTextAtCaret и RemoveText из кода. Это режим UI, не защита данных модели.
| Имя | Тип | По умолчанию |
|---|---|---|
enabled | bool | — |
enabledРазрешить пользовательское редактирование и действия Undo/Redo.
SetEmojiMenuEnabledvoid
public void SetEmojiMenuEnabled(bool enable);Разрешает команду выбора эмодзи в контекстном меню при поддержке системного окна выбора платформой. false делает соответствующий пункт недоступным, а не обязательно удаляет его. Также требуется Editable. Не добавляет шрифт эмодзи и не гарантирует наличие системного окна на каждой платформе.
| Имя | Тип | По умолчанию |
|---|---|---|
enable | bool | — |
enableВключить описанное поведение интерфейса.
SetEmptySelectionClipboardEnabledvoid
public void SetEmptySelectionClipboardEnabled(bool enabled);Разрешает стандартным Copy и Cut обрабатывать полные строки при отсутствии выделения. По умолчанию true. Не означает копирование пустой строки вместо данных: строка под курсором копируется целиком, а Cut может удалить её. Не влияет на выбранный текст и само назначение свойства не обращается к буферу.
| Имя | Тип | По умолчанию |
|---|---|---|
enabled | bool | — |
enabledВключить описанное поведение; само назначение не читает и не изменяет буфер.
SetFitContentHeightEnabledvoid
public void SetFitContentHeightEnabled(bool enabled);Включает учёт содержимого в минимальной высоте TextEdit. Родительский контейнер может расширять редактор вместо внутренней прокрутки. Не задаёт фиксированную высоту и не меняет размер шрифта. Соответствует ScrollFitContentHeight.
| Имя | Тип | По умолчанию |
|---|---|---|
enabled | bool | — |
enabledВключить описанное поведение интерфейса.
SetFitContentWidthEnabledvoid
public void SetFitContentWidthEnabled(bool enabled);Включает учёт содержимого в минимальной ширине TextEdit. Это требование к компоновке, не фиксированная ширина и не масштаб текста; учитывайте взаимодействие с переносами. Соответствует ScrollFitContentWidth.
| Имя | Тип | По умолчанию |
|---|---|---|
enabled | bool | — |
enabledВключить описанное поведение интерфейса.
SetGutterClickablevoid
public void SetGutterClickable(int gutter, bool clickable);Задаёт общий признак действия для курсора наведения. Визуальная кликабельность строки — OR общего и построчного флагов. false сам по себе не запрещает GutterClicked: проверяйте допустимость действия в обработчике.
| Имя | Тип | По умолчанию |
|---|---|---|
gutter | int | — |
clickable | bool | — |
gutterТекущий индекс поля от 0 до GetGutterCount() - 1.
clickableПризнак действия для курсора наведения, не фильтр сигнала нажатия.
SetGutterCustomDrawvoid
public void SetGutterCustomDraw(int column, Callable drawCallback);Назначает Callable для поля Custom, принимающий логическую строку, индекс поля и Rect2 в локальных координатах редактора. C#-параметр column здесь означает индекс gutter. Setter не включает тип Custom и не вызывает callback сразу; default(Callable) очищает его. Не меняйте структуру документа во время рисования.
| Имя | Тип | По умолчанию |
|---|---|---|
column | int | — |
drawCallback | Callable | — |
columnИндекс gutter, несмотря на имя column; это не колонка текста.
drawCallbackCallable с аргументами line, gutter, Rect2; default очищает callback.
SetGutterDrawvoid
public void SetGutterDraw(int gutter, bool draw);Показывает или скрывает поле, сохраняя его определение и данные строк. Скрытое поле исключается из hit-test и основной суммы ширин; общий отступ может остаться. Для удаления данных используйте RemoveGutter.
| Имя | Тип | По умолчанию |
|---|---|---|
gutter | int | — |
draw | bool | — |
gutterТекущий индекс поля от 0 до GetGutterCount() - 1.
drawПоказывать поле, сохраняя его данные при false.
SetGutterNamevoid
public void SetGutterName(int gutter, string name);Задаёт имя поля для собственной идентификации. Имена не обязаны быть уникальными, setter не переносит привязки и не защищает сохранённые индексы от сдвига. Поддерживайте уникальность в модели приложения при необходимости.
| Имя | Тип | По умолчанию |
|---|---|---|
gutter | int | — |
name | string | — |
gutterТекущий индекс поля от 0 до GetGutterCount() - 1.
nameИмя определения; уникальность контролируется приложением.
SetGutterOverwritablevoid
public void SetGutterOverwritable(int gutter, bool overwritable);Разрешает MergeGutters копировать данные этого поля между строками. Не делает текст документа read-only и не ограничивает прямые SetLineGutter-методы.
| Имя | Тип | По умолчанию |
|---|---|---|
gutter | int | — |
overwritable | bool | — |
gutterТекущий индекс поля от 0 до GetGutterCount() - 1.
overwritableРазрешить участие поля в MergeGutters.
SetGutterTypevoid
public void SetGutterType(int gutter, TextEdit.GutterType type);Выбирает отображение ячеек: String, Icon или Custom. Смена типа сохраняет текст, иконку и Metadata, но не переводит одно значение в другое. Для Custom назначьте callback отдельно.
| Имя | Тип | По умолчанию |
|---|---|---|
gutter | int | — |
type | TextEdit.GutterType | — |
gutterТекущий индекс поля от 0 до GetGutterCount() - 1.
typeString, Icon или Custom — способ отображения сохранённых данных.
SetGutterWidthvoid
public void SetGutterWidth(int gutter, int width);Задаёт ширину поля в пикселях. Используйте неотрицательные значения; это сохранённая ширина, не автоматическая подгонка под текст или иконки. Ширина скрытого поля не входит в основную сумму.
| Имя | Тип | По умолчанию |
|---|---|---|
gutter | int | — |
width | int | — |
gutterТекущий индекс поля от 0 до GetGutterCount() - 1.
widthНеотрицательная ширина поля в пикселях.
SetHScrollvoid
public void SetHScroll(int value);Горизонтальное смещение в пикселях. Ограничивается диапазоном внутренней полосы прокрутки; при переносе доступное горизонтальное смещение может исчезнуть. Это не номер колонки текста.
| Имя | Тип | По умолчанию |
|---|---|---|
value | int | — |
valueГоризонтальное смещение в пикселях.
SetHighlightAllOccurrencesvoid
public void SetHighlightAllOccurrences(bool enabled);Подсвечивает совпадения текста выделения курсора 0 с учётом регистра и границ целого слова. Пустое или состоящее только из пробельных символов выделение не подсвечивается. Не создаёт дополнительных выделений и не задаёт SetSearchText. Отличается от AddSelectionForNextOccurrence: та команда допускает совпадение внутри слова.
| Имя | Тип | По умолчанию |
|---|---|---|
enabled | bool | — |
enabledВключить описанное поведение; не меняет содержимое Text.
SetHighlightCurrentLinevoid
public void SetHighlightCurrentLine(bool enabled);Подсвечивает фон текущих строк курсоров цветом темы. Это визуальная подсветка, а не выделение текста: HasSelection и GetSelectedText не меняются. Для явного диапазона используйте Select.
| Имя | Тип | По умолчанию |
|---|---|---|
enabled | bool | — |
enabledВключить описанное поведение; не меняет содержимое Text.
SetIndentWrappedLinesvoid
public void SetIndentWrappedLines(bool enabled);Добавляет визуальный отступ продолжениям перенесённой строки. Не вставляет пробелы/табуляцию и не меняет текст или логические номера строк.
| Имя | Тип | По умолчанию |
|---|---|---|
enabled | bool | — |
enabledВключить визуальный отступ продолжений без изменения текста.
SetLanguagevoid
public void SetLanguage(string language);Языковая подсказка формирования текста, например ar; пустая строка использует локаль. Не переводит документ и не переключает язык приложения. Меняет правила формирования/выбора глифов, сохраняя Text.
| Имя | Тип | По умолчанию |
|---|---|---|
language | string | — |
languageЯзыковая подсказка формирования текста; пустая строка — локаль.
SetLinevoid
public void SetLine(int line, string newText);Заменяет логическую строку с записью в историю отмены. newText может содержать \n и создавать дополнительные строки; это не только замена одной видимой строки. Программный вызов не блокируется Editable = false.
| Имя | Тип | По умолчанию |
|---|---|---|
line | int | — |
newText | string | — |
lineИндекс логической строки от 0 до GetLineCount() - 1.
newTextНовый текст строки; может содержать \n и увеличивать число строк.
SetLineAsCenterVisiblevoid
public void SetLineAsCenterVisible(int line, int wrapIndex = 0);Пытается разместить заданную логическую строку/wrapIndex по центру области. У границ документа точное центрирование может быть невозможно. Текст и курсоры не меняются.
| Имя | Тип | По умолчанию |
|---|---|---|
line | int | — |
wrapIndex | int | 0 |
lineИндекс логической строки от 0 до GetLineCount() - 1.
wrapIndexИндекс визуальной части; у GetLineWidth -1 выбирает буфер строки.
SetLineAsFirstVisiblevoid
public void SetLineAsFirstVisible(int line, int wrapIndex = 0);Прокручивает заданную логическую строку/wrapIndex к верхней границе. Не выбирает текст и не перемещает курсоры. В конце документа позиция ограничивается диапазоном полосы.
| Имя | Тип | По умолчанию |
|---|---|---|
line | int | — |
wrapIndex | int | 0 |
lineИндекс логической строки от 0 до GetLineCount() - 1.
wrapIndexИндекс визуальной части; у GetLineWidth -1 выбирает буфер строки.
SetLineAsLastVisiblevoid
public void SetLineAsLastVisible(int line, int wrapIndex = 0);Прокручивает заданную логическую строку/wrapIndex к нижней границе с учётом высоты области и доступного диапазона. Не означает перемещение строки в документе.
| Имя | Тип | По умолчанию |
|---|---|---|
line | int | — |
wrapIndex | int | 0 |
lineИндекс логической строки от 0 до GetLineCount() - 1.
wrapIndexИндекс визуальной части; у GetLineWidth -1 выбирает буфер строки.
SetLineBackgroundColorvoid
public void SetLineBackgroundColor(int line, Color color);Задаёт дополнительный фон логической строки, включая её визуальные переносы. Alpha = 0 убирает эту заливку, сохраняя оформление выделения и темы. Не меняет текст или цвет gutter-ячейки.
| Имя | Тип | По умолчанию |
|---|---|---|
line | int | — |
color | Color | — |
lineИндекс логической строки от 0 до GetLineCount() - 1.
colorЦвет с alpha; у фона строки alpha = 0 убирает дополнительную заливку.
SetLineGutterClickablevoid
public void SetLineGutterClickable(int line, int gutter, bool clickable);Задаёт построчный признак действия для курсора наведения. Итоговая визуальная кликабельность — OR с общим GutterClickable. Не блокирует сигнал GutterClicked; решайте, выполнять ли команду, в обработчике.
| Имя | Тип | По умолчанию |
|---|---|---|
line | int | — |
gutter | int | — |
clickable | bool | — |
lineИндекс логической строки от 0 до GetLineCount() - 1.
gutterТекущий индекс поля от 0 до GetGutterCount() - 1.
clickableПризнак действия для курсора наведения, не фильтр сигнала нажатия.
SetLineGutterIconvoid
public void SetLineGutterIcon(int line, int gutter, Texture2D icon);Задаёт общий ресурс Texture2D для ячейки; null очищает иконку. Для её показа нужен GutterType.Icon. Не меняет подпись, тип поля или сам ресурс изображения.
| Имя | Тип | По умолчанию |
|---|---|---|
line | int | — |
gutter | int | — |
icon | Texture2D | — |
lineИндекс логической строки от 0 до GetLineCount() - 1.
gutterТекущий индекс поля от 0 до GetGutterCount() - 1.
iconОбщая Texture2D или null для очистки иконки.
SetLineGutterItemColorvoid
public void SetLineGutterItemColor(int line, int gutter, Color color);Задаёт цвет текста/иконки ячейки, включая alpha. Не меняет фон строки, текст документа или остальные ячейки поля.
| Имя | Тип | По умолчанию |
|---|---|---|
line | int | — |
gutter | int | — |
color | Color | — |
lineИндекс логической строки от 0 до GetLineCount() - 1.
gutterТекущий индекс поля от 0 до GetGutterCount() - 1.
colorЦвет с alpha; у фона строки alpha = 0 убирает дополнительную заливку.
SetLineGutterMetadatavoid
public void SetLineGutterMetadata(int line, int gutter, Variant metadata);Сохраняет Variant ячейки, например стабильный ключ модели. Массивы, словари и ресурсы сохраняются по ссылке без глубокого копирования. Номер строки и индекс поля могут меняться при редактировании структуры; не используйте их как постоянный ID записи.
| Имя | Тип | По умолчанию |
|---|---|---|
line | int | — |
gutter | int | — |
metadata | Variant | — |
lineИндекс логической строки от 0 до GetLineCount() - 1.
gutterТекущий индекс поля от 0 до GetGutterCount() - 1.
metadataVariant с данными модели; контейнеры не копируются глубоко.
SetLineGutterTextvoid
public void SetLineGutterText(int line, int gutter, string text);Задаёт подпись ячейки поля в логической строке. Не меняет текст документа, имя поля или его тип. Для отображения подписи нужен тип String.
| Имя | Тип | По умолчанию |
|---|---|---|
line | int | — |
gutter | int | — |
text | string | — |
lineИндекс логической строки от 0 до GetLineCount() - 1.
gutterТекущий индекс поля от 0 до GetGutterCount() - 1.
textПодпись gutter-ячейки, отдельно от текста документа.
SetLineWrappingModevoid
public void SetLineWrappingMode(TextEdit.LineWrappingMode mode);None отключает визуальные переносы, Boundary ограничивает строку доступной шириной контрола. Места переноса задаёт AutowrapMode. Не вставляет переводы строк и не меняет GetLineCount; ширина зависит также от полей, полосы прокрутки, темы и миникарты.
| Имя | Тип | По умолчанию |
|---|---|---|
mode | TextEdit.LineWrappingMode | — |
modeNone или Boundary; правило точек переноса задаётся отдельно.
SetMiddleMousePasteEnabledvoid
public void SetMiddleMousePasteEnabled(bool enabled);Разрешает обработку вставки средней кнопкой мыши через primary-буфер на поддерживающих его платформах. Не создаёт поддержку primary-буфера и не управляет обычным Paste. false отключает этот путь ввода, но не блокирует программный PastePrimaryClipboard. Назначение свойства ничего не вставляет.
| Имя | Тип | По умолчанию |
|---|---|---|
enabled | bool | — |
enabledВключить описанное поведение; само назначение не читает и не изменяет буфер.
SetMinimapWidthvoid
public void SetMinimapWidth(int width);Ширина области мини-карты в пикселях элемента управления. Используйте неотрицательное значение, оставляя место для основного текста. Это не масштаб шрифта мини-карты. Изменение пересчитывает доступную ширину переноса; для отключения используйте MinimapDraw = false.
| Имя | Тип | По умолчанию |
|---|---|---|
width | int | — |
widthНеотрицательная ширина мини-карты в пикселях элемента управления.
SetMoveCaretOnRightClickEnabledvoid
public void SetMoveCaretOnRightClickEnabled(bool enable);Разрешает перемещать каретку правой кнопкой мыши. Не перемещает её при назначении свойства и не включает контекстное меню: оно управляется отдельно через ContextMenuEnabled.
| Имя | Тип | По умолчанию |
|---|---|---|
enable | bool | — |
enableВключить описанное поведение; не меняет содержимое Text.
SetMultipleCaretsEnabledvoid
public void SetMultipleCaretsEnabled(bool enabled);Разрешает несколько курсоров. false немедленно удаляет вторичные, сбрасывает состояние многокурсорной операции и запрещает AddCaret. Не переключайте эту настройку внутри BeginMulticaretEdit/EndMulticaretEdit.
| Имя | Тип | По умолчанию |
|---|---|---|
enabled | bool | — |
enabledРазрешить несколько курсоров; отключение удаляет вторичные.
SetOvertypeModeEnabledvoid
public void SetOvertypeModeEnabled(bool enabled);Включает замену следующей кодовой точки на пути пользовательского ввода при отсутствии выделения. Не меняет семантику программного InsertTextAtCaret: тот продолжает вставлять. Для точной замены из кода задайте диапазон удаления явно.
| Имя | Тип | По умолчанию |
|---|---|---|
enabled | bool | — |
enabledВключить настройку режима ввода/визуализации; текст автоматически не преобразуется.
SetPlaceholdervoid
public void SetPlaceholder(string text);Подсказка пустого редактора, отдельно от Text. GetPlaceholder возвращает исходную строку; отображение использует перевод UI. Не участвует в сохранении, поиске документа или истории его содержимого.
| Имя | Тип | По умолчанию |
|---|---|---|
text | string | — |
textИсходная строка подсказки пустого редактора, отдельно от документа.
SetScrollPastEndOfFileEnabledvoid
public void SetScrollPastEndOfFileEnabled(bool enable);Разрешает дополнительное место прокрутки после конца текста. Не добавляет пустые строки в документ и не увеличивает GetLineCount.
| Имя | Тип | По умолчанию |
|---|---|---|
enable | bool | — |
enableВключить соответствующую настройку плавности или пространства после конца.
SetSearchFlagsvoid
public void SetSearchFlags(uint flags);Задаёт флаги визуальной подсветки. Не заменяет flags, явно переданные в Search, и не запускает поиск. После изменения вызовите QueueRedraw. Направление Backwards относится к обходу Search, а не к порядку рисования совпадений.
| Имя | Тип | По умолчанию |
|---|---|---|
flags | uint | — |
flagsФлаги MatchCase/WholeWords для визуальной подсветки; Backwards задаёт направление только в Search.
SetSearchTextvoid
public void SetSearchText(string searchText);Задаёт строку визуальной подсветки поиска, не выполняя Search и не меняя выделение. Пустая строка отключает подсветку. Setter сам не вызывает перерисовку: после изменения настроек вызовите QueueRedraw.
| Имя | Тип | По умолчанию |
|---|---|---|
searchText | string | — |
searchTextТекст визуальной подсветки; пустая строка очищает подсветку.
SetSelectingEnabledvoid
public void SetSelectingEnabled(bool enable);Разрешает выделение текста. Отключение снимает существующие выделения, но не блокирует перемещение курсора через Select и не делает документ read-only. Editable управляется отдельно.
| Имя | Тип | По умолчанию |
|---|---|---|
enable | bool | — |
enableРазрешить выделение; отключение снимает существующие выделения.
SetSelectionHandleEnabledvoid
public void SetSelectionHandleEnabled(bool enable);Включает экранные маркеры управления выделением для сенсорного ввода. Не включает само выделение: оно управляется SelectingEnabled. Не относится к числу курсоров и не заменяет CaretMultiple.
| Имя | Тип | По умолчанию |
|---|---|---|
enable | bool | — |
enableВключить описанное поведение; не меняет содержимое Text.
SetSelectionMode2 перегрузки
public void SetSelectionMode(TextEdit.SelectionMode mode);Задаёт режим обработки выделения. Не перемещает курсор, не создаёт и не снимает выделение. Для диапазона используйте Select, для снятия — Deselect; режим Word сам не выделяет слово. Перегрузка с line, column и caretIndex игнорирует эти три аргумента; используйте вариант только с mode.
| Имя | Тип | По умолчанию |
|---|---|---|
mode | TextEdit.SelectionMode | — |
modeРежим обработки выделения; назначение не выделяет текст.
public void SetSelectionMode(TextEdit.SelectionMode mode, int line, int column, int caretIndex);Задаёт режим обработки выделения. Не перемещает курсор, не создаёт и не снимает выделение. Для диапазона используйте Select, для снятия — Deselect; режим Word сам не выделяет слово. Перегрузка с line, column и caretIndex игнорирует эти три аргумента; используйте вариант только с mode.
| Имя | Тип | По умолчанию |
|---|---|---|
mode | TextEdit.SelectionMode | — |
line | int | — |
column | int | — |
caretIndex | int | — |
modeРежим обработки выделения; назначение не выделяет текст.
lineИгнорируется этой перегрузкой; используйте SetSelectionMode(mode).
columnИгнорируется этой перегрузкой; используйте SetSelectionMode(mode).
caretIndexИгнорируется этой перегрузкой; используйте SetSelectionMode(mode).
SetSelectionOriginColumnvoid
public void SetSelectionOriginColumn(int column, int caretIndex = 0);Перемещает колонку якоря в пределах его строки. Колонка — кодовая точка Unicode. Если якорь совпадёт с курсором, выделение снимается; setter сам не включает выделение.
| Имя | Тип | По умолчанию |
|---|---|---|
column | int | — |
caretIndex | int | 0 |
columnКолонка в кодовых точках Unicode, не UTF-16-индекс.
caretIndexТекущий индекс курсора; -1 разрешён только методами, явно описывающими обработку всех курсоров.
SetSelectionOriginLinevoid
public void SetSelectionOriginLine(int line, bool canBeHidden = true, int wrapIndex = -1, int caretIndex = 0);Перемещает якорь указанного курсора на логическую строку с ограничением по документу. Не создаёт активное выделение сам по себе; для задания обеих границ используйте Select. canBeHidden и wrapIndex управляют выбором скрытой строки и сохранением визуальной позиции.
| Имя | Тип | По умолчанию |
|---|---|---|
line | int | — |
canBeHidden | bool | true |
wrapIndex | int | -1 |
caretIndex | int | 0 |
lineЛогическая строка с индексом от 0.
canBeHiddenРазрешить скрытую строку; false ищет подходящую видимую.
wrapIndexВизуальный перенос для сохранения X; -1 использует числовую колонку.
caretIndexТекущий индекс курсора; -1 разрешён только методами, явно описывающими обработку всех курсоров.
SetShortcutKeysEnabledvoid
public void SetShortcutKeysEnabled(bool enabled);Включает встроенные сочетания команд редактирования и их обозначения в контекстном меню. Не отключает весь ввод с клавиатуры и не блокирует программные вызовы команд. Для запрета пользовательского изменения текста используйте Editable = false.
| Имя | Тип | По умолчанию |
|---|---|---|
enabled | bool | — |
enabledВключить описанное поведение интерфейса.
SetSmoothScrollEnabledvoid
public void SetSmoothScrollEnabled(bool enable);Включает плавную вертикальную прокрутку. Не меняет единицы ScrollVertical и не гарантирует анимацию любого программного SetVScroll.
| Имя | Тип | По умолчанию |
|---|---|---|
enable | bool | — |
enableВключить соответствующую настройку плавности или пространства после конца.
SetStructuredTextBidiOverridevoid
public void SetStructuredTextBidiOverride(TextServer.StructuredTextParser parser);Parser структурированного текста для смешанного LTR/RTL: URI, путь, email, список и другие поддерживаемые режимы. Это управление порядком отображения разделителей, не преобразование документа в другую кодировку. Параметры parser задаются отдельно.
| Имя | Тип | По умолчанию |
|---|---|---|
parser | TextServer.StructuredTextParser | — |
parserРежим BiDi-разбора структурированного текста.
SetStructuredTextBidiOverrideOptionsvoid
public void SetStructuredTextBidiOverrideOptions(Reckfell.Collections.Array args);Общий Array параметров BiDi-parser. Setter сравнивает содержимое и пропускает равное; простое назначение Duplicate с прежними значениями не отсоединяет старый массив. Изменение массива на месте не запускает пересчёт текста. Передавайте отдельный подготовленный массив и новый массив с изменённым содержимым при обновлении.
| Имя | Тип | По умолчанию |
|---|---|---|
args | Reckfell.Collections.Array | — |
argsОбщий Array параметров parser; не меняйте его на месте после назначения.
SetSyntaxHighlightervoid
public void SetSyntaxHighlighter(SyntaxHighlighter syntaxHighlighter);Ресурс подсветки этого редактора; null отключает подсветку. Используйте отдельный экземпляр для каждого TextEdit: ресурс хранит только один контекст. Повторное присваивание того же ресурса пропускается и не заменяет ClearHighlightingCache/EmitChanged.
| Имя | Тип | По умолчанию |
|---|---|---|
syntaxHighlighter | SyntaxHighlighter | — |
syntaxHighlighterОтдельный ресурс для этого редактора или null для отключения.
SetTabInputModevoid
public void SetTabInputMode(bool enabled);Управляет обработкой клавиши Tab редактором. Не преобразует уже сохранённые символы tab, не задаёт их ширину и не является режимом автоперевода отступов в пробелы.
| Имя | Тип | По умолчанию |
|---|---|---|
enabled | bool | — |
enabledВключить настройку режима ввода/визуализации; текст автоматически не преобразуется.
SetTabSizevoid
public void SetTabSize(int size);Задаёт положительную ширину табуляции для раскладки и расчёта отступа. Не заменяет символы табуляции пробелами и не меняет Text. Размер должен быть больше 0.
| Имя | Тип | По умолчанию |
|---|---|---|
size | int | — |
sizeПоложительная ширина табуляции.
SetTextvoid
public void SetText(string text);Полный текст с разделителями строк \n. Присваивание заменяет документ, испускает TextSet без TextChanged и допускает Undo при включённой истории. Для загрузки нового документа затем явно очистите историю и отметьте сохранённую версию.
| Имя | Тип | По умолчанию |
|---|---|---|
text | string | — |
textВставляемый или назначаемый текст; \n создаёт логические строки.
SetTextDirectionvoid
public void SetTextDirection(Control.TextDirection direction);Базовое направление письма: Inherited следует раскладке Control, Auto выбирает его по тексту, Ltr/Rtl задают явно. Не переводит и не разворачивает сохранённую строку Text. Порядок символов в документе остаётся логическим.
| Имя | Тип | По умолчанию |
|---|---|---|
direction | Control.TextDirection | — |
directionInherited, Auto, Ltr или Rtl без изменения порядка исходного текста.
SetTooltipRequestFuncvoid
public void SetTooltipRequestFunc(Callable callback);Задаёт callback вида (string word) -> string для подсказки слова под указателем. Назначение сохраняет обработчик, не вызывает его сразу. Пустой Callable возвращает стандартную обработку Control. Не меняет текст, не выполняет поиск и не означает, что подсказка уже видна. Обработчик должен оставаться действительным, пока установлен.
| Имя | Тип | По умолчанию |
|---|---|---|
callback | Callable | — |
callbackОбработчик (string word) -> string; пустой Callable сбрасывает его.
SetUseCustomWordSeparatorsvoid
public void SetUseCustomWordSeparators(bool enabled);Включает CustomWordSeparators для формирования границ слов. Настраивается независимо от UseDefaultWordSeparators; обе группы могут использоваться вместе. Не переключает режим WholeWords у Search.
| Имя | Тип | По умолчанию |
|---|---|---|
enabled | bool | — |
enabledВключить соответствующую группу разделителей независимо от другой группы.
SetUseDefaultWordSeparatorsvoid
public void SetUseDefaultWordSeparators(bool enabled);Включает стандартные разделители слов текстовой системы. Отключение не включает пользовательские автоматически: UseCustomWordSeparators задаётся отдельно. Не меняет проверки границ WholeWords в Search.
| Имя | Тип | По умолчанию |
|---|---|---|
enabled | bool | — |
enabledВключить соответствующую группу разделителей независимо от другой группы.
SetVScrollvoid
public void SetVScroll(double value);Вертикальное смещение в единицах визуальных строк, допускающее дробную часть. Это не пиксели и не всегда логический номер строки: при переносах используйте GetScrollPosForLine. Getter возвращает фактическое ограниченное значение.
| Имя | Тип | По умолчанию |
|---|---|---|
value | double | — |
valueВертикальное смещение в визуальных строках; допускается дробная часть.
SetVScrollSpeedvoid
public void SetVScrollSpeed(float speed);Скорость плавной вертикальной прокрутки, не меньше 1. Не устанавливает текущее смещение и не является высотой строки или величиной горизонтального шага.
| Имя | Тип | По умолчанию |
|---|---|---|
speed | float | — |
speedСкорость плавной вертикальной прокрутки, не меньше 1.
SetVirtualKeyboardEnabledvoid
public void SetVirtualKeyboardEnabled(bool enabled);Разрешает экранную клавиатуру, если её поддерживает текущая платформа. Назначение true само не открывает клавиатуру. Показ при получении фокуса отдельно регулируется VirtualKeyboardShowOnFocus; для редактирования требуется Editable. Не создаёт собственную клавиатуру средствами UI.
| Имя | Тип | По умолчанию |
|---|---|---|
enabled | bool | — |
enabledВключить описанное поведение интерфейса.
SetVirtualKeyboardShowOnFocusvoid
public void SetVirtualKeyboardShowOnFocus(bool showOnFocus);Разрешает запрос экранной клавиатуры при получении фокуса. Нужны VirtualKeyboardEnabled, Editable и поддержка платформы. false отключает именно показ по фокусу, а не все другие способы открытия клавиатуры.
| Имя | Тип | По умолчанию |
|---|---|---|
showOnFocus | bool | — |
showOnFocusРазрешить запрос экранной клавиатуры при получении фокуса.
SkipSelectionForNextOccurrencevoid
public void SkipSelectionForNextOccurrence();Переносит последнее по индексу выделение к следующему совпадению, сохраняя более ранние курсоры. Без выделения переходит к началу следующего совпадения слова без его выделения. Требует SelectingEnabled; перед вызовом включите CaretMultiple: иначе команда может лишь снять выделение, не переместив курсор. Поиск буквальный, учитывает регистр, допускает часть слова и циклический переход.
StartActionvoid
public void StartAction(TextEdit.EditAction action);Начинает/продолжает группу действий Typing, Backspace или Delete для истории пользовательского редактирования. None завершает текущую такую группу. Для обычной команды из нескольких программных изменений удобнее BeginComplexOperation/EndComplexOperation с try/finally.
| Имя | Тип | По умолчанию |
|---|---|---|
action | TextEdit.EditAction | — |
actionTyping, Backspace или Delete; None завершает группу действий.
SwapLinesvoid
public void SwapLines(int fromLine, int toLine);Меняет текст двух существующих логических строк и переносит связанные позиции курсоров/якорей. Одна операция Undo; одинаковые индексы ничего не меняют. Это не сортировка всего документа.
| Имя | Тип | По умолчанию |
|---|---|---|
fromLine | int | — |
toLine | int | — |
fromLineСуществующая логическая строка; в Search — строка начала обхода.
toLineВторая существующая строка для перестановки.
TagSavedVersionvoid
public void TagSavedVersion();Помечает текущую GetVersion как сохранённую. Не записывает файл; вызывайте после успешного сохранения приложением или после загрузки нового документа и очистки его истории.
Undovoid
public void Undo();Отменяет последнюю операцию или группу BeginComplexOperation. При Editable = false ничего не делает, даже если HasUndo = true. Восстанавливает текст и состояние курсоров согласно истории.
_Backspacevoid
public virtual void _Backspace(int caretIndex);Hook собственной реализации Backspace. Вызывается до стандартной проверки Editable, поэтому проверяйте её сами при необходимости. Не вызывайте Backspace из этого hook — это повторно вызовет тот же hook. Базовое C#-тело пустое; стандартное удаление через base._Backspace не выполняется.
| Имя | Тип | По умолчанию |
|---|---|---|
caretIndex | int | — |
caretIndexИндекс курсора; у Backspace -1 обрабатывает весь подходящий набор.
_Copyvoid
public virtual void _Copy(int caretIndex);Переопределяемый обработчик команды Copy; вызывается вместо встроенной реализации, до её проверок и работы с буфером. Реализуйте нужные проверки индекса, Editable и платформы самостоятельно. Базовый C#-метод пуст: base._Copy не запускает стандартную команду. Не вызывайте Copy из обработчика для продолжения — это повторно вызовет тот же обработчик.
| Имя | Тип | По умолчанию |
|---|---|---|
caretIndex | int | — |
caretIndexИндекс, переданный командой; -1 означает все курсоры. Пользовательский обработчик отвечает за проверку значения.
_Cutvoid
public virtual void _Cut(int caretIndex);Переопределяемый обработчик команды Cut; вызывается вместо встроенной реализации, до её проверок и работы с буфером. Реализуйте нужные проверки индекса, Editable и платформы самостоятельно. Базовый C#-метод пуст: base._Cut не запускает стандартную команду. Не вызывайте Cut из обработчика для продолжения — это повторно вызовет тот же обработчик.
| Имя | Тип | По умолчанию |
|---|---|---|
caretIndex | int | — |
caretIndexИндекс, переданный командой; -1 означает все курсоры. Пользовательский обработчик отвечает за проверку значения.
_HandleUnicodeInputvoid
public virtual void _HandleUnicodeInput(int unicodeChar, int caretIndex);Hook обработки одной Unicode-кодовой точки ввода и индекса курсора. Это не C# char половины суррогатной пары. Переопределение заменяет стандартный путь вставки/замены; самостоятельно учитывайте Editable, выделение и overtype. Не вызывайте hook вручную вместо обычного InsertTextAtCaret.
| Имя | Тип | По умолчанию |
|---|---|---|
unicodeChar | int | — |
caretIndex | int | — |
unicodeCharОдна Unicode-кодовая точка, не отдельная UTF-16-половина emoji.
caretIndexИндекс курсора; у Backspace -1 обрабатывает весь подходящий набор.
_Pastevoid
public virtual void _Paste(int caretIndex);Переопределяемый обработчик команды Paste; вызывается вместо встроенной реализации, до её проверок и работы с буфером. Реализуйте нужные проверки индекса, Editable и платформы самостоятельно. Базовый C#-метод пуст: base._Paste не запускает стандартную команду. Не вызывайте Paste из обработчика для продолжения — это повторно вызовет тот же обработчик.
| Имя | Тип | По умолчанию |
|---|---|---|
caretIndex | int | — |
caretIndexИндекс, переданный командой; -1 означает все курсоры. Пользовательский обработчик отвечает за проверку значения.
_PastePrimaryClipboardvoid
public virtual void _PastePrimaryClipboard(int caretIndex);Переопределяемый обработчик команды PastePrimaryClipboard; вызывается вместо встроенной реализации, до её проверок и работы с буфером. Реализуйте нужные проверки индекса, Editable и платформы самостоятельно. Базовый C#-метод пуст: base._PastePrimaryClipboard не запускает стандартную команду. Не вызывайте PastePrimaryClipboard из обработчика для продолжения — это повторно вызовет тот же обработчик.
| Имя | Тип | По умолчанию |
|---|---|---|
caretIndex | int | — |
caretIndexИндекс, переданный командой; -1 означает все курсоры. Пользовательский обработчик отвечает за проверку значения.
Сигналы и события7
CaretChangedСобытие
public event Action CaretChanged;Отложенное уведомление изменения положения курсоров. Не считайте его универсальным сигналом любого изменения выделения: изменение только якоря может происходить без него. Синхронизируйте модель и после собственных программных операций.
GutterAddedСобытие
public event Action GutterAdded;Поле добавлено; сигнал без индекса. Определения и данные строк уже изменены. После вставки пересчитайте сохранённые индексы по модели приложения.
GutterClickedСобытие
public event TextEdit.GutterClickedEventHandler GutterClicked;Нажатие/касание показанного поля: передаются логическая строка и индекс gutter. Флаги Clickable служат подсказкой курсора и не гарантируют фильтрацию сигнала; проверьте, разрешено ли действие для этой ячейки. Не считайте событие автоматическим переключением breakpoint или сохранением данных.
| Имя | Тип | По умолчанию |
|---|---|---|
line | long | — |
gutter | long | — |
lineИндекс логической строки от 0 до GetLineCount() - 1.
gutterТекущий индекс поля от 0 до GetGutterCount() - 1.
GutterRemovedСобытие
public event Action GutterRemoved;Поле удалено; сигнал без индекса. Старые индексы следующих полей уже сдвинуты. Это не удаление строки документа.
LinesEditedFromСобытие
public event TextEdit.LinesEditedFromEventHandler LinesEditedFrom;Уведомление затронутых логических строк, в том числе при программных правках и работе IME. При удалении fromLine может быть больше toLine; это не гарантированно отсортированный диапазон и не сообщение о записи файла. Для диапазона обновления нормализуйте границы и учитывайте новое число строк.
| Имя | Тип | По умолчанию |
|---|---|---|
fromLine | long | — |
toLine | long | — |
fromLineНачальная логическая строка удаления; в LinesEditedFrom — первая сообщённая граница, которая может быть больше второй.
toLineКонечная логическая строка удаления; в LinesEditedFrom — вторая сообщённая граница.
TextChangedСобытие
public event Action TextChanged;Отложенное уведомление правок текста; несколько синхронных операций могут объединиться в один сигнал. При обработке читайте текущий Text. Присваивание Text/SetText и Clear используют TextSet и сами не создают новый TextChanged; ранее поставленное в очередь уведомление может ещё прийти.
TextSetСобытие
public event Action TextSet;Назначен полный текст через Text/SetText или вызван Clear. Программное назначение не заменяется TextChanged; для загрузки модели обрабатывайте TextSet или обновляйте её явно. Сигнал не означает пользовательский ввод или сохранение файла.
TextEdit.CaretTypeEnum
TextEdit.EditAction
| Значение | Описание |
|---|---|
Backspace = 2 | Обратное действие удаления. |
Delete = 3 | Действие прямого удаления. |
None = 0 | Текущих действий нет. Действия |
Typing = 1 | Действие ввода текста. |
TextEdit.GutterType
| Значение | Описание |
|---|---|
Custom = 2 | Если желоб настроен как пользовательский с помощью |
Icon = 1 | Если желоб установлен в качестве значка с помощью метода |
String = 0 | Если для поля ввода задано значение строки с помощью метода |
TextEdit.LineWrappingMode
| Значение | Описание |
|---|---|
Boundary = 1 | Перенос строк происходит на границе элемента управления, за пределами того, что обычно видно. |
None = 0 | Перенос строк отключен. |
TextEdit.MenuItems
| Значение | Описание |
|---|---|
Clear = 3 | Удаляет весь текст |
Copy = 1 | Копирует выделенный текст. |
Cut = 0 | Вырезает (копирует и очищает) выделенный текст. |
DirAuto = 9 | Устанавливает автоматическое направление текста. |
DirInherited = 8 | Устанавливает унаследованное направление текста. |
DirLtr = 10 | Устанавливает направление текста слева направо. |
DirRtl = 11 | Устанавливает направление текста справа налево. |
DisplayUcc = 12 | Переключает отображение управляющего символа. |
EmojiAndSymbol = 30 | Открывает системный выбор эмодзи и символов. |
InsertAlm = 21 | Вставляет символ арабской буквы (ALM). |
InsertFsi = 24 | Вставляет первый сильный изолятный (FSI) символ. |
InsertLre = 16 | Вставляет начало символа вставки слева направо (LRE). |
InsertLri = 22 | Вставляет изолирующий символ слева направо (LRI). |
InsertLrm = 14 | Вставляет символ знака слева направо (LRM). |
InsertLro = 18 | Вставляет начало символа переопределения слева направо (LRO). |
InsertPdf = 20 | Вставляет символ форматирования направления поп-арта (PDF). |
InsertPdi = 25 | Вставляет символ изоляции направления поп-музыки (PDI). |
InsertRle = 17 | Вставляет начало символа вставки справа налево (RLE). |
InsertRli = 23 | Вставляет изолирующий символ справа налево (RLI). |
InsertRlm = 15 | Вставляет символ с письмом справа налево (RLM). |
InsertRlo = 19 | Вставляет начало символа переопределения справа налево (RLO). |
InsertShy = 29 | Вставляет символ мягкого дефиса (SHY). |
InsertWj = 28 | Вставляет символ объединения слов (WJ). |
InsertZwj = 26 | Вставляет символ объединения нулевой ширины (ZWJ). |
InsertZwnj = 27 | Вставляет символ нулевой ширины, не являющийся объединяющим (ZWNJ). |
Max = 31 | Представляет размер перечисления *Действия Никто |
Paste = 2 | Вставляет текст из буфера обмена поверх выделенного текста (или в позицию курсора). |
Redo = 6 | Повторяет предыдущее действие. |
SelectAll = 4 | Выделяет весь текст |
SubmenuInsertUcc = 13 | Идентификатор "Включить" Control Символ" субмену. |
SubmenuTextDir = 7 | Идентификатор подменю «Направление написания текста». |
Undo = 5 | Отменяет предыдущее действие. |
TextEdit.SearchFlags
| Значение | Описание |
|---|---|
Backwards = 4 | Поиск от конца к началу. |
MatchCase = 1 | При поиске учитывайте регистр. |
WholeWords = 2 | При поиске сопоставляйте целые слова. |
TextEdit.SelectionMode
| Значение | Описание |
|---|---|
Line = 4 | Выделять целые строки, как если бы пользователь щелкнул три раза. |
None = 0 | Не выбирать. |
Pointer = 2 | Выбирайте отдельные символы, как если бы пользователь щелкнул один раз. |
Shift = 1 | Выбрать так, как будто нажата клавиша |
Word = 3 | Выделяйте целые слова, как если бы пользователь дважды щелкнул по ним. |
Свойства темы
Это ключи ресурсов Theme, а не свойства C# класса. Используйте методы GetTheme…() и AddTheme…Override() у Control с соответствующим типом значения.
| Ключ и тип | Описание |
|---|---|
background_colorColor | Устанавливает фоновый цвет Color(0, 0, 0, 0) |
caret_background_colorColor |
Color(0, 0, 0, 1) |
caret_colorColor |
Color(0.875, 0.875, 0.875, 1) |
current_line_colorColor | Фон Color(0.25, 0.25, 0.26, 0.8) |
font_colorColor | Устанавливает шрифт Color(0.875, 0.875, 0.875, 1) |
font_outline_colorColor | Оттенок контура текста Color(0, 0, 0, 1) |
font_placeholder_colorColor | Font цвет для Color(0.875, 0.875, 0.875, 0.6) |
font_readonly_colorColor | Устанавливает шрифт Color(0.875, 0.875, 0.875, 0.5) |
font_selected_colorColor | Устанавливает Color(0, 0, 0, 0) |
search_result_border_colorColor |
Color(0.3, 0.3, 0.3, 0.4) |
search_result_colorColor |
Color(0.3, 0.3, 0.3, 1) |
selection_colorColor | Устанавливает цвет подсветки Color(0.5, 0.5, 0.5, 1) |
word_highlighted_colorColor | Устанавливает выделение Color(0.5, 0.5, 0.5, 0.25) |
caret_widthint | Ширина каретки в пикселях. Большие значения можно использовать для улучшения доступности, обеспечивая легкую видимость каретки или для обеспечения согласованности с большим размером шрифта. Если установлено значение 1 |
line_spacingint | Дополнительный вертикальный интервал между строками (в пикселях), интервал добавляется к спуску строки. Это значение может быть отрицательным. По умолчанию:4 |
outline_sizeint | Размер контура текста.
Примечание: При использовании шрифта с включенным 0 |
wrap_offsetint | Задает дополнительный отступ для ширины переноса строки. По умолчанию:10 |
fontFont | Устанавливает |
font_sizeint | Устанавливает размер шрифта по умолчанию. |
spaceTexture2D | Устанавливает пользовательскую |
tabTexture2D | Устанавливает пользовательскую |
caret_move_rejected_soundAudioStream | Играл, когда попытался переместить халат с помощью стрелочных ключей, [КБд] Дом[/kbd], [kbd]В конце[/kbd], [КБд.[/kbd], или [КБд вниз[/kbd], но ни одна из забот не шевелится, так как они уже в начале/конце с текстом. |
caret_moved_soundAudioStream | Играл, когда хитрость перемещалась с помощью стрелочных клавиш, [КБд] Дом[/kbd], [kbd]В конце[/kbd], [КБд.[/kbd], [КБд вниз[/kbd], или мышиные щелчки. Сосредоточься. |
focus_soundAudioStream | Играл, когда это |
text_change_rejected_soundAudioStream | Воспроизведение при отклонении изменения текста (например, при нажатии заднего пространства в отсутствие текста). |
text_changed_soundAudioStream | При успешном изменении текста с помощью ввода клавиатуры (физического или виртуального). Сосредоточься |
focusStyleBox | Устанавливает |
normalStyleBox | |
read_onlyStyleBox | Устанавливает |