KDJ wrote:You should call the script with -Local=false or without this parameter.
То есть
Code: Select all
# команда [1]
-"Активный столбец" Call("Scripts::Main", 1, "ActiveColumnSwitch.js", `"%m" "%i" -Local=false`)
# команда [2]
-"Активный столбец локально" Call("Scripts::Main", 1, "ActiveColumnSwitch.js", `"%m" "%i" -Local=true`)
команда [1] : значит вкл/выкл вертикальную линию с установкой соотв-го чекбокса в настройках, а команда [2] : без внесения изменений в настройки, — так что ли?
Я просто не сразу понял, что значит "локально"/"глобально", в описании скрипта это внятно не объяснено, и я сначала подумал, что "локально" — это значит включить линию только для текущего окна AkelPad, а "глобально" — для всех открытых окон сразу. Дело в том, что сначала я запустил этот скрипт на AkelPad версии 470 (так как он у меня настроен и я пользуюсь им, апдейтится что-то лениво), и там "глобальный" вариант вообще не заработал: там кнопка нажимается только 1 раз, при этом ничего не происходит — ни линия не появляется, ни галка в настройках не ставится, а повторное нажатие кнопки не меняет состояние кнопки, она так и остаётся в нажатом виде. Потом я проверил "глобальный" вариант на AkelPad 488, — там он заработал нормально, но в тот момент я почему-то решил, что "локальность" имеет отношение к режиму окон, а у меня AkelPad всё время в режиме SDI (одно окно), вот я и подумал, что "глобальность" глючит, возможно, потому, что она предназначена только для многооконных режимов, и только потом я понял, что глюки, наверное, из-за старой версии AkelPad.
Тогда ситуация приобретает другой ракурс: использование скрипта в многооконных режимах. Состояние кнопки должно синхронизироваться с состоянием вертикальной линии активного окна при перещелкивании вкладок, то есть при переходе в окно, где вертикальной линии нет, кнопка должна автоматически принимать "отжатый" вид, а при переходе в окно, где линия есть — "нажатый". А то как-то тупо выглядит, когда кнопка во всех вкладках в одном состоянии.