Autorun
Select messages from
# through # FAQ
[/[Print]\]
Goto page Previous  1, 2, 3 ... 139, 140, 141, 142, 143  Next  :| |:
Total Commander -> Плагины Total Commander

#2086:  Author: Orion9 PostPosted: Wed May 22, 2024 13:19
    —
Понравился один момент, так пусть не затеряется.)

Первый хинт - основной, который нужен по-умолчанию.
Второй хинт - редкий, специфический, но тоже релевантный для определенной задачи. Показывается, если после появления первого зажать Shift:
Code:
SetHotkeyAction /H:F1 F1HintText

Func F1HintText()

 ShowHint(FirstHint())
 sleep(500)
 If IsPressed (0x10) Then ShowHint(SecondtHint())
 
EndFunc

#2087:  Author: Orion9 PostPosted: Thu May 23, 2024 12:51
    —
Loopback
Наткнулся на проблемы с функцией StrLeft: почему-то больше 127 символов она не принимает, т.е.

MsgBox(StrLeft(hint, 127)) - работает.
MsgBox(StrLeft(hint, 128)) - не работает.

Разумеется, числа могут быть как и больше, так и меньше (у меня строка вообще-то больше 1000 символов). При этом со StrMid такой проблемы нет:

MsgBox(StrMid(hint, 1, 1000)) - ОК.

#2088:  Author: Loopback PostPosted: Thu May 23, 2024 14:17
    —
Orion9 wrote:
Наткнулся на проблемы с функцией StrLeft

Да, подтверждаю. Довольно интересный и неожиданный баг с приведением типов. Надо будет проверить остальные функции.

Собственно, вот поэтому и хотелось бы выпустить следующую бету, чтобы такие мелкие, но неприятные косяки править оперативно.

#2089:  Author: Orion9 PostPosted: Thu May 23, 2024 19:06
    —
Loopback
Беты бывают опасны, это да. Особенно когда в них меняют внутренний механизм уже более-менее рабочих функций. Недавний пример с ShowPopupMenu это показывает. Но выпускать их все же стоит, иначе вам одному будет гораздо сложнее все протестировать. Это я к тому, что нет необходимости 1,5-2 года доводить до ума очередную версию готового релиза, все-равно до конца безупречной она не будет. Если в проекте теплится жизнь, можно раз в несколько месяцев или раз в полгода радовать нас бетой Smile

А тем временем, довёл до ума функцию показа только тех переменных окружения, которые создаются во время работы/старта ТС плагином Autorun.

 Hidden text

Теперь еще и с зажимом Shift, Ctrl есть опции.

#2090:  Author: Loopback PostPosted: Fri May 24, 2024 15:29
    —
Orion9 wrote:
Особенно когда в них меняют внутренний механизм уже более-менее рабочих функций.

Это да, не люблю трогать такие вещи. Хотя что-то базовое еще придется трогать. Но это не до ближайшей беты, иначе тестирование затянется навечно.
Orion9 wrote:
Это я к тому, что нет необходимости 1,5-2 года доводить до ума очередную версию готового релиза, все-равно до конца безупречной она не будет.

Тут немного другой случай, дело совсем не в перфекционизме. Но после выхода ближайшей беты надеюсь прийти к более равномерному выпуску версий.
Orion9 wrote:
А тем временем, довёл до ума функцию показа только тех переменных окружения, которые создаются во время работы/старта ТС плагином Autorun.

Попробовал, интересное решение. Возможно, возьму на вооружение, но только с тем же модификатором, который изначально вызывает хинт (в данном случае Ctrl). Перескакивать на другой модификатор лично мне что-то не очень удобно.

Кстати, стоит упомянуть, что метод работает, только если этот код размещен до других установок переменных окружения через Autorun. Иначе показывает только COMMANDER_HANDLE Smile

#2091:  Author: Orion9 PostPosted: Sat May 25, 2024 19:45
    —
Loopback
Я в тот момент очень торопился, на потом откладывать не хотел - в итоге пост получился недописанным.

Да, нужно размещать код сразу за LoadLibrary в шапке основного конфига и перед объявлениями других переменных окружения.

Поскольку ТС при перезагрузке командой cm_Exit 9 тянет за собой все переменные окружения, пришлось создать дополнительную проверку на переменную COMMANDER_HANDLE, которая не существует при первой загрузке, хотя при последующих перезагрузках ее содержимое меняется.

Но мне понравилось больше то, что фактически там сейчас три разных хинта. Если вызвать первый хинт с Ctrl, он покажется. Но если при этом не отпускать Ctrl, то покажется второй, более широкий хинт. Если же сразу после показа первого нажать Shift, то всплывет третий, маленький, который отобразит только изменения в переменных, характерные для этой конкретной сессии/перезагрузки.

Прикольная фича, я считаю. Уже взял ее на вооружение в заголовке, поскольку там теперь два хинта - один с технической информацией о файлах. Надеюсь, завтра всё доделать, да и пора закрывать тему с заголовком. Laughing

