TbtkScriptTextViewObject

class TbtkScriptTextViewObject

Класс, реализующий API для управления курсором, позиционирования прокрутки на конкретной линии и работы с выделением текста в текстовых редакторах. Реализуется на уровне GUI-контроллера фрейма выборки. Доступ осуществляется через TbtkScriptControllerObject.Text

Warning

Не поддерживается в Application Server

CursorLine Integer

Номер линии, на который находится курсор. Чтение/Запись.

Return type:

Integer

Пример использования
<PASCAL>
  if Assigned(Selection.Controller.Text) then
    ShowMessage('Cursor is on line: ' + IntToStr(Selection.Controller.Text.CursorLine));
</PASCAL>
CursorPos Integer

Позиция курсора относительно начала текста. Чтение/Запись.

Return type:

Integer

Пример использования
<PASCAL>
  if Assigned(Selection.Controller.Text) then
    ShowMessage('Cursor position: ' + IntToStr(Selection.Controller.Text.CursorPos) );
</PASCAL>
TopLine Integer

Номер строки, которая отображается в редакторе самой первой. Чтение/Запись.

Return type:

Integer

Пример использования
<PASCAL>
  if Assigned(Selection.Controller.Text) then
  begin
    s := InputBox('Change line', 'Switch from line ' +
    IntToStr(Selection.Controller.Text.TopLine) + ' to line:','')
    Selection.Controller.Text.TopLine := StrToInt(s);
  end
</PASCAL>
SelLength Integer

Длина выделенного текста в символах в текущем редакторе. Чтение/Запись.

Return type:

Integer

Пример использования
<PASCAL>
  if Assigned(Selection.Controller.Text) then
  begin
    Selection.Controller.Text.SelStart := StrToInt(InputBox('Select text', 'From', ''));
    Selection.Controller.Text.SelLength := StrToInt(InputBox('Select text', 'Length', ''));
  end
</PASCAL>
SelStart Integer

Позиция относительно начала текста, с которой начинается выделение текста. Чтение/Запись.

Return type:

Integer

Пример использования
<PASCAL>
  if Assigned(Selection.Controller.Text) then
    ShowMessage('Selection starts at ' + IntToStr(Selection.Controller.Text.SelStart));
</PASCAL>
SelText String

Выделенный текст в текущем редакторе. Чтение/Запись. Если выделение отсутствует, при присвоении свойства происходит вставка текста в место установки курсора.

Return type:

String

Пример использования
<PASCAL>
  if Assigned(Selection.Controller.Text) then
    ShowMessage(Selection.Controller.Text.SelText);
</PASCAL>
MoveCursorTo(Line, Col: Integer)

Переместить курсор в указанную позицию в редакторе ввода.

Parameters:
  • Line (Integer) – номер линии, на которую будет перемещен курсор

  • Col (Integer) – позиция относительно начала линии, на которую будет перемещен курсор.

Пример использования
<PASCAL>
  if Assigned(Selection.Controller.Text) then
  begin
    line := InputBox('','line','');
    col := InputBox('','column','');
    Selection.Controller.Text.MoveCursorTo(line, col);
  end;
</PASCAL>
GetPosByLine(LineNo: Integer; CursorAlign: TbtkLineCursorAlign) Integer

Возвращает позицию относительно начала текста, которая соответствует заданной линии и расположению курсора относительно линии

Parameters:
  • LineNo (Integer) – номер линии

  • CursorAlign (TbtkLineCursorAlign) –

    выравнивание курсора:

    lcaStart

    курсор в начале строки

    lcaEnd

    курсор в конце строки.

Return type:

Integer

Пример использования
<PASCAL>
  if Assigned(Selection.Controller.Text) then
  begin
    i := InputBox('', 'Line num','');
    ShowMessage('Pos at the beginning of line ' + i + ' ' +
    IntToStr(Selection.Controller.Text.GetPosByLine(StrToInt(i),
    lcaStart)));
  end;
</PASCAL>
GetLineByPos(Pos: Integer) Integer

Возвращает номер линии в редакторе ввода, которой соответствует позиция относительно начала текста.

Parameters:

Pos (Integer) – позиция в тексте

Return type:

Integer

Пример использования
<PASCAL>
  if Assigned(Selection.Controller.Text) then
  begin
    pos := InputBox('','position','');
    ShowMessage('Position ' + pos + ' is on line no: ' +
    IntToStr(Selection.Controller.Text.GetLineByPos(StrToInt(pos))));
  end;
</PASCAL>
ShowCursor(CursorAlign: TbtkShowCursorAlign)

Выровнять положение линии с курсором относительно экрана.

Parameters:

CursorAlign (TbtkShowCursorAlign) –

выравнивание курсора:

scaStart

вверху экрана

scaMiddle

посредине экрана

scaEnd

внизу экрана.

Пример использования
<PASCAL>
  if Assigned(Selection.Controller.Text) then
  begin
    Selection.Controller.Text.CursorLine := 50;
    Selection.Controller.Text.ShowCursor(scaMiddle);
  end;
</PASCAL>

TbtkLineCursorAlign

class TbtkLineCursorAlign

Перечисление. Позиция курсора относительно строки.

Warning

Не поддерживается в Application Server

lcaEnd

Курсор в конце строки

lcaStart

Курсор в начале строки

TbtkShowCursorAlign

class TbtkShowCursorAlign

Перечисление. Положение линии с курсором относительно экрана

Warning

Не поддерживается в Application Server

scaEnd

Линия с курсором внизу экрана

scaMiddle

Линия с курсором посредине экрана

scaStart

Линия с курсором вверху экрана