m

menu

Синтаксис: menu (команда, путь, [горячая_клавиша], [идентификатор])

Это очень мощная команда, которая используется для добавления нового пункта меню или для внесения изменений в существующий пункт. Она определяет, какая команда будет выполняться при активации пункта меню, какой значок будет отображаться в меню и какая клавиша будет использоваться для его активации. Каждый пункт меню может быть отключён или скрыт, ему может быть присвоен уникальный идентификатор, либо он может быть присоединён к группе меню.

Обычно потребности в этой команде при выполнении сценариев Kwave не возникает.

Параметры

команда:Текстовая команда (включая параметры) или список команд, которые будут выполняться при выборе пункта меню. Если в пункте меню отсутствует соответствующая команда (например, если это вложенное меню, а не пункт меню), следует воспользоваться специальной командой ignore().
путь:Путь в иерархии меню с использованием символа «/» в качестве разделителя уровней иерархии. Последняя часть пути может быть дополнительной командой, которая изменяет некоторые свойства элемента меню (смотрите далее). Последняя часть пути (не являющаяся дополнительной командой), создаёт пункт меню, а части перед ней — пункт главного меню или вложенное меню, которые ведут к нему. Пункты главного меню или вложенного меню создаются автоматически при создании пункта меню, вручную их создавать не требуется.
горячая_клавиша:Битовая маска, состоящая из комбинации предопределённых клавиш и модификаторов, объединённых символом «+». Клавишей может быть цифра, буква верхнего регистра или функциональная клавиша («F1»-«F12»), или любое другое название клавиши, относящееся к классу Qt «QKeySequence», включая имена клавиш для определённых действий (например, «::Copy». Типичными модификаторами являются «SHIFT», «ALT» и «CTRL».
идентификатор:Уникальный идентификатор, который может быть использован приложением для определения этого пункта меню или меню/вложенного меню. Допустимы только буквы верхнего регистра, цифры и символ «_», а начинаться идентификатор должен с символов «ID_». Необходимо следить за тем, чтобы один и тот же идентификатор не использовался дважды.

Дополнительные команды

#checkable:Присваивает пункту меню возможность установки и снятия флажка, чтобы его можно было включить или выключить.
#disabled:Отключает меню, вложенное меню или пункт меню.
#enabled:Включает меню, вложенное меню или пункт меню.
#exclusive(группа):Добавляет пункт меню в эксклюзивную группу (одну из широкого диапазона). Группа, указанная в качестве параметра, не должна использоваться для каких-либо других целей. За раз в этой группе возможно выбрать только один пункт.
#group(список):

Добавляет меню, вложенное меню или пункт меню к одной или нескольким группам, чтобы приложение могло включать или отключать несколько пунктов меню без необходимости в знании всех их уникальных идентификаторов. Несколько групп могут быть переданы в виде списка с символом «,» в качестве разделителя. Имена групп должны начинаться с символа «@». Предопределены следующие группы:

@CLIPBOARD:

Активируется только когда буфер обмена не пустой.

@LABELS:

Активируется только если текущий сигнал содержит хотя бы одну отметку.

@NOT_CLOSED:

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

@SELECTION:

Активируется только когда выделение не пустое (выделено более одного сэмпла).

@SIGNAL:

Активируется только когда какой-либо загруженный сигнал не пустой или имеет нулевую длительность.

#hidden:Скрывает меню, вложенное меню или пункт меню.
#icon(имя):Назначает значок пункту меню. Имя значка должно соответствовать файлу значка (без пути и расширения), установленному в системе или в Kwave.
#listmenu(идентификатор,команда):Вставляет заполнитель для списка пунктов меню к вложенному меню. Уникальный идентификатор, указанный в этой дополнительной команде, используется для добавления, удаления или очистки списка пунктов меню. Параметр команда должен содержать «%1» в качестве параметра, который будет заменён текстом пункта меню, когда команда будет активирована. Эта дополнительная команда внутренне используется для списка последних файлов, дорожек или списка окон.
#separator:Добавляет разделитель во вложенное меню.

msgbox

Синтаксис: msgbox(текст)

Отображает окно сообщения с определённым текстом и двумя кнопками OK (не выдаёт ошибку) и Отмена (выдаёт код ошибки). Эту команду возможно использовать для того, чтобы получить возможность прервать выполнение сценария.

Параметры

текст:Сообщение, которое будет отображаться в окне сообщения, должно содержать вопрос, на который возможно ответить с помощью кнопок OK или Отмена.