Класс предназначен для работы с текстом. Чтение/запись в файл или строку, редактирование данных, манипуляции с блоками, форматирование текста. TEXTEDIT используется как базовый класс для функции memoedit() и для класса MEDIT.
<ClassName> | TEXTEDIT |
<Path> | String, путь к редактируемому файлую |
<FileName> | String, имя файла. |
<ColorSpec> | String, цветовая спецификация. Если параметр <color> не задан, |
атрибут принимает значение SetColor() | |
"clr1, clr2, clr3, clr4" | |
clr1 - основной цвет символа | |
clr2 - цвет строки EOF | |
clr3 - цвет выделенных строк/подстрок | |
clr4 - цвет найденой подстроки | |
<nTop> | координаты области редакторования TEXTEDIT, задается параметром <Lrow> |
<nLeft> | координаты области редакторования TEXTEDIT, задается параметром <Lcol> |
<nBottom> | координаты области редакторования TEXTEDIT, задается параметром <Rrow> |
<nRight> | координаты области редакторования TEXTEDIT, задается параметром <Rcol> |
<Lines> | Numeric, количество строк в редактируемом объекте TEXTEDIT |
<Line> | Numeric, номер текущей строки. |
<Pos> | Numeric, позиция курсора в строке. |
<ColWin> | Numeric, позиция курсора в строке в области редактирования. |
<RowWin> | Numeric, позиция курсора - строка - в области редактирования. |
<Updated> | Logical, TRUE, если данные изменены и изменения не сохранены. |
<MarginLeft> | Numeric, левая граница текста, по умолчанию TE_MARGIN_LEFT |
<MarginRight> | Numeric, правая граница, по умолчанию TE_MARGIN_RIGHT |
<TabSize> | Numeric, шаг табуляции, по умолчанию TE_TABSIZE |
<Hyphen> | Logical, если TRUE, то при форматировании текства в словах возможен перено, по умолчанию TE_HYPHEN |
<MaxStrings> | Numeric, максимальное количество строк в буфере редактирования TEXTEDIT, по умолчанию TE_MAXSTRINGS |
<TabPack> | Logical, если TRUE, символы "пробел" по возможности упакуются в <Tab> |
По умолчанию set("edit_tabpack") | |
<InFocus> | Logical, если TRUE, объект в фокусе. |
<MkBlock> | Logical, если TRUE, отмечен какой-либо блок. |
<StrBlock> | Logical, если TRUE, отмечен строчный блок. |
<RectBlock> | Logical, если TRUE, отмечен прямоугольный блок. |
<KoordBlock> | Array of numeric value, координаты блока в буфере редактирования {<nTop>, <nLeft>, <nBottom>, <nRight>} или |
{<nBottom>, <nRight>, <nTop>, <nLeft>} | |
<LenUndo> | Numeric, размер буфера отката (undo). По умолчанию 100. |
<Charset> | String, кодировка. |
<EofString> | String, текст строки <end of file>. По умолчанию <EOF> |
<lEofString> | Logical, если TRUE, показывать строку <EofString> по достижени |
конца буфера редактирования. | |
<HighLightColor> | MAP, АМ, содержаший номера строк отображаемых специально заданным цветом. |
<Nstyle> | Logical, если TRUE, каждая строка текста в области редактирования содержит порядковый номер. |
<EdBuffer> | Array, array of string to edit. Буфер редактирования. |
ADDTOCLIPBOARD | Добавить блок в буфер. |
APPLYKEY | Выполнить кодовый блок. |
BACKSPACE | Удалить символ слева от курсора. |
BEGINBLOCK | Начать отметку блока. |
BOTTOM | Перемещение на последнюю строку буфера редактирования. |
CANCELBLOCK | Снять отметку блока. |
CENTERLINE | Центрировать строку. |
CLEAR | Очистка буфера редактирования. |
COPYBLOCK | Копировать блок. |
COPYTOCLIPBOARD | Копировать блок в буфер. |
CURWORD | Дать текущее слово. |
DELEND | Удалить все символы до конца строки. |
DELETE | Удалить символ. |
DELETEBLOCK | Удалить блок. |
DELETELINE | Удалить строку. |
DELHOME | Удалить все символы до начала строки. |
DELLEFT | Удалить символ слева от курсора. |
DELRIGHT | Удалить символ. |
DOWN | Перемещение вниз на одну строку. |
DRAW | Вставить один из символов псевдографики. |
END | Перемещение в конец строки. |
ENDBLOCK | Закончить отметку блока. |
FIND | Поиск подстроки. |
FINDNEXT | Продолжение поиска вперед по тексту. |
FINDPREV | Продолжение поиска назад по тексту. |
FORMATLINE | Форматировать строку. |
FORMATPART | Форматировать абзац. |
GOTOLINE | Перемещение на заданную строку. |
GOTOPOS | Перемещение на новую колонку. |
HANDLEKEY | Обработчик кодов. |
HIGHLIGHTADD | Выделить строку цветом. |
HIGHLIGHTDEL | Отказаться от выделения строки заданным цветом. |
HOME | Перемещение на начало строки. |
IDENTITY | Поиск парного( или идентичного) символа. |
INSERT | Вставить символ или подстроку. |
INSERTLINE | Вставить новую строку. |
INSMACRO | Выполнить макро-команду и вставить результат в буфер редактирования. |
INSTEMPL | Заменить шаблон на подстроку. |
KILLNUMSTYLE | Снять стиль "NUMERIC" |
LEFT | Перемещение влево на одну позицию. |
LOADBLOCK | Загрузка блока. |
LOADFILE | Загрузка файла. |
LOADSTRING | Загрузка строки. |
MATCHSTRUCT | Поиск элементов структуры. |
MOVEBLOCK | Переместить блок. |
MOVETOCLIPBOARD | Переместить блок в буфер. |
NEWLINE | Переход на новую строку. |
NEXTWORD | Следующее слово. |
OVERSTRIKE | Заменить символ или подстроку. |
PAGEDOWN | Перемещение вниз на одну страницу. |
PAGEUP | Перемещение вверх на одну страницу. |
PASTEFROMCLIPBOARD | Вставить блок из буфера. |
PREVWORD | Предыдущее слово. |
Печать. | |
PRINTBLOCK | Печать блока. |
REFRESH | Обновить область редактирования TEXTEDIT. |
REPLACE | Поиск с заменой. |
RIGHT | Перемещение вправо на 1 позицию. |
SAVEBLOCK | Записать блок в файл. |
SAVEFILE | Сохранение в файл. |
SAVESTRING | Запись в строку |
SETCHARSET | Установить новую колировку. |
SETFOCUS | Установить/снять фокус |
SETKEY | Установить блок кода, связанный с кодом клавиши. |
SETNEWCOLOR | Установить новую цветовую спецификацию. |
SETNUMSTYLE | Установить/снять стиль "NUMERIC" |
TEXTEDITNEW | Конструктор объекта TEXTEDIT. |
TOP | Перемещение на начало. |
UNDO | Выпольнить откат. |
UP | Перемещение вверх на одну строку. |
WORDLEFT | Перемещение влево на одно слово. |
WORDRIGHT | Перемещение вправо на одно слово. |
WRITEUNDO | Сохранить данные для операции "откат". |
AddToClipboard(<aClipbrd>) --> NIL
AddToClipboard() добавляет отмеченный блок(строчный или прямоугольный) в конец буфер <aClipbrd>, не замещая при этом содержимое буфера. <aClipbrd> - это не системный буфер. Размер буфера редактирования <::Edbuffer> не изменяется. Отметка блока не снимается. Позиция курсора не меняется.
ApplyKey(<nKey>) --> nResult
ApplyKey() выполняет кодовый блок ассоциированный с кодом <nKey>, который содержится в словаре, созданном в SetKey(), и возвращает <nResult>.
BackSpace( [<lUndo>] ) --> NIL
BackSpace() удаляет в текущей строке <::Line> символ слева от <::Pos>.
BeginBlock(<lType>[, <lUndo>]) --> NIL
BeginBlock() снимает отметку блока (если он был уже отмечен) и отмечает начало нового строчноги или прямоугольного блока.
Bottom([<lUndo>]) --> NIL
Bottom() перемещает указатель на последнюю строку буфера редактирования. Атрибут <::Line> принимает значение равное <::Lines>, а <::RowWin> значение, равное <::nBottom>-<::nTop>.
CancelBlock([<lUndo>]) --> NIL
CancelBlock() снимает отметку блока. Атрибуты <::MkBlock>, <::StrBlock>, <::RectBlock> принимают значение FALSE.
CenterLine([<lUndo>] ) --> NIL
CenterLine() сентрирует текущую строку <::Line>. Позиция курсора в строке не меняется.
Clear() --> NIL
Clear() очищает буфер редактирования и сбрасывает все счетчики. Размер массива <::EdBuffer> усекается то 1 и этому элементу присваивается значение - пустая строка.
Внимание! Этот метод не сохраняет данные для операции отката.
CopyBlock([<lMove>[, <lUndo>]]) --> .T. || .F.
CopyBlock() перемещает курсор на начало(строка и колонка) блока и копирует или перемещает отмеченный блок на новое место, определенное текущим положением курсора: строка <::Line> и колонка <::Pos>.
Если блок не отмечен, CopyBlock() возвращает FALSE.
Когда выполняется операция "копирование", блок копируется в заданную точку и длина буфера редактирования увеличивается на длину блока(количество строк в блоке)
Операция "перемещение" аналогична опереции копирования, но блок удаляется со старого места и длина буфера редактирования не изменяется.
CopyToClipboard(<aClipbrd>) --> NIL
CopyToClipboard() копирует отмеченный блок(строчный или прямоугольный) в буфер <aClipbrd>, замещая при этом содержимое буфера. <aClipbrd> - это не системный буфер. Размер буфера редактирования <::Edbuffer> не изменяется. Отметка блока не снимается. Позиция курсора не меняется.
CurWord([<nPos>], [nLine>],[ <lUndo>]) --> sCurrentWord
CurWord() ищет слово в заданных координатах <nLine>, <nPos> и возвращает его если найдет. В противном случае возвращается пустая строка.
"Слово" определяется как последовательность символов исключая пробелы, запятые и точки.
DelEnd( [<lUndo>] ) --> NIL
DelEnd() удаляет в строке <::Line> все символы, начиная с <::Pos> и до конца.
DeleteBlock([<lUndo>]) --> .T. || .F.
DeleteBlock() перемещает курсор на начало(строка и колонка) блока и удаляет отмеченный блок из буфера редактирования. Размер <::Edbuffer> уменьшается на размер(количество строк) удаленного блока. перемещает курсор на начало(строка и колонка) блока
Если блок не был отмечен, DeleteBlock() возвращает FALSE.
DeleteLine( [<lUndo>] ) --> NIL
DeleteLine() удаляет текущую строку <::Line>, размер буфера редактирования <::Edbuffer> уменьшается <::Edbuffer> на 1.
DelHome( [<lUndo>] ) --> NIL
DelHome() удаляет все символы в строке <::Line> начиная с колонки <::Pos> до начала строки <::Line>. Атрибуты <::Pos> и <::ColWin> принимают значение 1.
DelRight( [<lUndo>] ) --> NIL
DelRight() удаляет символ в строке <::Line> и колоне <::Pos>. Атрибуты <::Pos> и <::ColWin> не изменяются.
Down([<lUndo>]) --> NIL
Down() перемещает курсор на новую строку <::Line>+1. Атрибуты <::Line> и <::RowWin> увеличиваются на 1. Если <::RowWin> больше чем нижняя граница области редактирования, то <::RowWin> принимает значение <::nBottom>-<::nTop>+1 и текст в области редактирования скроллируется вверх на 1 строку.
Draw(<lDrawMode>, <nKey>[, <lUndo>] ) --> .T. || .F.
Draw() рисует символы псевдографики в текущей позиции строки <::Line> и колонки <::Pos> в зависимости от кода нажатой клавиши, направления рисования и окружающих уже нарисованных символов.
End([<lUndo>]) --> NIL
End() перемещает курсор в конец текущей строки <::Line>. Атрибут <::Pos> принимает значение len(<::Edbuffer[::Line]>)+1.
EndBlock(<lType>[, <lUndo>]) --> NIL
EndBlock() заканчивает отметку блока - строчного или прямоугольного.
Find(<oFind>[, <lUndo>]) --> .T. || .F.
Find() осуществляет поиск подстроки или регулярного выражения в тексте. <oFind> содержит параметры поиска(выражение, направление, регистр и прочие). Если выражение найдено, курсор перемещается на начало найденого слова. Это слово выделяется специальным цветом (<clr4> из <::ColorSpec>).
Если поиск был успешен, метод возвращает TRUE, иначе возвращает FALSE.
FindNext(<oFind>[, <lUndo>]) --> .T. || .F.
FindNext() продолжает поиск начатый методом <::Find()> вперед по тексту. <oFind> содержит параметры поиска(выражение, регистр и прочие). Атрибут <::Direct> объекта <oFind> устанавливается равным 1. Если выражение найдено, курсор перемещается на начало найденого слова. Это слово выделяется специальным цветом (<clr4> из <::ColorSpec>).
FindPrev(<oFind>[, <lUndo>]) --> .T. || .F.
FindPrev() продолжает поиск начатый методом <::Find()> назад по тексту. <oFind> содержит параметры поиска(выражение, регистр и прочие). Атрибут <::Direct> объекта <oFind> устанавливается равным 2. Если выражение найдено, курсор перемещается на начало найденого слова. Это слово выделяется специальным цветом (<clr4> из <::ColorSpec>).
FormatLine([<lAutoMargin>],[ <nMarginLeft>],[ <nMarginRight>],[ <nTabSize>],[ <lHyphen>][, <lUndo>] ) --> NIL
FormatLine() форматирует текущую строку <::Line> в соответствии с переданными параметрами.
<lAutoMargin> | - Logical, TRUE(по умолчанию) если автоматически выставляется левая граница. |
<nMarginLeft> | - Numeric, левая граница строки(по умолчанию <::MarginLeft>) |
<nMarginRight> | - Numeric, правая граница строки (по умолчанию <::MarginRight>) |
<nTabSize> | - Numeric, размер табуляции (по умолчанию <::TabSize>) |
<lHyphen> | - Logical, TRUE если допускается перенос в словах (по умолчанию <::Hyphen>). |
<lUndo> | - Logical, TRUE(по умолчанию) если операция записывается в буфер отката. |
Returns : | Возвращает NIL. |
FormatPart([<lAutoMargin>],[ <nMarginLeft>],[ <nMarginRight>],[ <nTabSize>],[ <lHyphen>][, <lUndo>] ) --> NIL
FormatPart() форматирует часть текста начиная со строки <::Line> до следующего абзаца.
<lAutoMargin> | - Logical, TRUE(по умолчанию) если автоматически выставляется левая граница. |
<nMarginLeft> | - Numeric, левая граница строки(по умолчанию <::MarginLeft>) |
<nMarginRight> | - Numeric, правая граница строки (по умолчанию <::MarginRight>) |
<nTabSize> | - Numeric, размер табуляции (по умолчанию <::TabSize>) |
<lHyphen> | - Logical, TRUE если допускается перенос в словах (по умолчанию <::Hyphen>). |
<lUndo> | - Logical, TRUE(по умолчанию) если операция записывается в буфер отката. |
Returns : | Возвращает NIL. |
GotoLine(<nLine>[, <lUndo>]) --> .T. || .F.
GotoLine() перемещает курсор на новую строку с номером <nLine> если <nLine> в пределах 1 и <::Lines>. Атрибут <::Line> принимает значение <nLine>.
GotoPos(<nPos>[, <lUndo>]) --> .T. || .F.
GotoPos() перемещает курсор в текущей строке <::Line> на новую колонку <nPos>. Атрибут <::Pos> принимает значение <nPos>.
HandleKey(<nKey>[, <lUndo>]) --> .T. || .F.
HandleKey() получает код клавиши и пытается выполнить операцию, соответствующую коду(например, перемещение вверх, вниз и прочее)
HighLightAdd(<nLine>, <nColorItem>) --> .T. || .F.
HighLightAdd() выделяет строку <nLine> цветом <nColorItem> из спецификации <::ColorSpec> и сохраняет эту информацию в массиве <::HighLightColor>.
Для одной строки метод может быть вызван несколько раз с разными цветами. В этом случае, строка отображается последним из заданных цветов.
HighLightDel(<nLine>, <nColorItem>) --> .T. || .F.
HighLightDel() снимает для строки выделение <nLine> цветом с номером <nColorItem> в спецификации <::ColorSpec> и удаляет информацию из массива <::HighLightColor>.
Home([<lUndo>]) --> NIL
Home() скроллирует текст на первый отличный от пробела символ текущей строки <::Line>.
Повторный вызов метода для этой же строки приводит к перемещению курсора на начало строки.
Identity(<sSymb>, [<lDirect>],[ <lUndo>]) --> .T. || .F.
Identity() ищет идентичный заданному или парный символ: (), <>, {}, []; и устанавливает курсор на найденный символ возвращая при этом TRUE.
Insert( <sStr>, [<lUndo>] ) --> NIL
Insert() вставляет подстроку <sStr> в текущую строку <::Line> начиная с колонки <::Pos>.
Если <::Line> больше чем размер буфера редактирования <::Lines>, то <::EdBuffer> увеличивается до <::Line> строк.
Новая позиция курсора после операции: строка <::Line> и колонка <::Pos>+len(sStr).
InsertLine([<lUndo>][, [lAuto]] ) --> NIL
InsertLine() вставляет в буфер редактирования новую строку сразу после строки <::Line>-1. Размер буфера редактирования <::EdBuffer> увеличивается на 1.
Номер текущей строки остается прежним <::Line>.
Если <lAuto>, курсор позиционируется в колонку, соответствующую первому, отличному от пробела, символу предыдущей строки <::Line>-1. Иначе, курсор позиционируется в колонку <::MarginLeft>
InsMacro(<aTempl>[, <lUndo>] ) --> NIL
Если текущее слово в строке <::Line> и колонке <::Pos> является одним из ключей массива <aTempl>, InsMacro() заменит слово - шаблон на результат макрокоманды.
InsTempl(<aTempl>[, <lUndo>] ) --> NIL
Если текущее слово в строке <::Line> и колонке <::Pos> является одним из ключей массива <aTempl>, InsTempl() заменит слово - шаблон на соответствующую строку.
<sStr> может содержать символы </>, они используются как разделители строк. В этом случае в буфер редактирования мложет быть вставлено сразу несколько строк, начиная с колонки <::Pos>.
KillNumStyle() --> NIL
KillNumStyle() снимает режим отображения порядковых номеров строк.
Left([<lUndo>]) --> NIL
Left() перемещает курсор на 1 позицию влево. Атрибуты <::Pos> и <::ColWin> уменьшаются на 1. если <::ColWin> меньше 1, <::ColWin> принимает значение 1 и текст в области редактирования скроллируется вправо на 1.
LoadBlock(<sFileName>[, <lUndo>]) --> .T. || .F.
LoadBlock() читает содержимое файла <sFileName> и вставляет его в буфер редактирования начиная с текущей строки <::Line>. Вставленные строки помечаются как строчный блок.
Размер буфера редактирования <::EdBuffer> увеличивается на количество вставленных строк.
LoadFile(<sFileName>) --> .T.
LoadFile() загружает файл в буфер редактирования. Содержимое файла разбивается на подстроки, в качестве разделителя используется жесткий возврат каретки. Подстроки транслируются из кодировки <::CharSet> в кодировку CLIP-машины и записываются в <::Edbuffer>. Прежнее содержимое <::EdBuffer> уничтожается.
Если файл не существует или не доступен для чтения метод возвращает FALSE. <::EdBuffer> не изменяется.
Внимание! Этот метод не сохраняет данные для операции отката.
LoadString(<sStr>) --> .T.
LoadString() загружает строку в буфер редактирования. Строка разбивается на подстроки, в качестве разделителя используется жесткий возврат каретки. Подстроки транслируются из кодировки <::CharSet> в кодировку CLIP-машины и записываются в <::Edbuffer>. Прежнее содержимое <::EdBuffer> уничтожается.
Внимание! Этот метод не сохраняет данные для операции отката.
MatchStruct(<sWord>, [<lDirect>],[ <lUndo>]) --> .T. || .F.
MatchStruct() ищет в тексте элементы Clipper структур:
DO CASE; CASE; OTHERWISE; END[CASE]
DO[ WHILE]; LOOP; END[DO]
IF; ELSE; [ELSEIF]; END[IF]
...
и устанавливает курсор на найденный элемент.
Поиск не зависит от регистра, в каком были набраны символы. Структуры могут быть вложенными.
MoveBlock([<lUndo>]) --> .T. || .F.
MoveBlock() вызывает метод CopyBlock() с первым параметром TRUE.
MoveToClipboard(<aClipbrd>) --> NIL
AddToClipboard() перемещает отмеченный блок(строчный или прямоугольный) в конец буфер <aClipbrd>, замещая при этом содержимое буфера. <aClipbrd> - это не системный буфер.
Курсор помещается на начало блока и блок удаляется. Размер буфера редактирования <::Edbuffer> уменьшается на размер удаленного блока.
NewLine([<lUndo>][, <lAuto>] ) --> NIL
InsertLine() перемещает курсор на новую строку <::Line>+1. Размер буфера редактирования <::EdBuffer> не изменяется.
Номер текущей строки остается прежним <::Line>.
Если <lAuto>, курсор позиционируется в колонку, соответствующую первому, отличному от пробела, символу предыдущей строки <::Line>-1. Иначе, курсор позиционируется в колонку <::MarginLeft>
NextWord([<nPos>], [nLine>],[ <lUndo>]) --> sPrevWord
NextWord() ищет следующее слово за заданным в координатах <nLine>, <nPos> и возвращает его если найдет. В противном случае NextWord() возвращает пустую строку.
<nPos> | - Numeric, исходная колонка в строке <nLine>. Если не передан, то <::Pos> |
<nLine> | - Numeric, исходная строка. Если параметр не передан, то <::Line> |
<lUndo> | - Logical, TRUE(по умолчанию) если операция записывается в буфер отката. |
Returns : | Возвращает слово, следующее за заданным в координатах <nLine>, <nPos> словом |
OverStrike( <sStr>, [<lUndo>] ) --> NIL
OverStrike() заменяетв текщей строке <::Line> подстроку длиной len(sStr) на <sStr> начиная с колонки <::Pos> .
Новая позиция курсора: строка<::Line> и колонка <::Pos>+len(sStr).
PageDown([<lUndo>]) --> NIL
PageDown() перемещает курсор с текущей строки на новую строку с номером <::Line>+<::nBottom>-<nTop>.
Атрибут <::Line> увеличивается на <::nBottom>-<nTop> и текст в окне редактирования скроллируется вверх на <::nBottom>-<nTop> строк.
PageUp([<lUndo>]) --> NIL
PageUp() перемещает курсор с текущей строки на новую строку с номером <::Line>-<::nBottom>-<nTop>.
Атрибут <::Line> уменьшается на <::nBottom>-<nTop> и текст в окне редактирования скроллируется вниз на <::nBottom>-<nTop> строк.
PasteFromClipboard(<aClipbrd>[, <nItem>][, <lUndo>]) --> .T. || .F.
PasteFromClipboard() вставляет блок ихз буфера в текущую позицию курсора <::Line> и <::Pos>.
Блок не удаляется из буфера <aClipbrd>. Размер <::Edbuffer> увеличивается на размер вставленного блока (количество строк).
Если массив <aClipbrd> пуст, PasteFromClipboard() возвращает FALSE; иначе возвращает TRUE.
PrevWord([<nPos>], [nLine>],[ <lUndo>]) --> sPrevWord
PrevWord() ищет предшествующее слово заданному в координатах <nLine>, <nPos> и возвращает его если найдет. В противном случае PrevWord() возвращает пустую строку.
<nPos> | - Numeric, исходная колонка в строке <nLine>. Если не передан, то <::Pos> |
<nLine> | - Numeric, исходная строка. Если параметр не передан, то <::Line> |
<lUndo> | - Logical, TRUE(по умолчанию) если операция записывается в буфер отката. |
Returns : | Возвращает слово, предшествующее заданному слову в координатах <nLine>, <nPos> |
Print() --> .T.
Print() осуществляет печать всего текста из буфера редактирования.
PrintBlock() --> .T. || .F.
PrintBlock() осуществляет печать отмеченного блока (строчного или прямоугольного)
Refresh() --> NIL
Refresh() обновляет область редактирования TEXTEDIT.
Метод Refresh()вызывается автоматически из остальных методов класса TEXTEDIT и не требует прямого вызова.
Replace(<oFind>[, <lUndo>]) --> .T. || .F.
Replace() ищет строку или выражение в тексте. Объект <oFind> содержит параметры поиска (искомое выражение, выражение для замены, направление поиска и прочее). Если выражение найдено, оно будет заменено на строку или выражение <oFind:Rstring>. Эта подстрока будет отмечена специальным цветом (<clr4> из <::ColorSpec>).
Right([<lUndo>]) --> NIL
Right() перемещает курсор вправо на 1 позицию. Атрибуты <::Pos> и <::ColWin> увеличиваются на 1. Если <::ColWin> больше чем правая граница области редактирования, <::ColWin> принимает значение <::nRight>-<nLeft> + 1 и текст в области редактирования скроллируется влево на 1 колонку.
SaveBlock(<sFileName>[, <lCreateBak>[, <lUndo>]]) --> .T. || .F.
SaveBlock() записывает отмеченный строчный или прямоугольный блок в файл <sFileName>. Если файл <sFileName> ранее не существовал, он будет создан, иначе переписан.
Если блок не был отмечен или произошла ошибка при записи/создании файла, метод вернет FALSE.
SaveFile(<sFileName>[, <lCreateBak>]) --> .T.
SaveFile() записывает содержимое буфера редактирования <::EdBuffer> в файл.
Если файл <sFileName> не существует, он создается. В противном случае переписывается. Атрибут <::Updated> принимает значение FALSE.
Если при записи/создании файла произошла ошибка, SaveFile() возвращает FALSE.
Внимание! Этот метод не сохраняет данные для операции отката.
SaveString() --> sStr
SaveString() записывает содержимое буфера редактирования в строку и возвращает ее. Подстроки транслируются из кодировки CLIP-машины в <::Charset> и записываются в результирующую строку через символ CR.
Внимание! Этот метод не сохраняет данные для операции отката.
SetCharset(<sCharset>) --> NIL
SetCharset() устанавливает кодировку <sCharset> и транслирует данные в буфере редактирования (если он не пуст) в кодировку CLIP-машины.
SetFocus([<lFocus>]) --> lNewFocus
SetFocus() устанавливает или снимает фокус. Если <lFocus> не определен, <lFocus> принимает значение !<::InFocus>
SetKey(<nKey>[, <bData>]) --> bPreviouse
SetKey() устанавливает новый кодовый блок, ассоциированный с кодом <nKey>. Когда при этом замещается существующий блок кода, метод возвращает этот существующий блок, иначе возвращает вновь установленный. Коды клавиш и связанные с ними кодовые блоки обрабатываются методом ApplyKey().
Если <bData> NIL, SetKey() возвращает старый кодовый блок и удаляет код клавиши с ассоциированым с ним кодовым блоком.
По умолчанию с клавишами перемещения курсора(K_UP, K_DOWN, K_LEFT, K_RIGHT, K_PGUP, K_PGDN, K_HOME, K_END ....) ассоциированы соответствующие методы Left(), Right(), Up(), Down() и тд.
SetNewColor(<sNewColor>) --> NIL
SetNewColor() устанавливает новую цветовую спецификацию. Метод Refresh() использует первые 4 цвета для прорисовки данных:
<sNewColor> := "<clr1>, <clr2>, <clr3>, <clr4>[, ...<clrN>]" <clr1> - основной цвет символов <clr2> - цвет строки EOF <clr3> - цвет выделенного текста <clr4> - цвет текста, выделенного операциями поиска ... <clrN> - пользовательский цвет
SetNumStyle([<lNum>]) --> NIL
SetNumStyle() устанавливает/снимает режим отображения строк в области редактирования. Если <lNum> TRUE, в левой части области редактирования отображаются порядковые номера строк в буфере редактирования.
TextEditNew(<Lrow>, <Lcol>, <Rrow>, <Rcol>, [<color>]) --> new TEXTEDIT object
TextEditNew() создает и возвращает объект TEXTEDIT. Объект этого класса может быть использован для просмотра, редактирования, управления текстовыми данными.
Top([<lUndo>]) --> NIL
Top() перемещает указатель на первую строку буфера редактирования. Атрибуты <::Line> и <::RowWin> устанавливаются равными 1.
Undo() --> NIL
Undo() выполняет операцию "откат" по данным, сохраненным в буфере отката. Размер этого буфера задается атрибутом <::LenUndo>.
Почти все методы класса по умолчанию сохраняют данные для выполнения отката если пераметр <lUndo> TRUE.
Up([<lUndo>]) --> NIL
Up() перемещает курсор на новую строку <::Line>-1. Атрибуты <::Line> и <::RowWin> уменьшаются на 1. Если <::RowWin> меньше 1, <::RowWin> принимает значение 1 и текст в области редактирования скроллируется вниз на 1 строку.
WordLeft([<lUndo>]) --> NIL
WordLeft() перемещает курсор на начало левого слова от текущего. Атрибуты <::Pos> и <::ColWin> принимают значения соответстующие позиции первого символа в слове.
Пред. | Начало | След. |
Class STACK | Уровень выше | Class UIBUTTON |