Спасибо, теперь понятно.MVV писал(а):Или без пробелов писать надо, или в кавычках.
Переключение режимов просмотра
Модераторы: Avada, CaptainFlint, Nik, d-view, Моторокер
Смотря какая задача. Этот пост видел?HEXFIX писал(а):Flasher
Не доходит до меня, что делать-то надо?
Нужно создать две команды на циклическое переключение em-команд вперёд и назад, соответственно.MVV писал(а):С помощью TCFS2 можно в принципе переключаться между любым числом вариантов, если создать по em-команде на вариант и запоминать номер последнего варианта в регистре TCFS2Tools или параметре wincmd.ini. Самое главное - чётко представлять себе, что же всё-таки хочется реализовать.
Левую/правую панели различать надо?
Для начала выделим регистры для режимов каждой панели и укажем максимальное число режимов на каждой панели. Например,
Теперь напишем команды, которые будут переключать режим, принимая номер режима в параметре (названия em-команд можно указать любые, в том числе и одинаковые для обеих панелей, если команда работает с активной панелью, а не с конкретно правой-левой; если наборы фильтров одинаковые, можно вообще использовать одну команду):
Теперь напишем команду, которая будет инкрементировать значение в регистре и вызывать команду переключения режима:
При вызове команды она будет включать режим с текущим номером и увеличивать номер в соответствующем регистре. Например, если режимов у панели 3, то она будет включать режимы в таком порядке: 0, 1, 2, 0, 1, ... Перед первым запуском можно записать в регистр номер стартового режима.
Для начала выделим регистры для режимов каждой панели и укажем максимальное число режимов на каждой панели. Например,
Код: Выделить всё
; [Macros]
regImgFilterL=10
regImgFilterR=11
swImgFilterCountL=3
swImgFilterCountR=3Код: Выделить всё
; [Items]
; swImgFilterL(int mode), swImgFilterR(int mode)
swImgFilterL=tem(em_ShowBlackWhiteImages), eval(#1==0) | tem(em_ShowColorImages), eval(#1==1) | tem(em_ShowPaletteImages)
swImgFilterR=run_item(swImgFilterL, #1)Код: Выделить всё
; [Items]
swImgFilterModeNext=run_item(swImgFilterL, regread(regImgFilterL)) eval(regwrite(regImgFilterL, (regread(regImgFilterL)+1)%(swImgFilterCountL))), eval(L_isActive) | run_item(swImgFilterR, regread(regImgFilterR)) eval(regwrite(regImgFilterR, (regread(regImgFilterR)+1)%(swImgFilterCountR)))