OberonCore
https://forum.oberoncore.ru/

Соответствие #строки:#столбца позиции каретки CaretPos()
https://forum.oberoncore.ru/viewtopic.php?f=23&t=2304
Страница 1 из 1

Автор:  Роман М. [ Вторник, 02 Февраль, 2010 17:52 ]
Заголовок сообщения:  Соответствие #строки:#столбца позиции каретки CaretPos()

Необходимо найти соответствие #строки:#столбца позиции каретки TextControllers.CaretPos() в считываемом файле текстового формата, для того, чтобы передать эти параметры через интерфейс DLL внешней программе. Внешняя программа не использует каркас Блэкбокса.

Каким образом я это могу сделать?

Автор:  Madzi [ Четверг, 18 Февраль, 2010 17:36 ]
Заголовок сообщения:  Re: Соответствие #строки:#столбца позиции каретки CaretPos()

Считать концы строк, как, например, это сделано в POW!

Код:
(*----------------------------------------------------------------------------*)
  PROCEDURE Get*(VAR ch: CHAR);    (* read next character from source text, Eot if no more *)
  BEGIN
    IF srcPos < srcLen THEN
      ch:=srcBuf[srcPos]; INC(srcPos)
    ELSE
      srcLen:=maxSrcLen;
      ReadBytes(srcFileNum, srcBuf, srcLen);
      IF srcLen > 0 THEN
        ch:=srcBuf[0];
        srcPos:=1
      ELSE
        ch:=Eot;
        srcPos:=srcLen;
      END
    END;
    IF ch = 0AX (* LF *) THEN
      INC(curpos.line);
      curpos.column:=1;
    ELSE (* 0DX CR and other *)
      INC(curpos.column);
    END
  END Get;

Автор:  Роман М. [ Пятница, 19 Февраль, 2010 15:37 ]
Заголовок сообщения:  Re: Соответствие #строки:#столбца позиции каретки CaretPos()

Спасибо! Дальше попробую сам разобраться.

Страница 1 из 1 Часовой пояс: UTC + 3 часа
Powered by phpBB® Forum Software © phpBB Group
https://www.phpbb.com/