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 

Single Post  Topic: [WFX] VirtualPanel - временная панель для ТК (Unicode) 
Author Message
MVV



PostPosted: Sat Jan 23, 2010 16:47    Post subject: [WFX] VirtualPanel - временная панель для ТК (Unicode) Reply with quote

VirtualPanel - это реализация временной панели для Total Commander. Это что-то вроде виртуальной папки для хранения ссылок на часто используемые файлы и взаимодействия с ними как с реальными файлами, а не как ссылками. Она не хранит файлы, она хранит только ссылки на них в специальных файлах-списках.
VP можно использовать как временное хранилище кучи файлов, которую нужно скопировать куда-то ещё. Также её можно использовать для каталогизации медиа файлов и для других целей. В частности, можно настроить папку для автоматического сбора файлов из нескольких каталогов компьютера.

Рад представить вам свою реализацию модуля временной панели. Появилась она по причине того, что существовавшие ранее аналоги не позволяли в полной мере использовать возможности подобных панелей. Обзор и примеры использования временных панелей в тотале можно найти здесь.

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

Временная панель позволяет хранить ссылки файлы и папки, к которым приходится часто обращаться, и собственно обращаться к ним, как к обычным файлам (в меру возможностей интерфейса файловых систем ТК).

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

Информация о последней версии

Версия: 2.0.7 32/64
URL: VirtualPanel на wincmd.ru / VirtualPanel на totalcmd.net

Требования: Windows 2000 и выше, Total Commander Smile

Возможности:

+ хранение ссылок на файлы и каталоги, а также виртуальные каталоги
+ сохранение содержимого VP при выходе, завершении работы Windows, по таймеру или после модификации
+ импорт/экспорт содержимого всей VP или отдельных папок
+ импорт/экспорт списков имен файлов (например, m3u)
+ корректная обработка операций копирования/перемещения
+ удаление файлов физически при зажатой клавише Shift
+ протоколирование операций с файлами
+ внутренние команды, расширяющие возможности (выполните команду ? для списка команд)
+ возможность выполнять команды блоками, а также создавать файлы скриптов
+ автовыполняемые скрипты при загрузке состояния или при входе в каталог
+ возможность удалённого запуска скриптов
+ виртуальный браузер с поддержкой перетаскивания файлов
+ поддержка многопоточности (фоновые операции в ТК 7.55 и более поздних)
+ поддержка внутренних ассоциаций в ТК 7.51 и более поздних
+ поддержка стандартной в ТК команды cd
+ полная поддержка Юникода

Общая информация:

Файловая система модуля может содержать три обобщенных типа объектов: виртуальный объект (файл/папка, не имеет реального источника), ссылка на реальный объект (файл/папку, хранит ссылку на источник) и реальный объект (отображаются при входе в папку-ссылку). Виртуальные файлы могут содержать скрипты (последовательности команд для выполнения), виртуальные папки обычно используются для упорядочения ссылок на реальные объекты, их можно создавать/копировать/переименовать/удалять. Для объектов-ссылок доступны привычные операции - обзор папки, запуск (открыть папки по ссылке можно через Ctlr+Enter + Enter), просмотр содержимого, открытие окна свойств, удаление, копирование/перемещение на обычную панель или в другую папку VP. При удалении объекта-ссылки удаляется только ссылка. Для удаления также и объекта-источника необходимо удержать клавишу Shift до появления диалога подтверждения. При удалении объектов внутри реальных папок запрос отображается в любом случае.

Вы можете добавить ссылки для запуска программ или вызова документов (плейлистов, мультимедиа файлов и т.п.) или даже целых папок, причем программы могут быть запущены с параметрами командной строки, как из обычной панели (при этом путь запуска будет соответствовать папке-источнику текущей папки). Однако, внутри виртуальной папки доступны только внутренние команды и запуск программ, имеющих ссылки внутри структуры временной панели (по абсолютному или относительному пути).

При копировании файлов во временную панель действие зависит от типа текущей папки назначения. Если файлы копируются в папку-ссылку, происходит физическое копирование. Если же это чисто виртуальная папка (такие показаны специальным значком папки с красной окантовкой, причем значок может быть указан пользователем в файле конфигурации), файлы добавляются к содержимому виртуальной папки (если копируется структура, ТК дублирует ее, создавая виртуальные папки). Добавление физической папки как ссылки возможно только с использованием внутренней команды <add (иное ТК пока не позволяет).

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

Полную справку по параметрам, командам и скриптам смотрите в файле Readme.txt, входящему в дистрибутив модуля.


