View previous topic :: View next topic |
Author |
Message |
790
Joined: 09 Aug 2008 Posts: 338
|
(Separately) Posted: Sat Oct 26, 2024 01:53 Post subject: |
|
|
А как сортировать файлы по имени в плагине? У меня только по размеру по убыванию сортирует. Настроек сортировки не нашёл. _________________ TC 11.55, Win10x64
Cuda уехал text, он был ещё вчераа... |
|
Back to top |
|
 |
Loopback
Joined: 07 Sep 2009 Posts: 1629
|
(Separately) Posted: Sat Oct 26, 2024 12:01 Post subject: |
|
|
790
Если в части WCX - то сортировкой занимается тотал.
В WLX никакой сортировки нет, файлы выводятся в том порядке, в каком они расположены в файле торрента. |
|
Back to top |
|
 |
790
Joined: 09 Aug 2008 Posts: 338
|
(Separately) Posted: Sat Oct 26, 2024 18:13 Post subject: |
|
|
Loopback
Я про WLX. Просматриваю torrent с сериалом, а там, видимо, автор понаставил всё по размеру, а хочется-то по названию от первой до последней, чтобы понять все ли серии присутствуют. Поэтому и хотелось бы иметь возможность своей сортировки или сортировки по умолчанию, взятой из ТС. _________________ TC 11.55, Win10x64
Cuda уехал text, он был ещё вчераа... |
|
Back to top |
|
 |
Loopback
Joined: 07 Sep 2009 Posts: 1629
|
(Separately) Posted: Sat Oct 26, 2024 20:43 Post subject: |
|
|
790
Понятно, но вероятность добавления сортировки очень мала. |
|
Back to top |
|
 |
Loopback
Joined: 07 Sep 2009 Posts: 1629
|
(Separately) Posted: Tue Nov 12, 2024 20:47 Post subject: |
|
|
yozhik wrote: | А можно ли ещё отступ (margin) слева чуть увеличить (или сделать настраиваемым)? |
Кажется я дезинформировал по поводу отступа, сам уже не помню, что делал Он же давно есть, настройкой только в ini, ключ MarginLeft. Правда, в данный момент отступ игнорирует заданный цвет, но это поправлю. |
|
Back to top |
|
 |
yozhik

Joined: 04 May 2014 Posts: 308 Location: Электросталь
|
(Separately) Posted: Wed Nov 13, 2024 00:42 Post subject: |
|
|
Loopback
Ага, спасибо. Точно, работает. Если цвет поправите, будет вообще замечательно, а я пока MarginLeft в 0 выставил, чтобы в тёмном режиме белую полоску не добавлял.
А самое ужасное — то, что в справке то про MarginLeft написано, а я, прежде чем волну подымать, не перечитал. Так что мой стыд, моя краска А не Ваши. _________________ Amo ergo sum |
|
Back to top |
|
 |
Loopback
Joined: 07 Sep 2009 Posts: 1629
|
(Separately) Posted: Wed Jul 09, 2025 20:16 Post subject: |
|
|
Новая версия 2.2.0 на wincmd.ru.
Quote: | - WLX: не работало автоопределение языка, если секция была переадресована
- WLX: исправлено наложение текста на значки на HiDPI
- WLX: исправлено отображение списков в настройках на HiDPI
- WLX: изменения в группах расширений не активировали кнопку "Применить"
+ WLX: настройка шрифта для текста статусной строки
+ WLX: режим с отдельной колонкой для расширений
+ WLX: опции в ini для настройки ширины панелей статусной строки и её высоты
+ WLX: запоминание последней страницы настроек в пределах сессии
+ WLX: новая страница "Макет" в настройках, опции перераспределены
+ WLX: режим вписывания содержимого в ширину окна
- WLX: не применялся фоновый цвет левого отступа
+ WLX: корректное склонение числа файлов для русской локализации
+ WLX: отображение в статусной строке размера и количества выбранных файлов
- WLX: исправлено медленное сворачивание больших списков
+ WLX: диалог выбора цвета раскрывается полностью, с пользовательскими цветами
|
Самое большое изменение за последние несколько лет. Реализация давно (и довольно опрометчиво) обещанного функционала, а не то чтобы мне этого хотелось... Что-то серьёзно менять в древнем коде тяжело, на эту пару фич было потрачено какое-то неприличное количество времени. Так или иначе, гештальт закрыт, подобных крупных изменений больше ждать не стоит Только исправления или что-то по мелочам. |
|
Back to top |
|
 |
