Страница 141 из 243
Добавлено: Чт май 30, 2024 23:38
sa
yozhik писал(а):а где эта опция /O
Здесь и
здесь (под другим флагом).
Добавлено: Чт май 30, 2024 23:45
Loopback
yozhik писал(а):Возможно ли это как-то отследить, чтобы при открытом меню хинт не всплывал?
Да, выглядит некрасиво, надо устранить.
yozhik писал(а):Где-то что-то я опять прозевал... а где эта опция /O ?
В ControlSetHint. Временно переводит фокус на подсказку, чтобы скрыть уже имеющуюся у контрола. Другого способа скрывать тоталовскую подсказку не нашел, и этот корявый. Малополезная, в общем, штука.
Добавлено: Чт май 30, 2024 23:54
Orion9
sa писал(а):yozhik писал(а):а где эта опция /O
Здесь и
здесь (под другим флагом).
В ControlSetHint. Временно переводит фокус на подсказку, чтобы скрыть уже имеющуюся у контрола.
Спасибо. А то я что-то не понял о чем речь. Просто еше не использовал хинт на контроле с родной подсказкой.
Да, выглядит некрасиво, надо устранить.
А это можно сделать? Было бы супер.
Добавлено: Пт май 31, 2024 05:15
yozhik
sa,
Loopback,
спасибо! Действительно прозевал, потому что тот пост я помню, но от последней строчки сознание избавилось путём временного перевода фокуса на предпоследнюю

Теперь и
сюда добавил, чтобы всё в одном месте было.
Добавлено: Пт май 31, 2024 10:02
sa
Loopback писал(а):Кроме того с опцией /O работать не будет.
Вроде, работает /R и в этой комбинации.
Добавлено: Сб июн 01, 2024 16:21
jentoso
В одной сборке подсмотрел конфиг для просмотра файла средней кнопкой мыши
[cut]
Код: Выделить всё
ControlSetMouseAction /M 1 OpenDirInNewTabElseEnter
ControlSetMouseAction /M 2 OpenDirInNewTabElseEnter
Func OpenDirInNewTabElseEnter
I = ItemAtCursor('index')
If I >= 0 Then
F = RequestInfo(1010 + ItemAtCursor('panel'))
If ItemAtCursor('panel') <> RequestInfo(1000) Or Not ItemAtCursor('focused') Then MouseClick
If ItemAtCursor('focused') Then
If F > I Or F = -1 Then
SendCommand 3003
Else
Switch StrLower(StrRight(StrPart(ItemAtCursor('text'), auTAB, 1), 4))
Case '.exe', '.bat', '.cmd', '.lnk'
CommandExec em_startelevated
Case '.ps1'
ShowPopupMenu /I:16 '%commander_path%\Buttonbar\PS.BAR'
Case '.ISO', '.NRG', '.MDS', '.MDF', '.CCD', '.IMG'
ShowPopupMenu /I:16 '%commander_path%\Buttonbar\CD.BAR'
Case '.WIM'
ShowPopupMenu /I:16 '%commander_path%\Buttonbar\WIM.BAR'
Else
SendCommand 903
EndSwitch
EndIf
EndIf
Else
SendCommand 526
EndIf
EndFunc
[/cut]
Убрал из конфига не нужный функционал, но никак не мог сообразить, как оставить срабатывание только для файлов и не треготь папки.
[cut]
Код: Выделить всё
ControlSetMouseAction /M 1 OpenLister
ControlSetMouseAction /M 2 OpenLister
Func OpenLister
I = ItemAtCursor('index')
If I >= 0 Then
F = RequestInfo(1010 + ItemAtCursor('panel'))
If ItemAtCursor('panel') <> RequestInfo(1000) Or Not ItemAtCursor('focused') Then MouseClick
If ItemAtCursor('focused') Then
If F > I Or F = -1 Then
SendCommand 903
Else
SendCommand 903
EndIf
EndIf
EndIf
EndFunc
[/cut]
В итоге такое решение сработало. Теперь просмотр по СКМ только на файлах срабатывает.
[cut]
Код: Выделить всё
Func OpenLister
I = ItemAtCursor('index')
If I >= 0 Then
F = RequestInfo(1010 + ItemAtCursor('panel'))
If ItemAtCursor('panel') <> RequestInfo(1000) Or Not ItemAtCursor('focused') Then MouseClick
If ItemAtCursor('focused') Then
If F <= I And F > -1 Then SendCommand 903
EndIf
EndIf
EndFunc
[/cut]
P.S. Поправил отступы.
Добавлено: Вс июн 02, 2024 00:05
Orion9
jentoso писал(а):В одной сборке подсмотрел конфиг для просмотра файла средней кнопкой мыши
Интересный фрагмент. Только почему вы в своих вариантах не поставили отступ?

