View previous topic :: View next topic |
Author |
Message |
MVV

Joined: 15 Oct 2009 Posts: 4815 Location: Ростов-Дон
|
(Separately) Posted: Mon May 09, 2011 19:08 Post subject: |
|
|
Flasher, в первом посте запрашивалась кнопка для переключения между текущим режимом и каким-то заданным. Его задаём в параметре команды switch_viewmode_S.
Лично проверял 269, 301 и 302. Если текущий режим не подробный, кнопка с switch_viewmode_S(302) гарантированно переключает между текущим режимом и подробным.
А куда по-твоему должна переключать кнопка переключения в подробный режим, если её запустили, когда панель и так в подробном, при этом информации о предыдущем режиме нет, или же там тоже указан подробный режим?  _________________ TCFS2 + TCFS2Tools: Полноэкранный режим и многое другое (обсуждение)
WINCMD.RU: AskParam, CopyTree, NTLinks, Sudo, VirtualPanel… |
|
Back to top |
|
 |
Flasher

Joined: 06 Nov 2009 Posts: 14229 Location: Москва
|
(Separately) Posted: Mon May 09, 2011 19:18 Post subject: |
|
|
MVV wrote: | в первом посте запрашивалась кнопка для переключения между текущим режимом и каким-то заданным. Его задаём в параметре команды switch_viewmode_S. | Ты написал, что не надо плодить кнопки, а я прокомментировал, почему это не совсем верно.
MVV wrote: | А куда по-твоему должна переключать кнопка переключения в полный режим, если её запустили, когда панель и так в полном, при этом информации о предыдущем режиме нет, или же там тоже указан полный режим? | Из подробного (а не полного) режима кнопка должна переключаться в предыдущий либо указанный, как это делают мои команды. Грошь цена такой инверсной команде, которая не может переключаться из совпавшего с указанным режимом.
MVV wrote: | Лично проверял 269, 301 и 302. Если текущий режим не подробный, кнопка с switch_viewmode_S(302) гарантированно переключает между текущим режимом и подробным. | Не знаю. Переключается так, как я описал, в указанный режим и всё, обратного переключения не происходит. Вот с 269 происходит, с остальными - нет.
ЗЫ: в личке почему не ответил? |
|
Back to top |
|
 |
MVV

Joined: 15 Oct 2009 Posts: 4815 Location: Ростов-Дон
|
(Separately) Posted: Mon May 09, 2011 19:38 Post subject: |
|
|
Quote: | Ты написал, что не надо плодить кнопки, а я прокомментировал, почему это не совсем верно. |
Я писал, что команды плодить не надо, а не кнопки.
Quote: | Из подробного (а не полного) режима кнопка должна переключаться в предыдущий либо указанный, как это делают мои команды. Грошь цена такой инверсной команде, которая не может переключаться из совпавшего с указанным режимом. |
Совсем несложно модифицировать команду, чтобы переключала в указанный. Справитесь и сами. Добавить условие для второго переключения и ещё одну команду через палку.
Quote: | Не знаю. Переключается так, как я описал, в указанный режим и всё, обратного переключения не происходит. Вот с 269 происходит, с остальными - нет. |
А я тебе скажу, почему, я тоже сначала не мог понять. Команда 269 сама по себе переключает в предыдущий режим и без нашей помощи. _________________ TCFS2 + TCFS2Tools: Полноэкранный режим и многое другое (обсуждение)
WINCMD.RU: AskParam, CopyTree, NTLinks, Sudo, VirtualPanel… |
|
Back to top |
|
 |
Flasher

Joined: 06 Nov 2009 Posts: 14229 Location: Москва
|
(Separately) Posted: Mon May 09, 2011 19:48 Post subject: |
|
|
MVV wrote: | Я писал, что команды плодить не надо, а не кнопки. | Пардон, я команды и имел в виду.
MVV wrote: | Справитесь и сами. | Я то справлюсь при прочих равных. А вот ...
MVV wrote: | А я тебе скажу, почему, я тоже сначала не мог понять. Команда 269 сама по себе переключает в предыдущий режим и без нашей помощи. | Верно. Тогда смысла использовать твою команду нет никакого, потому что она аналогична внутренней команде, где также нет никакой инверсии. А в исходном посте была неточная формулировка. Дальше идёт уточнение: HEXFIX wrote: | нажимаю кнопку - режим переключается в "подробно", нажимаю повторно - переключается обратно. Т.е. вкл.\выкл. |
|
|
Back to top |
|
 |
MVV

