Total Commander Forum Index Total Commander
Форум поддержки пользователей Total Commander
Сайты: Все о Total Commander | Totalcmd.net | Ghisler.com | RU.TCKB
 
 RulesRules   SearchSearch   FAQFAQ   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Universal Viewer - аналог Lister
Goto page Previous  1, 2, 3 ... 19, 20, 21 ... 50, 51, 52  Next
 
Post new topic   Reply to topic    Total Commander Forum Index -> Плагины Total Commander printer-friendly view
View previous topic :: View next topic  
Author Message
Alextp



Joined: 06 Feb 2005
Posts: 4957

Post (Separately) Posted: Mon Jul 16, 2007 18:52    Post subject: Reply with quote

DeathStalker wrote:
У меня возникает такая ошибка: после просмотра ini файла с помощью плагина IniEd при закрытии UV windows сообщает
Quote:
Universal Viewer (ATViewer) - обнаружена ошибка....


Откопал этот пост. Ошибка с IniEd поправлена, я не совсем правильно
закрывал плагин при закрытии UV. С версии 2.0.1 должно быть ОК.
Back to top
View user's profile Send private message
Athari



Joined: 19 Dec 2004
Posts: 81
Location: Казань

Post (Separately) Posted: Mon Jul 16, 2007 21:22    Post subject: Reply with quote

Quote:
Сделать, что-ли, workaround для этого, передавая плагину всегда полный путь?
Правда, как быть с именем типа "..\..\filename.exe", его не так просто дополнить до полного пути.

Там функция какая-то стандартная есть, не помню название. А пути надо обязательно полными давать, потому что авторы, полагаясь на интерфейс Листера, ожидают именно такие.

К слову, мой плагин BootScreenView теоретически не вылетит, но местами будет работать не так, как положено — например, при сохранении файла…

Пардон, если вопрос уже задавался, но при использовании UV я не понял, почему вся эта красота с деревьями и файлами пропадает в режиме плагинов. Это не есть удобно, однако.

При переходе в полноэкранный режим пункты меню по одному скрываются? Медленно и некрасиво. Не пробовал убирать всё меню сразу — или Form->Menu = NULL, или SetMenu(Handle, NULL)?
_________________
«Today is the first day of the rest of your life»
Back to top
View user's profile Send private message AIM Address Yahoo Messenger MSN Messenger
Alextp



Joined: 06 Feb 2005
Posts: 4957

Post (Separately) Posted: Mon Jul 16, 2007 21:47    Post subject: Reply with quote

Quote:
Там функция какая-то стандартная есть, не помню название. А пути надо обязательно полными давать, потому что авторы, полагаясь на интерфейс Листера, ожидают именно такие.

Уговорили. Буду делать дополнение путей.
(Я его уже где-то делал, но уже забыл где)

Quote:
Пардон, если вопрос уже задавался, но при использовании UV я не понял, почему вся эта красота с деревьями и файлами пропадает в режиме плагинов.

Где, с каким плагином? С твоим BootScreenview?
Посмотрю, вообще не должна.

Quote:
При переходе в полноэкранный режим пункты меню по одному скрываются? Медленно и некрасиво. Не пробовал убирать всё меню сразу —

По одному.
Не пробовал, не знал про этот способ, попробую. Наверное, так и надо делать.
_________________
UniViewer - CudaText - LogViewer
Back to top
View user's profile Send private message
Athari



Joined: 19 Dec 2004
Posts: 81
Location: Казань

Post (Separately) Posted: Mon Jul 16, 2007 21:54    Post subject: Reply with quote

Quote:
Где, с каким плагином? С твоим BootScreenview?
Посмотрю, вообще не должна.

Ой. У моей формы стиль WS_CHILD|WS_MAXIMIZED. Very Happy

У меня плагин местами дерзкий, в частности в ListLoad не окно возвращает, а форму. Разумеется, ни Тотал, ни UV ничего с этой ссылкой поделать не могут. (Я решил пойти по пути, отличному от примера, что выложен на этом сайте — он мне не понравился жёсткой привязкой к уже существующим горячим клавишам, например.) Похоже, надо всё-таки сделать, чтобы плагин себя прилично вёл, а то с UV одни проблемы.
_________________
«Today is the first day of the rest of your life»
Back to top
View user's profile Send private message AIM Address Yahoo Messenger MSN Messenger
Athari