cluster
Joined: 26 May 2009 Posts: 81
|
(Separately) Posted: Tue Jul 22, 2025 01:24 Post subject: |
|
|
А цвет статусной строки не настраивается?
Шрифт и цвет текста, ширину и высоту колонок в статусбаре настроить можно, а про цвет забыли? |
|
Back to top |
|
 |
Loopback
Joined: 07 Sep 2009 Posts: 1629
|
(Separately) Posted: Tue Jul 22, 2025 12:05 Post subject: |
|
|
cluster
Стандартный статусбар не позволяет нормально закрашивать фон всего компонента, особенно с включенными темами. Доступна только закраска фона панелей. Для обхода проблемы придется делать полностью кастомный компонент, но заниматься этим желания нет. |
|
Back to top |
|
 |
yozhik

Joined: 04 May 2014 Posts: 308 Location: Электросталь
|
(Separately) Posted: Tue Jul 22, 2025 15:46 Post subject: |
|
|
cluster
Если бы только статусбар, а то ведь ещё и скроллбары придётся подтягивать...
Loopback
А вот эта библиотека могла бы чем то пригодиться?
https://github.com/ozone10/darkmodelib
Заранее прошу прощения если я совсем мимо угодил (в молоко ), ибо я — лирик, т.е. совсем не физик. И да, «гештальт закрыт» — согласны, поддерживаем. Но вдруг эта библиотека позволит решить всё быстро и хорошо (я, правда, в такое не очень верю, но пока ещё иногда надеюсь ). А нет, так нет, и без того добро.
Я про эту библиотеку узнал после того, как её прикрутил к своему детищу Кшиштоф Ковальчук, автор SumatraPDF. Он до этого сам контролы красил, и SumatraPDF в тёмном обличье была как страшный сон. А как прикрутил, так заблестела, как в автосалоне. Ему автор этой библиотеки помогал, вот история. Ну, и если в этом плагине она Вам не пригодится, то может где в другом. _________________ Amo ergo sum |
|
Back to top |
|
 |
Loopback
Joined: 07 Sep 2009 Posts: 1629
|
(Separately) Posted: Tue Jul 22, 2025 22:08 Post subject: |
|
|
yozhik
Видел эту библиотеку. Нет, напрямую не использовать (плагин на дельфи). А выковыривать оттуда решения и применять их - это опять же написание чего-то своего. Так что простых решений нет, а сложные - это время, которое тратить на рюшечки, если честно, жалко  |
|
Back to top |
|
 |
Loopback
Joined: 07 Sep 2009 Posts: 1629
|
(Separately) Posted: Mon Sep 29, 2025 20:59 Post subject: |
|
|
В общем идея отдельного интерфейса для получения данных торрента, озвученная в соседней ветке, неожиданно зацепила, даже отвлекся немного от чистки кода Autorun. Не всем это интересно, поэтому ссылка и технические подробности под катом. Никаких других изменений относительно последнего релиза нет.
 Hidden text