Joined: 15 Oct 2009 Posts: 4815 Location: Ростов-Дон
|
(Separately) Posted: Mon May 09, 2011 19:57 Post subject: |
|
|
Ну оно так и работает. Нажимаешь - переключается в подробный, ещё раз нажимаешь - обратно.
А для добавления второго режима совсем необязательно писать новые команды. Можно модифицировать эти и просто передавать в них два параметра - режим для переключения и резервный режим, куда будет переключаться из первого, если в конфиге прописан он же. Что-то вроде:
Code: | switch_viewmode_L=set_tcini(left, LastViewMode, L_viewMode) tcm(#1), test(L_viewMode != (#1)) | tcm(tcini(left, LastViewMode, #) != #1 || !(#2) ? #1 : #2) |
Т.е. при обратном переключении смотрит, что в конфиге сохранен такой же режим, что и задан, и переключается на резервный (если он задан - т.е. не равен нулю).
Команду для правой - аналогично. А команду для активной добавить, чтобы передавала и второй параметр:
Code: | switch_viewmode_S=run_item(switch_viewmode_L, #1-200, #2), test(L_isActive) | run_item(switch_viewmode_R, #1-100, #2) |
Запускаем так:
Code: | /u- /ei "switch_viewmode_S(302, 301)" |
_________________ TCFS2 + TCFS2Tools: Полноэкранный режим и многое другое (обсуждение)
WINCMD.RU: AskParam, CopyTree, NTLinks, Sudo, VirtualPanel… |
|
Back to top |
|
 |
Flasher

Joined: 06 Nov 2009 Posts: 14229 Location: Москва
|
(Separately) Posted: Mon May 09, 2011 20:19 Post subject: |
|
|
MVV wrote: | Ну оно так и работает. Нажимаешь - переключается в подробный, ещё раз нажимаешь - обратно. | У меня обратно не хочет. С новыми предложенными командами то же самое.
Версия TCFS2Tools точно последняя, скачал ещё раз - перепроверил. TCFS2 - 2.0.
И ты почему-то забыл: Code: | switch_viewmode_R=set_tcini(right, LastViewMode, R_viewMode) tcm(#1), test(R_viewMode != (#1)) | tcm(tcini(right, LastViewMode, #) != #1 || !(#2) ? #1 : #2) | Хотя это опять ничего не поменяло.
Зато работает такая смешная команда: /u- /ei "switch_viewmode_S(304, 303)"
Смешная, но прикольная!  |
|
Back to top |
|
 |
MVV

Joined: 15 Oct 2009 Posts: 4815 Location: Ростов-Дон
|
(Separately) Posted: Mon May 09, 2011 20:54 Post subject: |
|
|
Я не забыл, я написал:
Quote: | Команду для правой - аналогично. |
Но по идее теперь TCFS2 должна ругаться, если что-то ей не нравится в конфиге - уже несколько раз убедился в удобстве этой штуки.
А команду надо перепроверить, у меня тоже пока не работает.
Кстати, чтобы можно было не указывать второй параметр команды, можно в switch_viewmode_S везде вместо #2 написать (#2-0) - тогда при пустом #2 получится (-0), что не является неверным выражением.  _________________ TCFS2 + TCFS2Tools: Полноэкранный режим и многое другое (обсуждение)
WINCMD.RU: AskParam, CopyTree, NTLinks, Sudo, VirtualPanel… |
|
Back to top |
|
 |
Flasher

Joined: 06 Nov 2009 Posts: 14229 Location: Москва
|
(Separately) Posted: Mon May 09, 2011 21:00 Post subject: |
|
|
MVV wrote: | Но по идее теперь TCFS2 должна ругаться, если что-то ей не нравится в конфиге | Ага, но я сразу заметил, что R-ки нету.
MVV wrote: | Кстати, чтобы можно было не указывать второй параметр команды, можно в switch_viewmode_S везде вместо #2 написать (#2-0) - тогда при пустом #2 получится (-0), что не является неверным выражением. | Сделал, но толку от этого ... сам понимаешь.
Добавлено спустя 26 минут 51 секунду:
HEXFIX wrote: | Разобрался. Всё работает.
Flasher, огромное спасибо! | Пожалуйста. Но с обновлённым модулем (так уж случилось, что твой запрос натолкнул меня запросить эту фичу) теперь достаточно использовать команды в комстроке без прописывания в TCSF2.ini:
...\TCFS2.exe /u- /ef "tcm(271), test(S_viewMode != 271) | tcm(302)"
...\TCFS2.exe /u- /ef "tcm(272), test(S_viewMode != 272) | tcm(302)"
...\TCFS2.exe /u- /ef "tcm(273), test(S_viewMode != 273) | tcm(302)"
................
...\TCFS2.exe /u- /ef "tcm(299), test(S_viewMode != 299) | tcm(302)"
Макрос S_viewMode заменить на тот, что привёл MVV.
Last edited by Flasher on Thu May 19, 2011 06:21; edited 1 time in total |
|
Back to top |
|
 |
MVV

Joined: 15 Oct 2009 Posts: 4815 Location: Ростов-Дон
|
(Separately) Posted: Mon May 09, 2011 21:40 Post subject: |
|
|
Допилил команду. Пора завязывать с такой травой.
Code: | switch2_viewmode_L=set_tcini(left, LastViewMode, L_viewMode) tcm(#1), test(L_viewMode != (#1)) | tcm(tcini(left, LastViewMode, #) != (#1) || !(#2) ? tcini(left, LastViewMode, #) : (#2))
switch2_viewmode_R=set_tcini(right, LastViewMode, R_viewMode) tcm(#1), test(R_viewMode != (#1)) | tcm(tcini(right, LastViewMode, #) != (#1) || !(#2) ? tcini(right, LastViewMode, #) : (#2))
switch2_viewmode_S=run_item(switch2_viewmode_L, #1-200, #2-0), test(L_isActive) | run_item(switch2_viewmode_R, #1-100, #2-0) |
Итого, если запускать без второго параметра, работает так же, как switch_viewmode_S:
Code: | /u- /ei "switch2_viewmode_S(302)" |
А если со вторым, то при совпадении текущего режима и того, что сохранен в INI, будет переходить к резервному режиму, указанному вторым параметром:
Code: | /u- /ei switch2_viewmode_S(302, 301) |
Конечно, эти три команды тоже можно записать в одну строку и не править INI.......... но я этого делать не буду.  _________________ TCFS2 + TCFS2Tools: Полноэкранный режим и многое другое (обсуждение)
WINCMD.RU: AskParam, CopyTree, NTLinks, Sudo, VirtualPanel…
Last edited by MVV on Tue May 10, 2011 11:39; edited 2 times in total |
|
Back to top |
|
 |
Flasher

Joined: 06 Nov 2009 Posts: 14229 Location: Москва
|
(Separately) Posted: Mon May 09, 2011 21:55 Post subject: |
|
|
Да, сейчас работает. Жаль только оконце периодически мелькает в правой панели при переключении между 301 и 302. Вот с колонками такого почему-то нет. |
|
Back to top |
|
 |
MVV

Joined: 15 Oct 2009 Posts: 4815 Location: Ростов-Дон
|
(Separately) Posted: Mon May 09, 2011 22:05 Post subject: |
|
|
У меня обе панели мелькают одинаково. Ровно так же, как и при переключении режимов по Ctrl+F1 и Ctrl+F2. Собственно, мы это и делаем.
Кстати, эта команда с (301, 302) не переключает из краткого режима, если в INI нет параметра LastViewMode. Оставляю исправление этого в качестве домашнего задания.  _________________ TCFS2 + TCFS2Tools: Полноэкранный режим и многое другое (обсуждение)
WINCMD.RU: AskParam, CopyTree, NTLinks, Sudo, VirtualPanel… |
|
Back to top |
|
 |
HEXFIX
Joined: 25 Jun 2010 Posts: 173 Location: Калининград
|
(Separately) Posted: Tue May 10, 2011 08:52 Post subject: |
|
|
MVV
Flasher
Не доходит до меня, что делать-то надо?
Скопировал код
Code: | switch2_viewmode_L=set_tcini(left, LastViewMode, L_viewMode) tcm(#1), test(L_viewMode != (#1)) | tcm(tcini(left, LastViewMode, #) != (#1) || !(#2) ? tcini(left, LastViewMode, #) : (#2))
switch2_viewmode_R=set_tcini(right, LastViewMode, R_viewMode) tcm(#1), test(R_viewMode != (#1)) | tcm(tcini(right, LastViewMode, #) != (#1) || !(#2) ? tcini(right, LastViewMode, #) : (#2))
switch2_viewmode_S=run_item(switch2_viewmode_L, #1-200, #2-0), test(L_isActive) | run_item(switch2_viewmode_R, #1-100, #2-0) | в секцию [Items].
А дальше что? Что писать в поле "Команда" и "Параметры" у кнопки? |
|
Back to top |
|
 |
MVV

Joined: 15 Oct 2009 Posts: 4815 Location: Ростов-Дон
|
|
Back to top |
|
 |
sa
Joined: 29 Apr 2009 Posts: 2693
|
(Separately) Posted: Tue May 10, 2011 11:18 Post subject: |
|
|
MVV wrote: | /ei switch2_viewmode_R | В последних постах: может всё-таки правильнее /ei switch2_viewmode_S?
И ещё. У меня команда срабатывает, но вылетает сообщение
Code: | Error:
Unavailable key
Items:
301 |
|
|
Back to top |
|
 |
MVV

Joined: 15 Oct 2009 Posts: 4815 Location: Ростов-Дон
|
(Separately) Posted: Tue May 10, 2011 11:35 Post subject: |
|
|
А у тебя точно последний вариант команды?
О, вспомнил, почему такая ошибка появляется. Это когда ты в командной строке команду пишешь, и забываешь кавычки, тогда 301 после пробела рассматривается как имя следующей команды, так как уже находится в следующем параметре командной строки. Или без пробелов писать надо, или в кавычках.
Блин, это ж у мя пример без кавычек был.
Да, и про _S тоже верное наблюдение. Я тут писал правильно, а потом косячил.  _________________ TCFS2 + TCFS2Tools: Полноэкранный режим и многое другое (обсуждение)
WINCMD.RU: AskParam, CopyTree, NTLinks, Sudo, VirtualPanel… |
|
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
|