Joined: 19 Dec 2004
Posts: 81
Location: Казань

Post (Separately) Posted: Mon Jul 16, 2007 22:01    Post subject: Reply with quote

Функцию для превращения относительного пути в полный нашёл — VCL’ная ExpandFileName, обёртка вокруг API’шной GetFullPathName.
_________________
«Today is the first day of the rest of your life»
Back to top
View user's profile Send private message AIM Address Yahoo Messenger MSN Messenger
Alextp



Joined: 06 Feb 2005
Posts: 4957

Post (Separately) Posted: Mon Jul 16, 2007 22:30    Post subject: Reply with quote

Quote:
У меня плагин местами дерзкий, в частности в ListLoad не окно возвращает, а форму..

TForm.Handle?что значит "не окно"?

Quote:
Похоже, надо всё-таки сделать, чтобы плагин себя прилично вёл....

Это в любом случае надо сделать.
Back to top
View user's profile Send private message
Athari



Joined: 19 Dec 2004
Posts: 81
Location: Казань

Post (Separately) Posted: Mon Jul 16, 2007 22:54    Post subject: Reply with quote

Quote:
TForm.Handle?
И что тут такого?

Да нет, указатель на саму форму (на объект VCL), а не хендл окна. Rolling Eyes

Так, поигрался ещё немного с UV.

Забавный спецэффект возникает, если включить режим «Окно в размер окна» при включённом дереве и списке файлов. Smile И, если окно развёрнуто на весь экран, у него кнопка в заголовке такая и остаётся. По-моему, окно надо «восстанавливать», а потом уже менять размер, тогда, если пользователь захочет развернуть окно, ему не придётся делать два двойных щелчка. Кстати, какой функцией размер окна меняешь?

Плагиновые эскизы не поддерживаются?

Антиалайзинга при просмотре картинок не хватает. Это делается вызовом SetStretchBltMode(hdc, STRETCH_HALFTONE); SetBrushOrgEx(hdc, 0, 0, NULL);

Тип картинок надо определять по заголовку, а не расширению. У меня несколько BMP’шек обнаружилось с расширением JPG, их UV показывать отказался. И ошибки напрягают, если программа ожидала от файла одно, а получила другое. В файле PAL у меня палитра от PSP, а программа картинку какую-то ждёт… Плюс после этих исключений окошко недоперерисовывается.

Не уловил глубокого философского смысла в почти единственном фильтре — преобразовании к оттенкам серого. Как-то он там одиноко смотрится. Smile «Монохромный» — разве не двуцветный?
_________________
«Today is the first day of the rest of your life»
Back to top
View user's profile Send private message AIM Address Yahoo Messenger MSN Messenger
Athari



Joined: 19 Dec 2004
Posts: 81
Location: Казань

Post (Separately) Posted: Mon Jul 16, 2007 23:21    Post subject: Reply with quote

Шрифт поставил «Sourier New», в котором есть символы от 1 до 31, а UV упорно контрольные символы на точки меняет.

В шестнадцатиричном режиме неплохо бы иметь возможность выделять не только на правой части с текстом, но и левой с кодами. То есть, если пользователь начал тянуть выделение на левой части, то на ней и выделять. Этого мне и в Листере не хватает, в общем-то. Выделение полосками глаза напрягает.

Почему некоторые кнопки на панели инструментов отключаются, а некоторые исчезают? В графическом режиме кнопки поиска отключаются, а в текстовом «масштаб 1:1» пропадает. Логики не уловил. Мелочь, вообще-то, но кнопки елозят, и уследить сложнее, по-моему.

Интернет-режим на BMP’шке приводет к запуску Пейнта. Весело. Smile

Почему режим UTF8 сделан через RichEdit? Тормозно, неудобно, нулевые символы убивают хвост…
_________________
«Today is the first day of the rest of your life»
Back to top
View user's profile Send private message AIM Address Yahoo Messenger MSN Messenger
Alextp



Joined: 06 Feb 2005
Posts: 4957

Post (Separately) Posted: Mon Jul 16, 2007 23:40    Post subject: Reply with quote

Athari
Quote:
Да нет, указатель на саму форму (на объект VCL), а не хендл окна.

Листер требует, чтобы был handle окна, он выполняет какие-то операции с этим handle'ом.

