Latest post of the previous page:
Выдам общее ИМХО-соображение, но влекущее все детали реализации.При работе с файлом, нам лучше плясать от файла.
Курсор на экране, все что на экране, это лишь отображение представления файла как файла, или как куска файла в памяти.
НАпример, если мы хотим делать какой регексп (на содержание файла конечно),
то нам в десятки раз проще читать из файл применяя регескп, это тривиально.
Нашли что надо в файле, знаем эти позиции регекспа в файле, и привели представление на экране в соответсвие с результами.
Т.е., применяя FilePosToScreenPos.
Это проще чем делать обратное - переведить представление на экране в содержание файла, т.е. ScreenPosToFilePos.
иными словами переводить представление файла в содержание, и уже потом делать на нем операции.
Проще просто потому что, то что на экране уже прошло транформации, и надо это уметь предусматривать и переваривать.
Для других сценариев, и для большинства других сценариев нужнее ScreenPosToFilePos.
Да, для реалзиции курсора FilePosToScreenPos не является необходимостью, но значительбно облегчает жизнь.
Строго говоря, ведь и ScreenPosToFilePos тоже не явалятся необходимостью.
Можно парсить буквы на экране и искать им соответсвие в файле, опираясь на существующий viewer.GetFilPos.
Но это очень муторно программеру, достоверный результат наверное достижим, но с большим трудом.
И опять же, зачем, если в ФАРе это уже есть и можно вынести в АПИ?
Лично я такой сценарий реализовывать не буду, потому что зачем биться башкой об стену,
если тут допустим что не хотят эффективного АПИ и скриптинга?