Вспомогательный класс для упрощения и стандартизации некоторых операций
построения строки, представляющей меню. В классе {Form}, всплывающее меню
определяется просто как набор строк, разделенных символами конца строки
#NL. Меню может быть сконструировано путем обычной конкатенации строк
напрямую. Или, могут использоваться функции, возвращающие элементы таких
строк - как в дизайнере редактора кода IDE AL4. Например, если мы запишем в
коде строку "A:Abc", то будет создан элемент меню с текстовой меткой A и
отображаемым текстом Abc. Или, мы можем получить то же самое, вызвав
функцию Item("A", "Abc").
FUNCTION
Item|_create
(
STR
Alias|_item
,
STR
Text|_item
)
==> STR
|
Создает элемент меню на основе заданной метки Alias и текста Text.
Результирующая строка - это Alias ":" Text (при этом проверяется, что Alias не
содержит двоеточия, иначе его текст обрезается до символа двоеточия).
|
FUNCTION
Hotkey|_add_after_tabulation
(
STR
Item_created
,
STR
H|otkey_to_add
)
==> STR
|
Расширяет текст созданного элемнта меню добавлением через символ табуляции
текста, содержащего сочетание клавиш для быстрого доступа к функции,
вызываемой этим пунктом меню. Этот текст клавиш просто отображается
(выровненный), но вы сами в своем коде должны обеспечить работу
соответствующих кнопок клавиатуры заявленным образом. Например, вызывая в
обработчике key_down те же функции, что и в соответствующем обработчике
пункта меню.
|
FUNCTION
Disabled|_item
(
STR
Item_created
,
BOOL
Cond|ition
)
==> STR
|
Вставляет специальный текст ",disabled" перед двоеточием в форируемом
элементе меню, если передан параметр условия Cond == TRUE. Это делает пункт
меню выглядящем серым и недостпуным для нажатия.
|
FUNCTION
Checked|_item
(
STR
Item_created
,
BOOL
Cond|ition
)
==> STR
|
Вставляет специальный текст ",checked" перед двоеточием в форируемом
элементе меню, если передан параметр условия Cond == TRUE. Это добавляет к
пункту меню отмеченный флажок (полезен для визуальной индикации того, что
свойство, управляемое этим пунктом меню, включено).
|
FUNCTION
Hidden|_item
(
STR
Item_created
,
BOOL
Cond|ition
)
==> STR
|
Замещает весь пункт меню пустой строкой, если переданное условие равно TRUE.
Удаляет тем самым пункт меню из всплывающего меню.
|
FUNCTION
Separator
==> STR
|
Создает спечиальный элемент меню, выглядящий как горизонтальный разделитель
между элементами меню. Может использоваться для отделения друго от друга
групп связанных общей темой пунктов меню.
|
FUNCTION
Begin|_submenu
==> STR
|
Начинает вложенное меню (просто возвращает строку "("#NL).
|
FUNCTION
End|_submenu
==> STR
|
Начинает вложенное меню (просто возвращает строку ")"#NL).
|
FUNCTION
Custom|_submenu
(
STR
Value|_custom_items
)
==> STR
|
Возвращает переданную строку.
|