P.s. А с хинтом можно поступить еще интереснее. Повесить его на F1, к примеру. Тогда после нажатия на F1, если сразу зажать шифт после этого, то на экране всплывет второй хинт вслед за первым. Я, кстати, так и сделал c хинтом заголовка)

#2092:  Author: sa PostPosted: Tue May 28, 2024 17:48
    —
Наверное, я слишком многого хочу Smile. Нельзя ли сделать так, чтобы после появления подсказки для заданного элемента окна, она не исчезала при перемещении мышки, пока её указатель находится внутри данного элемента (например, в пределах функциональной кнопки или заголовка)? По аналогии с подсказкой для кнопок панели инструментов.

#2093:  Author: Orion9 PostPosted: Tue May 28, 2024 21:59
    —
sa
А если использовать ShowHint?

Code:
ControlSetHint /F /D:100 /H:2 0 "TitleHintText"

Func TitleHintText()
   ShowHint(GetInfoData())
EndFunc

Приемлемо, но все же не то... Или пойдет?

#2094:  Author: sa PostPosted: Tue May 28, 2024 23:37
    —
Orion9 wrote:
но все же не то...

Да, не то! Для закрытия потребуется клик или нажатие ESC, а не просто перемещение указателя на другой объект (другую кнопку в случае панели инструментов TC).
Удобнее просто замереть (если рука крепка).

#2095:  Author: Orion9 PostPosted: Wed May 29, 2024 00:42
    —
sa wrote:
Удобнее просто замереть (если рука крепка).

Смешно))

#2096:  Author: Loopback PostPosted: Wed May 29, 2024 23:26
    —
sa wrote:
Наверное, я слишком многого хочу

Хотел утром ответить что да, потом посмотрел - а почему бы и нет Smile

Версия Tweaks от 29.05.2024

Вроде выглядит и неплохо, но не уверен, стоит ли делать так по умолчанию, поэтому включается временным ключом /R в ControlSetHint. На маленьких кнопках ок, но вот на больших функциональных как по мне спорно. Кроме того с опцией /O работать не будет. В общем, надо еще погонять, в случае чего ключ можно инвертировать.

#2097:  Author: Orion9 PostPosted: Thu May 30, 2024 00:02
    —
Loopback
Quote:
Вроде выглядит и неплохо, но не уверен, стоит ли делать так по умолчанию

На мой взгляд, не стоит. Для каких-то задач , наверное, пригодится, но этот ключ нарушает привычную логику. Попробовал сейчас в деле, т.ч. исхожу не только из теории.

А что имеется в виду "с опцией /O работать не будет"?

#2098:  Author: sa PostPosted: Thu May 30, 2024 09:41
    —
Loopback wrote:
а почему бы и нет

Я подозревал, что с Autorun всё возможно Smile .
Спасибо! Работает немного иначе, чем в варианте с тоталовскими подсказками для кнопок панели инструментов, но это даже и лучше: можно не только по области функциональной кнопки или заголовка перемещать указатель, но и по полю самой подсказки.

#2099:  Author: Loopback PostPosted: Thu May 30, 2024 23:40
    —
Orion9 wrote:
но этот ключ нарушает привычную логику

Да не, если и нарушает, то только когда используются разные подходы одновременно. Если на всех контролах будет одинаково, то нормально. Но я что-то не уверен, что мне больше нравится новый вариант. Вообще, может и не нужна эта опция для каждого контрола отдельно, сделать одну общую на всё...
Orion9 wrote:
А что имеется в виду "с опцией /O работать не будет"?

При включенной опции /O этот метод работать не будет, т.к. фокус уходит к подсказке.
sa wrote:
Я подозревал, что с Autorun всё возможно

Если бы, но впечатление, конечно же, обманчивое Smile Не в каждом случае можно легко достигнуть результата.
sa wrote:
Работает немного иначе, чем в варианте с тоталовскими подсказками

Очевидно, что со стороны меньше возможностей контроля. Многие вещи, которые легко делаются изнутри программы, намного сложнее и "костыльнее", если навешивать их извне. Особенно в случае с Delphi. Но не думаю, что это критично.

#2100:  Author: yozhikLocation: Электросталь PostPosted: Fri May 31, 2024 00:15
    —
Loopback
У меня на кнопку назначен хинт и меню по ПКМ. Подвожу курсор к кнопке, жму ПКМ, появляется меню, затем всплывает хинт поверх меню. И в таком сочетании куда курсором уже ни двигай, хинт не закрывается, пока не щёлкнешь по пункту меню или где ещё в окне ТК, или Esc-ом меню не закроешь:

Возможно ли это как-то отследить, чтобы при открытом меню хинт не всплывал?
Loopback wrote:
При включенной опции /O этот метод работать не будет, т.к. фокус уходит к подсказке.

Где-то что-то я опять прозевал... а где эта опция /O ?



Total Commander -> Плагины Total Commander


output generated using printer-friendly topic mod. All times are GMT + 4 Hours

Goto page Previous  1, 2, 3 ... 139, 140, 141, 142, 143  Next  :| |:
Page 140 of 143

Powered by phpBB © 2001, 2005 phpBB Group