1
0
mirror of https://github.com/salexdv/bsl_console.git synced 2024-11-28 08:48:48 +02:00

Метод для обновления всего текста редактора с игнорированием режима "Только просмотр"

This commit is contained in:
salexdv 2020-09-27 14:18:37 +03:00
parent e5a717e345
commit 56666d2894
2 changed files with 25 additions and 0 deletions

View File

@ -34,6 +34,7 @@
| Функция | Описание |
| ------------------------------ | --------------------------------------------------------------------------------------------- |
| `setText` | Устанавливает переданный текст в текущую или определенную позицию |
| `updateText` | Полностью заменяет весь текст редактора, игнорируя при этом режим *Только просмотр* |
| `getText` | Возвращает весь текст из окна редактора |
| `eraseText` | Удаляет весь текст редактора |
| `getQuery` | Определяет текст запроса в текущей позиции и возвращает его вместе с областью текста |

View File

@ -7,6 +7,7 @@ define(['bslGlobals', 'bslMetadata', 'snippets', 'bsl_language', 'vs/editor/edit
decorations = [];
contextData = new Map();
generateModificationEvent = false;
readOnlyMode = false;
sendEvent = function(eventName, eventParams) {
@ -22,6 +23,28 @@ define(['bslGlobals', 'bslMetadata', 'snippets', 'bsl_language', 'vs/editor/edit
}
updateText = function(txt, range, usePadding) {
readOnly = readOnlyMode;
modEvent = generateModificationEvent;
if (readOnly)
setReadOnly(false);
if (modEvent)
enableModificationEvent(false);
eraseText();
setText(txt, range, usePadding);
if (modEvent)
enableModificationEvent(true);
if (readOnly)
setReadOnly(true);
}
eraseText = function () {
setText('', editor.getModel().getFullModelRange(), false);
@ -74,6 +97,7 @@ define(['bslGlobals', 'bslMetadata', 'snippets', 'bsl_language', 'vs/editor/edit
setReadOnly = function (readOnly) {
readOnlyMode = readOnly;
editor.updateOptions({ readOnly: readOnly })
}