Страница 1 из 4

Кнопка-меню-список с шаблонами поиска?

Добавлено: Вс апр 01, 2012 22:07
kadvlad
Хотелось бы сделать кнопку с выпадающим списком имеющихся шаблонов поиска (CTRL-F12) для быстрого применения фильтра отображения файлов в текущей директории.
Можно ли задать для каждого имеющегося шаблона отдельную команду (возможно, через пользовательские команды), чтобы поместить их в этот список?

Имеется стандартная команда

Код: Выделить всё

314="Активная: задать фильтр" = cm_SrcUserDef
Имеется пользовательский шаблон

Код: Выделить всё

[Searches]
..
Sample_SearchFor=*.ext
Как и где указать параметры − требуемый тип (расширение) файла для выделения/отображения?
Или ход мысли в принципе ошибочный?

Помогите разобраться, пожалуйста.

Добавлено: Вс апр 01, 2012 22:56
Flasher
em_блабла: SELECTFILES <*.ext *.ex2>
TCMC.exe EMem_блабла CM2023 CM524

Добавлено: Вс апр 01, 2012 23:08
kadvlad
Flasher,
спасибо.

Про ТСМС думал, но не знал, как указывать <*.ext *.ex2>.

Добавлено: Пн апр 02, 2012 22:24
kadvlad
Flasher,
уточню вопрос.

Хотелось бы не просто автоматизацию выделения заданных типов файлов, а именно применение фильтра отображения файлов в текущей панели − именно чтобы были видны только заданные типы.

Для этого используется команда cm_SrcUserDef, но вот передать ей параметры не получается; каждый раз открывается диалоговое окно выбора шаблона.
Пробовал по аналогии с командами selectfiles и loadsearch, которые воспринимают параметры:

Код: Выделить всё

[em_txt]
cmd=cm_SrcUserDef
param=>Text
или

Код: Выделить всё

[em_txt]
cmd=cm_SrcUserDef
param=%A
где >Text - имя сохранённого шаблона поиска
%A - подстановка для Text в пользовательской команде:

Код: Выделить всё

em_txt >Text
Видимо, это невозможно (?)
Появилась идея реализовать задачу на vbs, эмулируя нажатие клавиш, но думаю, это слишком грубое решение )

Код: Выделить всё

Dim TCS
Set TCS = CreateObject("TCScript.Helper")
TCS.SendCommand(314)
TCS.SendKeystroke (">Text")
TCS.SendKeystroke ("{Enter}")
Set TCS=Nothing
Wscript.Quit
где ">Text" − название сохранённого типа шаблона поиска (CTRL-F12).

Что скажете?

Добавлено: Вт апр 03, 2012 11:10
sa
kadvlad
Что-то подобное предлагалось здесь.

Добавлено: Вт апр 03, 2012 11:24
kadvlad
sa,
спасибо за альтернативу.

Моё решение на vbs мне показалось чуть проще, нет?
По крайней мере, манипуляций с раскладками нет.
В Вашем варианте при англ.раскладке у меня всё равно упорно выдаёт "Несоответствие типа: Sendkeystroke", а желания переназначать клавиши раскладок нет.

Добавлено: Вт апр 03, 2012 11:35
sa
kadvlad
Если фильтр именованный, то всё проще: вместо кнопки вызова скрипта достаточно кнопки с командой cd >Имя фильтра

Добавлено: Вт апр 03, 2012 11:44
kadvlad
sa
Вот!!!

Я знал, что должно быть простое и элегантное решение )
Спасибо!

Добавлено: Вт апр 03, 2012 13:03
sa
kadvlad писал(а):упорно выдаёт "Несоответствие типа: Sendkeystroke"
Любопытно. А как выглядит строка параметров?

Добавлено: Вт апр 03, 2012 13:17
kadvlad
Так же, как в указанной кнопке к скрипту.
У меня клавиатуры переключаются по CTRL-SHIFT.

надеюсь, Punto Switcher не помеха.

Добавлено: Вт апр 03, 2012 13:21
sa
kadvlad писал(а):У меня клавиатуры переключаются по CTRL-SHIFT.
Это не важно.
kadvlad писал(а):надеюсь, Punto Switcher не помеха
Скорее всего, дело именно в этой программе. Спасибо.

Добавлено: Вт апр 03, 2012 14:18
Flasher
kadvlad писал(а):Хотелось бы не просто автоматизацию выделения заданных типов файлов, а именно чтобы были видны только заданные типы.
А моя команда что-то иное делает?
kadvlad писал(а):Я знал, что должно быть простое и элегантное решение )
Ну, да. Об этом уже не раз, не два, не три писалось.

Добавлено: Вт апр 03, 2012 14:40
kadvlad
Flasher писал(а):А моя команда что-то иное делает?
по Вашей схеме получается так:

SELECTFILES - выделили заданный тип файлов
cm_ShowOnlySelected - временно скрыли остальные (невыделенные) типы
cm_ShrinkSelection - сняли выделение

Т.е. пока всё правильно, но если обновить панель (перейти в др.каталог), выделение снимется и вернётся дефолтное cm_SrcAllFiles.
Я же хотел постоянное отображение в текущей панели только заданных типов согласно шаблонам поиска (CTRL-F12), независимо от переходов по каталогам.

В любом случае, спасибо за содействие.
Подумаю, где могу применить SELECTFILES )

Добавлено: Вт апр 03, 2012 14:43
Flasher
kadvlad писал(а):Я же хотел постоянное отображение
Ясно. См. дописку.

Добавлено: Вт апр 03, 2012 23:05
sa
kadvlad писал(а):простое и элегантное решение
Только вот почти не документированное, к сожалению. См. здесь и далее.