Панель инструментов, позволяющая использовать основные команды VirtualPanel:
Code:
[Buttonbar]
Buttoncount=18
button1=WCMICONS.dll,3
cmd1=%COMMANDER_PATH%\Plugins\FileSystem\VirtualPanel\VPBatch.exe
param1=^explore .
iconic1=0
menu1=V>V  Virtual Explorer
button2=
iconic2=0
button3=WCMICONS.dll,65
cmd3=%COMMANDER_PATH%\Addons\AskParam\AskParam.exe
param3=/c"Добавление ссылки на временную панель" /t"%%${}Path%%\"%N /p"Добавить "%N" как:" "%%COMMANDER_PATH%%\Plugins\FileSystem\VirtualPanel\VPBatch.exe" ^add "%%1" %P%N
iconic3=0
menu3=P>V  Добавить объект на временную панель...
button4=WCMICONS.dll,63
cmd4=%COMMANDER_PATH%\Addons\AskParam\AskParam.exe
param4=/c"Перемещение внутри временной панели" /t"%T"%S1 /p"Переместить "%S1" в:" "%%COMMANDER_PATH%%\Plugins\FileSystem\VirtualPanel\VPBatch.exe" ^exec { ^move %S1 "%%1" }
iconic4=0
menu4=V>V  Переместить объект...
button5=WCMICONS.dll,64
cmd5=%COMMANDER_PATH%\Plugins\FileSystem\VirtualPanel\VPBatch.exe
param5=^ifok "Удалить %%${}Path%%\"%S1" из виртуальной панели?" { ^del /rd "%%${}Path%%\"%S1 }
iconic5=0
menu5=V>X  Удалить объект из временной панели...
button6=WCMICONS.dll,28
cmd6=%COMMANDER_PATH%\Plugins\FileSystem\VirtualPanel\VPBatch.exe
param6=^edit "%S1"
iconic6=0
menu6=V>V  Редактировать целевой объект/скрипт...
button7=
iconic7=0
button8=WCMICONS.dll,63
cmd8=%COMMANDER_PATH%\Addons\AskParam\AskParam.exe
param8=/c"Перемещение целевого объекта" /t%P%N /p"Переместить целевой объект "%S1" в:" "%%COMMANDER_PATH%%\Plugins\FileSystem\VirtualPanel\VPBatch.exe" ^tgmove %S1 "%%1"
iconic8=0
menu8=V*P  Переместить целевой объект...
button9=WCMICONS.dll,32
cmd9=%COMMANDER_PATH%\Addons\AskParam\AskParam.exe
param9=/c"Переименование ссылки и целевого объекта" /t%S1 /p"Переименовать "%S1" и целевой объект в:" "%%COMMANDER_PATH%%\Plugins\FileSystem\VirtualPanel\VPBatch.exe" ^tgmove %S1 "%%1" ^move %S1 "%%1"
iconic9=0
menu9=V*P  Переименовать вместе с целевым объектом...
button10=
iconic10=0
button11=WCMICONS.dll,4
cmd11=%COMMANDER_PATH%\Addons\AskParam\AskParam.exe
param11=/c"Загрузка файла состояния" /t%P%N /p"Укажите путь к файлу состояния:" "%%COMMANDER_PATH%%\Plugins\FileSystem\VirtualPanel\VPBatch.exe" ^load "%%1"
iconic11=0
menu11=P>V  Загрузить файл состояния...
button12=WCMICONS.dll,76
cmd12=%COMMANDER_PATH%\Plugins\FileSystem\VirtualPanel\VPBatch.exe
param12=^ifok "Удалить всё содержимое папки %%${}Path%%?" { ^del /rd "%%${}Path%%\*" }
iconic12=0
menu12=V>X  Очистить текущую папку...
button13=WCMICONS.dll,51
cmd13=%COMMANDER_PATH%\Addons\AskParam\AskParam.exe
param13=/c"Загрузка файла состояния в папку" /t%P%N /p"Файл состояния для загрузки в %%${}Path%%:" "%%COMMANDER_PATH%%\Plugins\FileSystem\VirtualPanel\VPBatch.exe" ^load "%%1" .
iconic13=0
menu13=P>V  Загрузить содержимое файла состояния в текущую папку...
button14=
iconic14=0
button15=WCMICONS.dll,50
cmd15=%COMMANDER_PATH%\Addons\AskParam\AskParam.exe
param15=/c"Экспорт списка имен файлов" /t%P"%O".m3u /p"Создаваемый список MP3-файлов из %%${}Path%%:" "%%COMMANDER_PATH%%\Plugins\FileSystem\VirtualPanel\VPBatch.exe" ^export /a "%%1" . *.mp3
iconic15=0
menu15=P<V  Создать M3U-список из MP3-файлов текущей виртуальной папки...
button16=
iconic16=0
button17=WCMICONS.dll,34
cmd17=%COMMANDER_PATH%\Plugins\FileSystem\VirtualPanel\VPBatch.exe
param17=^prop
iconic17=0
menu17=Параметры
button18=WCMICONS.dll,34
cmd18=%COMMANDER_PATH%\Plugins\FileSystem\VirtualPanel\VPBatch.exe
param18=^config
iconic18=0
menu18=Настройки

Сохраните как VirtualPanel.bar и добавьте на панель инструментов. Пути к VPBatch.exe и AskParam.exe нужно прописать свои.


Last edited by MVV on Wed May 01, 2019 22:25; edited 45 times in total
View user's profile Send private message ICQ Number


Powered by phpBB © 2001, 2005 phpBB Group