Тестовая версия от 30.09.2025
Интерфейс очень похож на интерфейс MediaInfo, что позволяет не использовать буфер и не задумываться о размере получаемых данных. Позволяет получить любую информацию о торренте, которую можно получить через wdx + файлы + все трекеры/вебсиды и т. д. В наборе 4 функции, соглашение по вызову stdcall.
Code: | HANDLE TorrentOpen(LPCWSTR FileName) |
Открывает, парсит файл торрента и подготавливает данные. В случае успеха возвращает хэндл объекта, в случае критической ошибки - 0. Если ошибка не совсем критическая, то позднее можно получить текст ошибки с TorrentGet.
Code: | LPWSTR TorrentGet(HANDLE Handle, LPCWSTR InfoType, int Index) |
Параметр InfoType может быть одной из строк:
Code: | Name
TotalSize
FileCount
BlockSize
BlockCount
Created
Creator
Hash
Comment
Encoding
Webseed
Multifile
PrivateTorrent
Publisher
PublisherURL
Tracker
File
FileSize
CustomField |
Некоторые типы информации могут иметь несколько значений, для их получения используется параметр Index. Отсчёт начинается с 0.
В случае успеха функция вернёт полученное значение, в случае ошибки (неправильный handle или имя поля) - NULL.
Code: | UINT TorrentCountGet(HANDLE Handle, LPCWSTR InfoType) |
Параметр InfoType аналогичен TorrentGet. Функция возвращает число значений данного поля. Для фиксированных полей результат всегда 1. Если поле с таким именем не существует - 0.
Code: | void TorrentClose(HANDLE Handle)
|
Освобождает память объекта.
Пример получения данных на Autorun, вывод в DebugView:
Code: |
Func TorrentInfo(sFile)
Static aFixed = List('Name', 'TotalSize', 'FileCount', 'BlockSize', 'BlockCount', _
'Created', 'Creator', 'Hash', 'Comment', 'Encoding', _
'Multifile', 'PrivateTorrent', 'Publisher', 'PublisherURL')
Static aMulti = List('Tracker', 'Webseed', 'Error', 'CustomField')
Static sLibName = "TCTorrent.wlx" & (auX64 ? "64" : "")
# Необходимо поменять путь на свой!
Static sLibPath = %COMMANDER_PATH & "\Plugins\wlx\TCTorrent\" & sLibName
Local hDll = DllCall("LoadLibrary", "wstr", sLibPath, "handle")
If hDll = 0 Then Return
Local hHandle = DllCall(sLibName & "\TorrentOpen", "wstr", sFile, "handle")
If hHandle = 0 Then
DllCall("FreeLibrary", "handle", hDll)
Return
EndIf
Local nCount, sRes
For i = 0 to aFixed.Count - 1
sRes = DllCall(sLibName & "\TorrentGet", "handle", hHandle, "wstr", aFixed[i], "int", 0, "wstr")
OutputDebugString(aFixed[i] & ": " & sRes)
Next
OutputDebugString(auCRLF & 'Files:')
nCount = DllCall(sLibName & "\TorrentCountGet", "handle", hHandle, "wstr", "File", "uint")
For j = 0 To nCount - 1
sRes = StrFormat("[%12s] %s", _
DllCall(sLibName & "\TorrentGet", "handle", hHandle, "wstr", "FileSize", "int", j, "wstr"), _
DllCall(sLibName & "\TorrentGet", "handle", hHandle, "wstr", "File", "int", j, "wstr"))
OutputDebugString(sRes)
Next
For i = 0 to aMulti.Count - 1
OutputDebugString(auCRLF & aMulti[i] & 's:')
nCount = DllCall(sLibName & "\TorrentCountGet", "handle", hHandle, "wstr", aMulti[i], "uint")
For j = 0 To nCount - 1
sRes = DllCall(sLibName & "\TorrentGet", "handle", hHandle, "wstr", aMulti[i], "int", j, "wstr")
OutputDebugString(sRes)
Next
Next
DllCall(sLibName & "\TorrentClose", "handle", hHandle)
DllCall("FreeLibrary", "handle", hDll)
EndFunc
|
Last edited by Loopback on Tue Sep 30, 2025 22:01; edited 1 time in total |
|
Back to top |
|
 |
Orion9

Joined: 01 Jan 2024 Posts: 902
|
(Separately) Posted: Tue Sep 30, 2025 20:15 Post subject: |
|
|
Loopback
Спасибо. Функционал топовый, наверняка кому-то пригодится для собственных нужд. И большое спасибо, что сразу сделали пример использования на Autorun. Просто супер ) Но у есть меня пара вопросов. Почему в этом вызове в индексе используется "i":
Code: | sRes = DllCall(sLibName & "\TorrentGet", "handle", hHandle, "wstr", aFixed[i], "int", i, "wstr") |
И как извлечь сведения о размере файлов внутри торрента? |
|
Back to top |
|
 |
Loopback
Joined: 07 Sep 2009 Posts: 1629
|
(Separately) Posted: Tue Sep 30, 2025 22:05 Post subject: |
|
|
Orion9 wrote: | Почему в этом вызове в индексе используется "i": |
Точно, это ошибка копипасты. Для фиксированных полей параметр игнорируется, можно использовать 0.
Orion9 wrote: | И как извлечь сведения о размере файлов внутри торрента? |
А вот про размер я совершенно забыл Добавил, обновил файл и пример. |
|
Back to top |
|
 |
Orion9

Joined: 01 Jan 2024 Posts: 902
|
(Separately) Posted: Wed Oct 01, 2025 00:27 Post subject: |
|
|
Loopback
Спасибо. Теперь лучше ) |
|
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
|