seGetCursorPos()

Функция возвращает информацию о текущей позиции курсора в редакторе сценариев.

Синтаксис

int seGetCursorPos(int &line, int &column);

Параметры

ПараметрыОписание
lineНомер строки положения курсора (возвращаемое значение).
columnНомер столбца положения курсора (возвращаемое значение).

Возвращаемое значение

Позиция курсора.

В случае возникновения ошибки функция возвращает -1.

Описание

Функция возвращает информацию о текущей позиции курсора в редакторе сценариев.

Данная функция используется для расширения функциональности редактора сценариев, ее применение в другом контексте не допускается. Для считывания сценария из редактора сценариев необходимо использовать функцию getScript(), для задания сценария необходимо использовать функцию setScript(). Сценарии расширения функциональности должны находиться в директории <путь_проекта>/scripts/scriptEditor и сохраняться с расширением «_ext.ctl». Их загрузка и выполнение допускаются исключительно из данного местоположения.

Первый столбец и первая строка соответствуют позиции 0. То есть если курсор находится в позиции [3,3], то возвращаемое функцией значение будет равняться [2,2]. Для согласования значений к возвращаемым значениям необходимо прибавлять единицу.

ЗначокПРИМЕР

Следующий пример демонстрирует добавление нового меню в редакторе сценариев. Меню содержит элементы, которые позволяют вызывать функции «se*». То есть функции могут быть вызваны при помощи меню редактора сценариев.

main()

{

  int id  = moduleAddMenu(«Доп.меню»);

  int tb  = moduleAddToolBar(«toolbar1»);

  DebugN(id, tb);

  int id1 = moduleAddAction(«Возвратить позицию курсора», «», «», id, tb, «GetCursorPosition»);

  int id2 = moduleAddAction(«Установить позицию курсора [3,3]», «», «», id, tb, «SetCursorPosition»);

  int id3 = moduleAddAction(«Заменить текст строки на текст ‘Строка удалена'», «», «», id, tb, «SetLine»);

  int id4 = moduleAddAction(«Считать содержимое строки», «», «», id, tb, «GetLine»);

  int id5 = moduleAddAction(«Добавить строку с текстом», «», «», id, tb, «InsertLine»);

  int id6 = moduleAddAction(«Удалить строку, в которой находится курсор «, «», «», id, tb, «RemoveLine»);

}

void GetCursorPosition()

{

  int line;

  int column;

  seGetCursorPos(line, column);

  DebugN(line, column);

}

void SetCursorPosition()

{

  int line = 3;

  int column = 3;

  seSetCursorPos(line — 1, column — 1);

  DebugN(«Курсор перемещен, позиция:», line, column);

}

void SetLine()

{

  int line;

  int column;

  seGetCursorPos(line, column);

  seSetLine(line, «Строка удалена»);

  DebugN(«Заменен текст строки:», line, column);

}

void GetLine()

{

  int line;

  int column;

  seGetCursorPos(line, column);

  DebugN(line, column);

  DebugN(«Содержание строки: «, seGetLine(line));

}

void InsertLine()

{

  int line;

  int column;

  string text = «Новая строка с текстом»;

  seGetCursorPos(line, column);

  seInsertLine(line, text);

  DebugN(line, column);

  DebugN(«Добавлена строка «, line, » с текстом: «, text);

}

void RemoveLine()

{

  int line;

  int column;

  seGetCursorPos(line, column);

  DebugN(line, column);

  seRemoveLine(line);

  DebugN(«Удалена строка с номером:», line);

}

Принадлежность

Расширения редактора сценариев

Область доступности

UI

См. также

seGetLine()seInsertLine()seRemoveLine()seSetCursorPos()seSetLine()moduleAddAction()moduleAddMenu()moduleAddSubMenu()moduleAddToolBar()

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *