[wlx/wdx] TCMediaInfo
Select messages from
# through # FAQ
[/[Print]\]
Goto page Previous  1, 2, 3 ... , 41, 42, 43  Next  :| |:
Total Commander -> Плагины Total Commander

#616:  Author: Loopback PostPosted: Fri Sep 13, 2019 14:52
    —
Flasher wrote:
Проверь с KernelBase.dll.

Не уверен, что можно просто так взять и подменить системные библиотеки. Ну и как минимум надо 32 битную семерку еще ставить. На самом деле вряд ли тут виновата именно эта библиотека.

Сегодня-завтра попробую кое-что изменить, возможно поможет.
Flasher wrote:
Ну, правильно. Где я соврал относительно указаний на моём скриншоте? Разве что ещё выступ в маленькой рамке сверху пофиксен.

Ну ты пишешь "убралась только лишняя часть справа, в остальном — по-старому". Логично предположить, что сползание рамки влево на список - осталось, а это и была главная проблема. Разница в пиксель - мелочь, наличие пространства снизу - это не баг, а так и задумано.
Flasher wrote:
Тогда, наверное, следующий релиз уже с ListLoadNext стоит выкладывать.

Я уже писал раньше, что это требует переписывания приличной части кода. Оно в планах, но к какому конкретно релизу - не знаю.

#617:  Author: FlasherLocation: Москва PostPosted: Fri Sep 13, 2019 15:25
    —
Loopback wrote:
Ну и как минимум надо 32 битную семерку еще ставить. На самом деле вряд ли тут виновата именно эта библиотека.
Попробуй их с kernel32.dll положить в папку с TCMediaInfo.wdx и посмотреть, что произойдёт в 32-битном ТС.

Loopback wrote:
а это и была главная проблема. Разница в пиксель - мелочь, наличие пространства снизу - это не баг, а так и задумано.
Мелочь бросается в глаза и окно не красит. Разницы между лишним пространством снизу и слева не вижу. Два сапога пара. Смысл задумки неясен.

Loopback wrote:
Я уже писал раньше, что это требует переписывания приличной части кода. Оно в планах, но к какому конкретно релизу - не знаю.
Писал, что потребует переделки, а чего именно не писал. Релиз подразумевался вроде как текущий. Посмотри исходники CudaLister, там это есть.

#618:  Author: Loopback PostPosted: Fri Sep 13, 2019 20:21
    —
Flasher wrote:
Попробуй их с kernel32.dll положить в папку с TCMediaInfo.wdx и посмотреть, что произойдёт в 32-битном ТС.

Ничего не происходит, не цепляет их. По-моему, не прокатит такой фокус с системными библиотеками.

Flasher wrote:
Разницы между лишним пространством снизу и слева не вижу. Два сапога пара.

Разница есть, так как есть список (или дерево) слева, высота которого и определяет высоту диалога. При такой раскладке это стандартная практика, что на полупустой странице снизу остается пространство. И еще смысл задумки в том, чтобы изначально иметь запас пространства и не втискивать потом контролы (как в настройках ТС, например). Не вижу ничего хорошего в тесных интерфейсах.

Flasher wrote:
Писал, что потребует переделки, а чего именно не писал. Релиз подразумевался вроде как текущий.

Ну ок, значит так. Релиз подразумевался как не текущий на тот момент. Это значит один из следующих. Может и ближайший, как пойдет.

Flasher wrote:
Посмотри исходники CudaLister, там это есть.

Да как именно реализовывать-то вроде вопросов и не возникало...

#619:  Author: FlasherLocation: Москва PostPosted: Fri Sep 13, 2019 22:49
    —
Loopback wrote:
По-моему, не прокатит такой фокус с системными библиотеками.
Да, тут, пожалуй, подмена нужна.

Loopback wrote:
так как есть список (или дерево) слева, высота которого и определяет высоту диалога.
Так логика должна подсказывать, что урезать надо и его тоже. Не будет же он поверх нижнего края окна висеть. Laughing

Loopback wrote:
чтобы изначально иметь запас пространства и не втискивать потом контролы (как в настройках ТС, например).
Т.е. настройки ТС — это нестандартная практика? Smile Как раз с такой практикой, как у тебя, крайне трудно столкнуться. Пытаюсь вспомнить другие программы с таким "запасом", и что-то на ум ничего не приходит. Если бы это было стандартной практикой, я бы об этом и не писал. И потом, у тебя есть в планах добавлять туда какие-то новые контролы? Потом растянуть под них окно разве будет проблемой?

Loopback wrote:
Релиз подразумевался как не текущий на тот момент.
В фразе "может в следующей" на тот момент мог подразумеваться как раз текущий (крайний выложенный).

Loopback wrote:
Да как именно реализовывать-то вроде вопросов и не возникало.
Судил по неуверенности в словах:
Loopback wrote:
"Я так понимаю, это реализуется функцией ListLoadNext. Должно быть не очень сложно".
Думал, что есть шанс внедрить фичу без переписывания.

#620:  Author: Loopback PostPosted: Sat Sep 14, 2019 14:21
    —
Flasher
Хотел было начать отвечать по пунктам, но что-то мне кажется, что на эту переписку уходит слишком много времени. А всё равно каждый останется при своём мнении. Решил лучше сделать что-то более продуктивное Smile

Тестовая версия с ListLoadNext.

Заодно проверь ещё раз запуск экзешником, кое-что поменял.

#621:  Author: FlasherLocation: Москва PostPosted: Sat Sep 14, 2019 19:04
    —
Loopback
ListLoadNext работает. Спасибо! Теперь удобно. Smile Сразу по песочным часам заметил, как плагин долго (ок. 2 сек) думает перед показом инфы, чего раньше не замечал.
Экзешник (прежний) так и падает. Ну, и фиг с ним, буду через ярлык запускать, не так принципиально.

А вообще настройки отображения в диалоге были в планах?

#622:  Author: Loopback PostPosted: Sun Sep 15, 2019 22:42
    —
Flasher wrote:
Сразу по песочным часам заметил, как плагин долго (ок. 2 сек) думает перед показом инфы, чего раньше не замечал.

Задержка всегда была, разумеется. Но сейчас часы необходимы, иначе вообще непонятно, что плагин что-то делает.
Flasher wrote:
Экзешник (прежний) так и падает. Ну, и фиг с ним, буду через ярлык запускать, не так принципиально.

Жаль. Ну ладно, может еще какая мысль придет, или потом сделаю отладочную версию.
Flasher wrote:
А вообще настройки отображения в диалоге были в планах?

Ну имя функции OpenConfigDialog как бы намекает, что планы были Wink Когда - не знаю.

#623:  Author: FlasherLocation: Москва PostPosted: Mon Sep 16, 2019 02:19
    —
Loopback wrote:
Но сейчас часы необходимы, иначе вообще непонятно, что плагин что-то делает.
Грузит данные. Что ж ещё? Меня вис часов напрягает. После Ctrl+Q часы исчезают куда быстрее (до отображения), чем при переходе на следующий файл. Я бы и при переходе предпочёл не видеть часов. Опцию можно добавить?
Loopback wrote:
может еще какая мысль придет, или потом сделаю отладочную версию.
ОК.
Loopback wrote:
Когда - не знаю.
Ясно.

В прошлый раз забыл отметить по WLX.
1. Для глав кириллица идёт кракозябрами.
2. В компактных режимах если текст в левой колонке больше её фиксированной ширины, то он смешивается с текстом в правой.

#624:  Author: Loopback PostPosted: Mon Sep 16, 2019 12:47
    —
Flasher wrote:
Меня вис часов напрягает.

Без часов совсем неудобно - не видно реакции на нажатие клавиш. И мне кажется это не та фича, которая требует отдельной опции.
Flasher wrote:
1. Для глав кириллица идёт кракозябрами.

Не видел такого ни на одном файле. Вроде не должно быть, это же не теги mp3. Кинь пример.
Flasher wrote:
2. В компактных режимах если текст в левой колонке больше её фиксированной ширины, то он смешивается с текстом в правой.

Да, есть такое. Пока только можно увеличить InfoLeftMargin. Тут не так просто сделать автоматическое определение ширины, т.к. придется как-то в скрипте вычислять ширину каждой строки и находить максимальную.

#625:  Author: FlasherLocation: Москва PostPosted: Mon Sep 16, 2019 15:39
    —
Loopback wrote:
Без часов совсем неудобно - не видно реакции на нажатие клавиш.
Процесс отображения и есть реакция. Другой не требуется. Удобства в часах при 2 сек нет никакого, а раздражающий фактор есть.

Loopback wrote:
Кинь пример.
В ЛС — пачка.
Сей момент не всех mkv касается, хватает и беспроблемных.

Loopback wrote:
т.к. придется как-то в скрипте вычислять ширину каждой строки и находить максимальную.
А перевод строки в первой колонке не сможешь сделать? А то есть очень длинные строки, в итоге читабельность напрочь пропадает.

И почему-то кнопка вместо плагина открывает файл в Листере:
Code:
TOTALCMD#BAR#DATA
%COMMANDER_EXE% /O /S=L:Ptcmediainfo
%V
wcmicons.dll,47
Видео под курсором в TCMediaInfo

#626:  Author: Loopback PostPosted: Mon Sep 16, 2019 21:00
    —
Flasher wrote:
Сей момент не всех mkv касается, хватает и беспроблемных.

Скачал пару штук, главы криво добавлены изначально. Они одинаково криво выглядят и в MediaInfo GUI, и в mkvtoolnix, и в MPC-HC. Не думаю, что тут можно что-то исправить.
Flasher wrote:
А перевод строки в первой колонке не сможешь сделать?

Нет.
Flasher wrote:
И почему-то кнопка вместо плагина открывает файл в Листере:

Не пользовался этим никогда... Но проблема нашлась быстро - расширение плагина wdx, а эта штука работает только если оно wlx. Похоже на баг ТС.

Анонс

В процессе многомесячного марафона по доработке конфига Smile постоянно появлялась мысль, что путь с задаваемыми источниками сильно ограничивает полет фантазии. Да и в целом код был слишком сложный и не очень эффективный, при увеличении количества источников эффективность падает всё больше. В результате wdx-часть была переписана с нуля.

Теперь плагин сохраняет все непустые поля, больше не нужно беспокоиться по поводу увеличения количества источников. Все значения доступны для скриптинга (работа со значениями реализована аналогично WLX). За счет оперативного кэша в памяти, после первичной загрузки из базы плагин работает быстрее. Данные дискового кэша хранятся в базе в сжатом виде, что позволяет сохранить ее размер в разумных пределах.

Понятное дело, преемственность конфига полностью сохранить не было возможности, но переделки в настройках полей минимальны. В узле источников теперь задаются только некоторые поля, которых по умолчанию нет в кэше (*/String) или для которых требуется специальная обработка. Как следствие, новую версию придется выпустить как глобальное обновление.

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

Скачать

#627:  Author: FlasherLocation: Москва PostPosted: Mon Sep 16, 2019 23:59
    —
Loopback wrote:
Не думаю, что тут можно что-то исправить.
Основная масса отображает слово Глава в ANSI вместо UTF-8.
Code:
en:Глава 1
en:глава 1
Разве проблема определить кодировку?

Loopback wrote:
Нет.
А строку из второй колонки перенести на дополнительную? А то картинка такая себе:


Loopback wrote:
Не пользовался этим никогда...
Удивительно. Нужная вещь, особенно для тестов.

Loopback wrote:
а эта штука работает только если оно wlx. Похоже на баг ТС.
Привязал к относительной символьной ссылке wlx\TCMediaInfo.wlx. Результат:
Code:
Crash in plugin TCMediaInfo.wlx:ListLoadW:
Access violation at address 02E0BAFF. Read of address 0000003C
Вообще это сообщение стало часто появлятся и при стандартных вызовах. Вдобавок ещё это: Error in configuration file! Please check it's structure. Файл неважен. И после первого всплыва ошибка остаётся всюду до переоткрытия ТС. Но и после перезапуска может сразу появляться.

