TCFS2 + TCFS2Tools: Полноэкранный режим и многое другое

Обсуждение только плагинов и утилит для Total Commander.

Модераторы: Avada, CaptainFlint, Nik, d-view, Моторокер

Аватара пользователя
ask-rus
Сообщения: 2077
Зарегистрирован: Вт ноя 10, 2009 14:06
Откуда: Russian Federation

Сообщение ask-rus »

MVV
Жмем, будучи уже в фуллскрине, /ea fs, и /ea undo уже ничего не отменит. Буг?
«Минимализм - это кратчайший путь бесконечного стремления к идеалу»
«Не бойся, что не знаешь, - бойся, что не учишься» Китайская пословица
Аватара пользователя
MVV
Сообщения: 4815
Зарегистрирован: Чт окт 15, 2009 10:58
Откуда: Ростов-Дон

Сообщение MVV »

Если присмотреться, как устроено действие fs, можно заметить, что оно состоит из односторонних команд:

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

fs=db0 dc0 cd0 th0 sb0 cl0 kb0 c0 rm1pm m1
А каждая команда пишет в Undo, только если она сделала действие. Естественно, при повторном вызове команды она вряд ли что-то сделает. Как результат, пустой список действий для отмены.

Я бы не сказал, что баг, а описал бы это чуть более длинной и непонятной фразой by design. Короче, действие fs не рассчитано на повторный запуск. Чтобы можно было рассчитывать на повторный запуск, нужно написать команду, которая будет проверять полноэкранность (например, любое условие из вызываемых из fs команд) и в зависимости от результата проверки вызывать fs или ничего не делать (или вызывать Undo - получится реверсивная команда).
slideray
Сообщения: 115
Зарегистрирован: Пн июн 28, 2010 09:34

Сообщение slideray »

Здесь уже рассматривали эту проблему, но я так и не понял, справились с ней или это неустранимы баг.
Когда скрываешь элементы интефейса (TCFS2+Autorun.wdx+HideMenu.dll), сворачиваешь (минимизируешь) тотал, а потом разворачиваешь (максимизируешь), то тотал разворачивается на весь экран, перекрывая системную панель быстрого запуска. (реализовал по инструкции описанной на стр. 9. Win7)
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

slideray
Советую ознакомиться с моей статьёй. Примечание должно помочь.
slideray
Сообщения: 115
Зарегистрирован: Пн июн 28, 2010 09:34

Сообщение slideray »

Flasher писал(а):Примечание должно помочь.
Как вариант, но не эстетично, поскольку отступ в пикселях можно настроить на одной только машине, тогда как на другой стоит семёрка с панелью гораздо более широкой. Если можно было хотя бы автоматизировать процесс, сделать автоопределение высоты системной панели, с последующим применением результата вычесленных данных в ini-файл.
А по поводу моего вопроса, этот эффект развёртывания (FullScreen) неустраним, или это можно исправить?
Аватара пользователя
MVV
Сообщения: 4815
Зарегистрирован: Чт окт 15, 2009 10:58
Откуда: Ростов-Дон

Сообщение MVV »

Это особенность системы Windows - приложение со скрытым заголовком, развернутое на весь экран, считается полноэкранным, поэтому система прячет панель задач и висячие панели.

Кстати, ничто не мешает сделать панель на семерке уже:) я, например, первым делом после установки семерки включил маленькие значки на панели задач и выключил это тупое сокрытие заголовков окон, вернув панель к прежнему виду, позволяющему куда более быстрым и удобным образом находить нужное окно.

А вообще, можно написать батник, который будет в зависимости от версии винды запускать TCFS2 с тем или иным параметром - для запуска той или иной команды.
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

slideray писал(а):Как вариант, но не эстетично, поскольку отступ в пикселях можно настроить на одной только машине, тогда как на другой стоит семёрка с панелью гораздо более широкой.
Не широкой, видимо, а высокой. На семёрке можно сделать панель высотой в точности как в XP, у меня она именно такая - в старом добром стиле 98-ой винды.
slideray писал(а):Если можно было хотя бы автоматизировать процесс, сделать автоопределение высоты системной панели, с последующим применением результата вычесленных данных в ini-файл.
Как-то я предлагал это MVV, но он быстренько открестился от такой затеи...
slideray писал(а):А по поводу моего вопроса, этот эффект развёртывания (FullScreen) неустраним, или это можно исправить?
Я же свою статью не зря привёл. Вот и надо использовать приведённый метод, где из трея окно будет восстанавливаться в прежний вид. И ещё раз - Fullscreen - это не развёртывание, а скрытие всех оконных элементов. Если же использовать стандартную функцию развёртывания окна, то уже ничего не поделать. Я же использую задание абсолютных (необрезанных) размеров с уменьшением высоты окна в режиме Восстановить + пропорциональное увеличение/уменьшение, что на порядок эстетичней, потому что при "восстановлении" окно всё время будет разполагаться по центру.
Аватара пользователя
ask-rus
Сообщения: 2077
Зарегистрирован: Вт ноя 10, 2009 14:06
Откуда: Russian Federation

