2useven10 wrote:что такое сохранение позиции при переключении режимов просмотра?
позиция имеет смысл для реальных данных, которые показываются через интерфейс (вьювер не имеет к ним доступа),
у каждой такой 'проекции' позиции свои, и 'сохранять' их очень сомнительное занятие.
Начну издалека.
Важное достоинство имеющегося сейчас просмотрщика в том, что он не грузит в память весь файл, а вычитывает из него
только нужный фрагмент. При этом есть такое понятие, как
текущая позиция в файле — она соответствует первому символу, отображаемому в окне просмотрщика. (В случае наличия выделения при поиске есть смысл ориентироваться на
найденное, но это уже детали.) Так вот предположим, некий
гипотетический плагин предоставляет аналог hex-просмотрщика, но в переключаемых системах счисления (двоичной, восьмеричной, шестнадцатеричной, …). Поскольку то, что он отображает, взаимно-однозначно
соответствует исходным данным, понятие текущей позиции переносится в него один в один. Когда пользователь переключает, по какому основанию (или с какой разбивкой на группы) отображать данные, он ожидает, что будет видеть
тот же фрагмент данных, что и до переключения.
Разумеется, кроме плагина, формирующего текст для отображения, никто не знает, как позиции в нём соответствуют позициям в исходном тексте, поэтому в программном интерфейсе должна быть
предусмотрена возможность об этом позаботиться.