В альфе ряд колонок из прежнего дефолтного конфига не отображается. Не буду перечислять. Битрейт аудио, Общий битрейт, Всё видео одной строкой выдают 2Variable not found: ....

#628:  Author: Loopback PostPosted: Tue Sep 17, 2019 12:04
    —
Flasher wrote:
Разве проблема определить кодировку?

Если UTF8 еще можно определить, то попробуй определи, что было написано тут:
Code:

[]绗?01 绔?
[]绗?02 绔?
[]绗?03 绔?

Flasher wrote:
А строку из второй колонки перенести на дополнительную?

Легко, переноси. Вместо одного вызова LineAddText будет два, первый выводит заголовок, второй - данные.
Flasher wrote:
Привязал к относительной символьной ссылке wlx\TCMediaInfo.wlx. Результат:

Делал то же самое, никаких падений. Файл конфига рядом со вторым файлом есть?
Flasher wrote:
В альфе ряд колонок из прежнего дефолтного конфига не отображается.

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

#629:  Author: FlasherLocation: Москва PostPosted: Tue Sep 17, 2019 12:27
    —
Loopback wrote:
Если UTF8 еще можно определить
Нужно.
Loopback wrote:
то попробуй определи, что было написано тут:
Там реальный косяк. Он единственный. Больше таких не попадалось.

Loopback wrote:
Легко, переноси.
Так я тебе это предлагаю сделать. Прежде всего проверять ширину текста и в случае невмещения создавать вторую строку. Или ты считаешь, что то, что я привёл на скриншоте, — это нормальное положение вещей?

Loopback wrote:
Файл конфига рядом со вторым файлом есть?
Ага, теперь понял свою ошибку. Ну, там ещё MediaInfo.dll, Sqlite3.dll и lng ? должны быть. Проще тогда всё к wlx цеплять. Тебе, наверно, стоит заменить расширения и type=wlx в pluginst.inf.

Loopback wrote:
На это пока можно не обращать внимания.
Понятно. Тогда напиши, как конфиг будет готов.

#630:  Author: Loopback PostPosted: Tue Sep 17, 2019 13:25
    —
Flasher wrote:
Нужно.

Да что-то сомневаюсь, что прям так уж нужно. Из-за нескольких криворуко сделанных файлов придется городить целый огород и как-то вписывать эту проверку в скрипт, замедляя и так небыструю работу. Скорее всего придется добавлять отдельную функцию. И главное в чём профит? Узнать, что написано "Глава"? Все равно в плеерах отображаться будет криво.

Flasher wrote:
Прежде всего проверять ширину текста и в случае невмещения создавать вторую строку.

Посмотрим. Наверно, все же в первую очередь можно сделать динамическое положение разделителя по самой широкой строке, чтобы хотя бы не накладывалось. Остальные украшательства потом.
Flasher wrote:
Тебе, наверно, стоит заменить расширения и type=wlx в pluginst.inf.

Плагин уже идет как контентный на wincmd.ru.

Вообще для этих целей интересный подход применен в плагине Imagine. Там весь функционал в одной dll, а разные типы плагинов реализованы врапперами. Возможно, имеет смысл такой вариант, раз уж в ТС нет удобной работы с мультиплагинами в одном файле.

Flasher wrote:
Понятно. Тогда напиши, как конфиг будет готов.

Конфиг сейчас вторичен. Интересно, как в целом со стабильностью и скоростью работы.



Total Commander -> Плагины Total Commander


output generated using printer-friendly topic mod. All times are GMT + 4 Hours

Goto page Previous  1, 2, 3 ... , 41, 42, 43  Next  :| |:
Page 42 of 43

Powered by phpBB © 2001, 2005 phpBB Group