Сообщение ask-rus »

MVV
Readme.txt писал(а):Рассмотрим, как это работает, на примере позиции окна по горизонтали. При вычислении выражения # ? 0 : @*7/64 проверяется, равно ли нулю выражение перед знаком ?, и если выражение не равно нулю (т.е. истинно), возвращается первое значение после знака ? (т.е. 0), в противном случае возвращается значение после знака : (т.е. @*7/64). В результате при повторных вызовах команды позиция окна будет переключаться между нулем и 7/64 от размера экрана. Вычисление остальных параметров выполняется таким же образом.Hfccvjnhbv? rfr 'nj hf,jnftn? yf ghbvtht gjpbwbb jryf gj ujhbpjynfkb/ Ghb dsxbcktybb dshf;tybz # & 0 ^ @*7|64 ghjdthztncz? hfdyj kb yek. dshf;tybt gthtl pyfrjv &? b tckb dshf;tybt yt hfdyj yek. (n/t/ bcnbyyj)? djpdhfoftncz gthdjt pyfxtybt gjckt pyfrf & (n/t/ 0)? d ghjnbdyjv ckexft djpdhfoftncz pyfxtybt gjckt pyfrf ^ (n/t/ @*7|64)/ D htpekmnfnt ghb gjdnjhys[ dspjdf[ rjvfyls gjpbwbz jryf ,eltn gthtrk.xfnmcz vt;le yektv b 7|64 jn hfpvthf 'rhfyf/ Dsxbcktybt jcnfkmys[ gfhfvtnhjd dsgjkyztncz nfrbv ;t j,hfpjv/
Бушует чья-то пунта.

Это самое... Какой будет кнопка для смещения сепаратора в положение 5/95 и обратно?
«Минимализм - это кратчайший путь бесконечного стремления к идеалу»
«Не бойся, что не знаешь, - бойся, что не учишься» Китайская пословица
Аватара пользователя
MVV
Сообщения: 4815
Зарегистрирован: Чт окт 15, 2009 10:58
Откуда: Ростов-Дон

Сообщение MVV »

О ужас, откуда это там взялось...

А пунту я ненавижу и не использую с тех самых пор, как познакомился с ней (лет надцать назад).

А "обратно" - это куда? Если "обратно" - это "на середину", то например такая:

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

sp_switch5=set_separator(# > 10 ? 5 : 50)
Или такая:

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

sp_switch5=set_separator(5), separator(# > 10) | tcm(909)
Запускать можно и без прописывания в конфиге:

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

TCFS2.exe /ef "set_separator(5), separator(# > 10) | tcm(909)"
Проверочное значение 10 поставил с запасом, чтобы работало наверняка (с учетом возможной неточности определения текущей позиции) - тут можно ставить в принципе любое от 5 до 49, но лучше избегать крайностей.
Последний раз редактировалось MVV Вт апр 26, 2011 12:16, всего редактировалось 1 раз.
Аватара пользователя
ask-rus
Сообщения: 2077
Зарегистрирован: Вт ноя 10, 2009 14:06
Откуда: Russian Federation

Сообщение ask-rus »

MVV писал(а):А "обратно" - это куда?
Это там, где была, но на середину мне тоже подходит.
«Минимализм - это кратчайший путь бесконечного стремления к идеалу»
«Не бойся, что не знаешь, - бойся, что не учишься» Китайская пословица
Аватара пользователя
MVV
Сообщения: 4815
Зарегистрирован: Чт окт 15, 2009 10:58
Откуда: Ростов-Дон

Сообщение MVV »

Положение "где была" восстановить невозможно, т.к. оно нигде не запоминается.
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

MVV
Ты из каких-то личных соображений не захотел дать ссылку на уже описанный способ в тематическом топике? Только не пиши, что забыл...
Аватара пользователя
MVV
Сообщения: 4815
Зарегистрирован: Чт окт 15, 2009 10:58
Откуда: Ростов-Дон

Сообщение MVV »

И не вспоминал:)

Да и в мыслях не было что-то искать:) написать оказалось куда быстрее.
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

MVV писал(а):написать оказалось куда быстрее.
Чем найти? У меня на поиск ушло 7-10 сек. Ты за это время успел пост написать? Сомневаюсь... :)
И, кстати, мой вариант именно то, что требуется, с определением активной панели и возвратом в случае, если разделитель не на середине. И не надо никаких дополнительных команд и вызовов с /ef...
Аватара пользователя
ask-rus
Сообщения: 2077
Зарегистрирован: Вт ноя 10, 2009 14:06
Откуда: Russian Federation

Сообщение ask-rus »

Flasher писал(а):И не надо никаких дополнительных команд и вызовов с /ef...
И дополнительных утилит, типа Autorun с HideMenu, тоже не надо?
«Минимализм - это кратчайший путь бесконечного стремления к идеалу»
«Не бойся, что не знаешь, - бойся, что не учишься» Китайская пословица
Ответить