Quote:
Забавный спецэффект возникает, если включить режим «Окно в размер окна» при включённом дереве и списке файлов.

Забыл учесть. Поправил.
Остальное потом, как-то ты много написал, почти как Аркадий. Smile
_________________
UniViewer - CudaText - LogViewer
Back to top
View user's profile Send private message
Athari



Joined: 19 Dec 2004
Posts: 81
Location: Казань

Post (Separately) Posted: Mon Jul 16, 2007 23:52    Post subject: Reply with quote

Quote:
Листер требует, чтобы был handle окна, он выполняет какие-то операции с этим handle'ом.

Ну, просто он эти операции выполнить не может, невелика беда. Smile Кажется, там что-то с субклассированием и горячими клавишами… на официальном форуме вычитал, когда уже реализовал свой черезанусовый спосбоб. Very Happy

Да, насчёт запуска Пейнта. Так получается, только если IE загружается в первый раз, при последующих загрузках картинка нормально отображается. Возможно, имеет смысл сначала грузить пустой файл…
_________________
«Today is the first day of the rest of your life»
Back to top
View user's profile Send private message AIM Address Yahoo Messenger MSN Messenger
Alextp



Joined: 06 Feb 2005
Posts: 4957

Post (Separately) Posted: Tue Jul 17, 2007 00:09    Post subject: Reply with quote

Athari
Quote:
Ну, просто он эти операции выполнить не может, невелика беда.

UV делает ресайз окна через этот handle (поэтому ресайз и не работает).. а так, можно записать туда $1234567, будет то же самое. Smile

Quote:
Да, насчёт запуска Пейнта. Так получается, только если IE загружается в первый раз, при последующих загрузках картинка нормально отображается. Возможно, имеет смысл сначала грузить пустой файл…

Даже не знаю. Делать это только ради BMP?
С остальными картинками Интернет-режим нормально работает. Не стоит, т.к. картинки все равно все смотрят в режиме Графика / Плагины..
Back to top
View user's profile Send private message
Athari



Joined: 19 Dec 2004
Posts: 81
Location: Казань

Post (Separately) Posted: Tue Jul 17, 2007 11:20    Post subject: Reply with quote

Quote:
Даже не знаю. Делать это только ради BMP?

А это происходит только с BMP? Думается, это не единственный тип такой особенный, было бы странно. А где обычно смотрят — вопрос десятый, всегда найдётся тот, кто наткнётся на баг. Пейнт — это ещё ладно, его закрыть недолго; если какой-нибудь 3D Studio MAX загрузиться захочет, будет неприятнее. Smile

Я из-за какого-то похожего бага в IE сначала грузил «about:blank» при создании контрола и только потом нужные файлы закидывал.

Да, насчёт горячих клавиш. Чтобы плаг внутри UV мог свои горячие клавиши использовать, ему себя как вести предполагается?
_________________
«Today is the first day of the rest of your life»
Back to top
View user's profile Send private message AIM Address Yahoo Messenger MSN Messenger
Alextp



Joined: 06 Feb 2005
Posts: 4957

Post (Separately) Posted: Tue Jul 17, 2007 12:16    Post subject: Reply with quote

Athari
Quote:
-- При переходе в полноэкранный режим пункты меню по одному скрываются?
Медленно и некрасиво. Не пробовал убирать всё меню сразу -

Если скрывать меню так, то перестают работать гор. клавиши
(заданные в этом меню).

Quote:
-- При запуске из командной строки "Viewer.exe filename.exe" вылетает следующая ошибка:
"Исключение в плагине fileinfo.wlx в функции ListLoad" нажимаю ОК, после чего программа продолжает нормально функционировать.

Имена дополняются - поправил.

Quote:
--И, если окно развёрнуто на весь экран, у него кнопка в заголовке такая и остаётся. По-моему, окно надо <восстанавливать>, а потом уже менять размер, тогда, если пользователь захочет развернуть окно, ему не придётся делать два двойных щелчка.

Поправил. И еще при этом надо выключать Полноэкранный режим, тоже поправил.

Quote:
--Плагиновые эскизы не поддерживаются?

Пока нет. Не знаю, как это сделать с текущим компонентом Listview.

Quote:
--Антиалайзинга при просмотре картинок не хватает. Это делается вызовом SetStretchBltMode(hdc, STRETCH_HALFTONE); SetBrushOrgEx(hdc, 0, 0, NULL);

Его конечно не хватает. Но так просто этот вызов не сделаешь, у меня же TImage, его надо полностью переписывать? Я планирую сделать замену TImage, потом, будет и антиалиасинг, и несколько методов как в IrfanView..

Quote:
-Тип картинок надо определять по заголовку, а не расширению. У меня несколько BMP'шек обнаружилось с расширением JPG, их UV показывать отказался.

С этим сложно. Я же загружаю картинки как TImage.Picture.LoadFromFile(),
а оно требует, чтобы расширение соответствовало, там нет опр. по содержимому.


Quote:
--Не уловил глубокого философского смысла в почти единственном фильтре - преобразовании к оттенкам серого. Как-то он там одиноко смотрится.

Там же еще "Повернуть вправо/Повернуть влево". Тоже почти фильтры...
И еще есть "Негатив", только скрыт. Название "Монохромный" поправил на "В оттенки серого".

Quote:
--Шрифт поставил <Sourier New>, в котором есть символы от 1 до 31, а UV упорно контрольные символы на точки меняет.

А как я узнаю, что в шрифте есть символы от 1 до 31?

Quote:
--В шестнадцатиричном режиме неплохо бы иметь возможность выделять не только на правой части с текстом, но и левой с кодами. То есть, если пользователь начал тянуть выделение на левой части, то на ней и выделять. Этого мне и в Листере не хватает, в общем-то.

Это сделать доволльно сложно, много возни. У меня там позиции символов только правой части хранятся,
т.е. нужна большая внутренняя переделка...
Пока делать это не буду.

Quote:
--Почему некоторые кнопки на панели инструментов отключаются, а некоторые
исчезают? В графическом режиме кнопки поиска отключаются, а в текстовом
<масштаб 1:1> пропадает. Логики не уловил.

Прячутся просто для того, чтобы не загромождать экран
запрещенными кнопками. Кнопку "масштаб 1:1" я теперь не прячу, ОК,
а вот эти до сих пор прячутся:

mnuViewImageRotateRight
mnuViewImageRotateLeft,
mnuViewImageGrayscale,
mnuViewImageShowLabel,

mnuViewMediaPlayPause,
mnuViewMediaVolumeUp,
mnuViewMediaVolumeDown,
mnuViewMediaVolumeMute,


Что с ними делать?


Quote:
--Почему режим UTF8 сделан через RichEdit?

Потому, что писать свою реализацию просмотра UTF8 было очень лень.
Это ОЧЕНЬ МНОГО возни.
А из доступных компонентов это делает только RichEdit, если кто-нибудь знает еще какой-нибудь,
сообщите.
_________________
UniViewer - CudaText - LogViewer
Back to top
View user's profile Send private message
test1024



Joined: 09 Nov 2006
Posts: 76

Post (Separately) Posted: Tue Jul 17, 2007 12:50    Post subject: Reply with quote

Кстати, ссылку "Исходники" на wincmd.ru надо убрать.
Back to top
View user's profile Send private message
Alextp



Joined: 06 Feb 2005
Posts: 4957

Post (Separately) Posted: Tue Jul 17, 2007 12:56    Post subject: Reply with quote

Athari
Quote:
--А это происходит только с BMP?

Да.
Quote:
-- Я из-за какого-то похожего бага в IE сначала грузил <about:blank> при создании контрола и только потом нужные файлы закидывал.

OK, так и сделал. BMP грузятся в окне браузера!

Quote:
--Да, насчёт горячих клавиш. Чтобы плаг внутри UV мог свои горячие клавиши использовать, ему себя как вести предполагается?

Не знаю, зависит от того, как ты задаешь гор. клавиши.
Если через OnKeyDown, то наверное они работать не будут. А если как-то хитро, как FileInfo плагин, то они перекроют мои гор. клавиши. А если у тебя ActiveX, то тоже возможно перекроет мои клавиши...

test1024
Ссылка валидная - она ведет на исходники компонента ATViewer.
_________________
UniViewer - CudaText - LogViewer
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic    Total Commander Forum Index -> Плагины Total Commander All times are GMT + 4 Hours
Goto page Previous  1, 2, 3 ... 19, 20, 21 ... 50, 51, 52  Next
Page 20 of 52

 
Jump to:  
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