View previous topic :: View next topic |
Author |
Message |
Alextp

Joined: 06 Feb 2005 Posts: 4957
|
(Separately) Posted: Mon Apr 02, 2007 18:02 Post subject: SGViewer + Universal Viewer: что скажут спецы |
|
|
Интересный репорт и мой ответ к нему.
Что посоветуют спецы, чья это недоработка?
Интересно, что скажет CaptainFlint, D1P.
Quote: | некто
Universal Viewer (ATViewer) 1.5.10.0 2.04.2007 - 07:44
Очень хороший плагин.
Но при подключении сторонних плагинов нужно быть осторожным. Например, если подключить к нему SGViewer то можно увидеть следующий баг:
-пусть в каталоге лежат картинки с именами 1.bmp, 2.bmp, 3.bmp ... n.bmp;
-просмотр начинаем с файла 1.bmp;
-перходим с помощью скролинга колесика мышки к последующим картинкам (остановимся например на файле 3.bmp);
-жмем клавишу del (для удаления файла 3.bmp) а плагин (Universal Viewer) предлагает удалить файл 1.bmp с которого начат просмотр. |
------
Quote: | Alex
Universal Viewer (ATViewer) 1.5.10.0 2.04.2007 - 08:56
некто
Ты прав: но это не баг, а "недоработка" и не моя а автора Lister интерфейса.
Плагин (SGViewer) не может сообщить мне, UV, что он открыл у себя 3.bmp. Поэтому нажатие Del, которое отрабатывает UV, применяется к 1.bmp.
Тут нужно расширение интерфейса. |
_________________ UniViewer - CudaText - LogViewer
|
|
Back to top |
|
 |
CaptainFlint

Joined: 14 Dec 2004 Posts: 6193 Location: Москва
|
(Separately) Posted: Mon Apr 02, 2007 18:12 Post subject: |
|
|
Alextp wrote: | Интересно, что скажет CaptainFlint. |
Клавиша Del не предусмотрена интерфейсом плагинов просмотрщика. Поэтому как она обрабатывается, зависит целиком и полностью от плагина. Если UV перехватывает Del и обрабатывает сам - это проблема UV. А интерфейс, действительно, не предусматривает возможности передать информацию от плагина к Тоталу, какой файл сейчас просматривается, если плагин "самовольно" загрузил другой файл. _________________ Почему же, ё-моё, ты нигде не пишешь "ё"? |
|
Back to top |
|
 |
Alextp

Joined: 06 Feb 2005 Posts: 4957
|
(Separately) Posted: Mon Apr 02, 2007 18:26 Post subject: |
|
|
Не понял тебя. Как-то странно:
Code: | --Клавиша Del не предусмотрена интерфейсом плагинов просмотрщика. Поэтому как она обрабатывается, зависит целиком и полностью от плагина. |
при чем тут клавиша и интерфейс. Интерфейс вообще никаких клавиш не предусматривает.
Не обязаетльно Del это или F3 или Ctrl+O.
Ты можешь задать в mnu файле TC , если не ошибаюсь, какие угодно клавиши. Правильно? В том числе и Del.
Quote: | Edit
Нет, нельзя. Все задается в LNG.
Но все равно: набор клавиш, какие можно перехватывать просмотрщику а какие нет: это не описано в интерфейсе! |
Остальное понял.
Что посоветуешь: что править, UV или SGViewer? _________________ UniViewer - CudaText - LogViewer
|
|
Back to top |
|
 |
CaptainFlint

Joined: 14 Dec 2004 Posts: 6193 Location: Москва
|
(Separately) Posted: Mon Apr 02, 2007 18:58 Post subject: |
|
|
Alextp wrote: | при чем тут клавиша и интерфейс. Интерфейс вообще никаких клавиш не предусматривает.
Не обязаетльно Del это или F3 или Ctrl+O. |
Тогда опиши подробно: что происходит в Тотале, что происходит в UV, и что должно происходить по мнению пользователя. Я не понял его репорта, поскольку сам не пользуюсь ни UV, ни SGViewer.
Моё предположение заключалось в следующем:
<предположение>
1. SGViewer, будучи запущенным из Тотала, перехватывает нажатие клавиши Del, позволяя пользователю удалить просматриваемый в настоящий момент файл.
2. Обработка эта лежит полностью на плагине: он знает, какой файл сейчас просматривается, он может этот файл удалить.
3. При запуске из UV: сам UV перехватывает нажатие на Del и предлагает пользователю удалить просматриваемый файл, не сообщая об этом плагину.
4. Поскольку плагин не может уведомить UV, что он (плагин) сам по себе загрузил другие файлы и смотрит уже их, UV не в курсе всех этих изменений и удаляет то, что сначала передавал плагину - то бишь первый из просматриваемых файлов вместо текущего.
</предположение>
Если хоть какой-то пункт из этих четырёх неправилен, то мой предыдущий пост можно не читать - он не имеет смысла. Но в этом случае я просто перестаю понимать хоть что-либо из того, что происходит. _________________ Почему же, ё-моё, ты нигде не пишешь "ё"? |
|
Back to top |
|
 |
Alextp

Joined: 06 Feb 2005 Posts: 4957
|
(Separately) Posted: Mon Apr 02, 2007 19:09 Post subject: |
|
|
Quote: | Моё предположение заключалось в следующем:
Если хоть какой-то пункт из этих четырёх неправилен, то мой предыдущий пост можно не читать - он не имеет смысла. Но в этом случае я просто перестаю понимать хоть что-либо из того, что происходит. |
Ты все правильно описал. Все понимаешь что происходит правильно.
Ты не прав в пред. посте:
набор клавиш, которые может перехватывать плагин, нигде не описан. Ни в API Guide, ни на форуме.
Поэтому: Del может перехватывать и SGV, и UV. Они оба имеют на это право. Поэтому ситуация непонятная: кто "более прав", перехватывая Del. IMHO просмотрщик. (Но это только мое IMHO.) _________________ UniViewer - CudaText - LogViewer
|
|
Back to top |
|
 |
CaptainFlint

Joined: 14 Dec 2004 Posts: 6193 Location: Москва
|
(Separately) Posted: Mon Apr 02, 2007 19:24 Post subject: |
|
|
Alextp wrote: | набор клавиш, которые может перехватывать плагин, нигде не описан. Ни в API Guide, ни на форуме. |
Это так. Но верно и то, что Тотал сам никак не обрабатывает клавишу Del в просмотрщике. В данном случае плагин этим воспользовался.
Короче говоря, налицо ситуация с использованием непредусмотренных интерфейсов. Плагин полагается на то, что Тотал по-прежнему не будет обрабатывать клавишу Del. Если ты хочешь, чтобы UV корректно работал со всеми плагинами, то, мне кажется, стоит имитировать Тотал по максимуму, включая такие вот недокументированные ситуации. Возможно, стоит сделать это опционально, пояснив в справке, в чём плюсы и минусы обоих подходов. Может быть, стоит даже сделать эту опцию настраиваемой отдельно для каждого плагина. В этом случае для SGViewer'а можно будет оставить его стандартное поведение, а для плагинов, которые Del не перехватывают, включить UV-шную обработку клавиши. _________________ Почему же, ё-моё, ты нигде не пишешь "ё"? |
|
Back to top |
|
 |
Alextp

Joined: 06 Feb 2005 Posts: 4957
|
|
Back to top |
|
 |
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
Powered by phpBB © 2001, 2005 phpBB Group
|