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: Обсуждение темы "Обмен кнопками" 
Author Message
Orion9



PostPosted: Sun Feb 25, 2024 00:25    Post subject: Reply with quote

sa
Вы правы. Пример не совсем удачный, т.к. он не раскрывает весь потенциал связки Autorun+TCFS2 для переключения иконок на кнопках панели инструментов, а ведь он огромен!

Например, можно использовать не только внутренние команды, но и пользовательские команды + скрипты со сложыми алгоритмами и действиями, которые будут записывать результат своей работы в ini-файл, а затем передавать его в Autorun. Ну а там уже можно раскрыть case по полной Smile

Небольшой демо-эксперимент:

Четыре кнопки выпадающего меню из файла панели включают подсветку нужных файлов, меняя шаблон ColorFilter2, который располагается сразу за шаблоном Autorun (ColorFilter1=>Autorun) в секции цветов [Colors]. При этом иконка самого выпадающего меню переключается соответствующим образом через переменную %HIGHLIGHT_ICON%

autorun.cfg
Code:
SetMessageAction "HighlightMessage" SetColorFilter

Func SetColorFilter()
   IniRead /R sFilter %COMMANDER_INI% "Colors" "ColorFilter2" ">0"
   Switch sFilter
     Case ">0"
      SetEnv HIGHLIGHT_ICON "%COMMANDER_PATH%\Icons\Clsw\1.ico"
     Case ">Аудиодорожек > 1"
      SetEnv HIGHLIGHT_ICON "%COMMANDER_PATH%\Icons\Clsw\3.ico"
     Case ">2"
      SetEnv HIGHLIGHT_ICON "%COMMANDER_PATH%\Icons\Clsw\5.ico"
     Case ">Siblings"
      SetEnv HIGHLIGHT_ICON "%COMMANDER_PATH%\Icons\Clsw\4.ico"           
   EndSwitch
   SendCommand 2945 
EndFunc

Code:
TOTALCMD#BAR#DATA
%Commander_Path%\Bars\test0001.bar

%HIGHLIGHT_ICON%


1
-1

test0001.bar
Code:
[Buttonbar]
Buttoncount=4
button1=%COMMANDER_PATH%\Icons\Clsw\1.ico
cmd1=%COMMANDER_PATH%\Utilites\TCFS2\TCFS2.exe
param1=/ei hlt0
menu1=Выключить подсветку
button2=%COMMANDER_PATH%\Icons\Clsw\3.ico
cmd2=%COMMANDER_PATH%\Utilites\TCFS2\TCFS2.exe
param2=/ei hlt1
path2=
iconic2
menu2=Аудиодорожек > 1
button3=%COMMANDER_PATH%\Icons\Clsw\5.ico
cmd3=%COMMANDER_PATH%\Utilites\TCFS2\TCFS2.exe
param3=/ei hlt2
path3=
iconic3=
menu3=Кодек HEVC
button4=%COMMANDER_PATH%\Icons\Clsw\4.ico
cmd4=%COMMANDER_PATH%\Utilites\TCFS2\TCFS2.exe
param4=/ei hlt_sib
path4=
iconic4=
menu4=Сиблинги

TCFS2.ini
Code:
hlt0=set_tcini(Colors, ColorFilter2, `>0`) tcm(2957, 1) tcm(2957, 1) msg(regmsg(HighlightMessage), 0, 0)
hlt1=set_tcini(Colors, ColorFilter2, `>Аудиодорожек > 1`) tcm(2957, 1) tcm(2957, 1) msg(regmsg(HighlightMessage), 0, 0)
hlt2=set_tcini(Colors, ColorFilter2, `>2`) tcm(2957, 1) tcm(2957, 1) msg(regmsg(HighlightMessage), 0, 0)
hlt_sib=set_tcini(Colors, ColorFilter2, `>Siblings`) tcm(2957, 1) tcm(2957, 1)  msg(regmsg(HighlightMessage), 0, 0)

[Searches]
Code:
Аудиодорожек > 1_SearchFor=
Аудиодорожек > 1_SearchIn=
Аудиодорожек > 1_SearchText=
Аудиодорожек > 1_SearchFlags=0|002002000020||||||||22220|0000|||
Аудиодорожек > 1_plugin="tcmediainfo.Stream Count.Audio only" > 1
2_SearchFor=
2_SearchIn=
2_SearchText=
2_SearchFlags=0|002002000020|||||||||0000|||
2_plugin="tcmediainfo.Video Format" contains evc
Siblings_SearchFor=
Siblings_SearchIn=
Siblings_SearchText=
Siblings_SearchFlags=0|002002000020|||||||||0000|||
Siblings_plugin=file.Sibling != ""

Шаблон ">0" не существует, поэтому при его выборе подсветка отключается. Пример, конечно, сыроват, но как демо подойдет Smile
View user's profile Send private message


Powered by phpBB © 2001, 2005 phpBB Group