Добавлено: Вс июн 02, 2024 21:25
Loopback
Версия Tweaks от [url=https:///total.darkhost.ru/files/temp/tweaks_20240602.zip]02.06.2024[/url]
Изменения минимальны, только устранено всплывание подсказки после вызова меню.
sa писал(а):Вроде, работает /R и в этой комбинации.
Да, оказывается для контролов не имеющих своей подсказки работает, но там этот костыль и не нужен. Я тестировал на панели дисков, контролы номер 24, 25, не работает.
Добавлено: Пн июн 03, 2024 08:25
sa
Loopback писал(а):тестировал на панели дисков, контролы номер 24, 25, не работает
Подтверждаю, я оказывается, проверял контрол 0 с /H:8 (Свернуть) или /H:16 (Свернуть в окно).
P.S. Заметил, что родная подсказка TC на кнопках панели дисков ведёт себя в точности, как на кнопках панели инструментов: она не исчезает при перемещении мышки, пока её указатель находится в пределах кнопки.
Добавлено: Пн июн 03, 2024 10:24
yozhik
Loopback писал(а):устранено всплывание подсказки после вызова меню
Всё замечательно, спасибо, теперь они взаимодействуют корректно, гладко.
Добавлено: Пн июн 03, 2024 12:49
Orion9
Loopback писал(а):Версия Tweaks от [url=https:///total.darkhost.ru/files/temp/tweaks_20240602.zip]02.06.2024[/url]
Изменения минимальны, только устранено всплывание подсказки после вызова меню.
У меня не работает на заголовке, или оно там и не должно работать?
Ещё один вопрос всем, кто знает: А разве в MNU файле не возможности вызвать em_ команду с параметрами? Что-то я не нашел как передать параметр %A через MENUITEM, а хотелось бы... очень.
Добавлено: Пн июн 03, 2024 14:09
Loopback
Orion9 писал(а):У меня не работает на заголовке, или оно там и не должно работать?
Да, собирался сделать для обеих веток (ShowPopupMenu и остальное) и забыл перенести код. Не буду делать новый релиз, заменил файлы во вчерашнем, можно скачать по той же ссылке.
Orion9 писал(а):А разве в MNU файле не возможности вызвать em_ команду с параметрами?
Вроде никогда не было. Параметр %A нужно просто поместить в параметры самой em_ команды.
Добавлено: Пн июн 03, 2024 14:42
sa
Loopback писал(а):заменил файлы во вчерашнем
Теперь и в заголовке всё работает корректно. С багом покончено!:)
Добавлено: Пн июн 03, 2024 16:05
Orion9
Loopback
Однозначно стало лучше.

Заметил, правда, один небольшой побочный эффект (хотя, может, просто показалось). Если вызывать меню по Alt клику, то оно тут же закрывается, если Alt не отпустить.
Что касается параметра %A, то есть 10 однотипных пунктов меню, которые отличаются лишь числами в передаваемых параметрах wParam и lParam
[cut]Gimme back the good ol' days
viewpost.php?p=136822[/cut]
Сам пункт выглядит где-то так:
Код: Выделить всё
txt = txt & 'MENUITEM "Time - ' & ShowTime & '", em_title_reboot1' & auCRLF
Но не хотелось бы делать 10 однотипных команд em_title_reboot1, em_title_reboot2, em_title_reboot3 и т.д. Некрасиво это. А передать параметр из меню в одну команду em_title_reboot тоже не получается, как я понимаю.
Добавлено: Ср июн 05, 2024 14:49
sa
Orion9
Обнаружились отголоски проблемы с исчезновением в заголовке номера копии при перезапуске TC (cm_exit 9).
Решение с добавлением
Sleep(250) в начало autorun.cfg может приводить к неприятным последствиям.
Например, добавим в autorun.cfg после начальной строки
Sleep(250) ещё одну:
Код: Выделить всё
IniWrite %COMMANDER_INI% Configuration RenameSelOnlyName 0
Через
"Настройку --> Основные функции" установим в TC (на время сеанса) поведение
"При переименовании выделять только имя файла (но не расширение)" и затем перезапустим программу с надеждой, что вернётся режим по умолчанию.
TC, видимо, успевает прочитать секцию конфигурации со значением RenameSelOnlyName=1 и установить поведение, как в предыдущем сеансе, несмотря на то, что плагин запишет (заведомо после 250 миллисекунд) новое значение 0 - для режима выделения имени вместе с расширением (по умолчанию).
Если строки IniWrite и Sleep поменять местами, то всё работает верно.