Приложения
Приложение А. Функции, константы и структуры RDS
А.5. Сервисные функции и макросы RDS
А.5.18. Системное меню и контекстное меню блока
Описываются функции, управляющие расширениями системного меню RDS и контекстного меню блока.
А.5.18.1. rdsAdditionalContextMenuItem – добавить временный пункт в контекстное меню блока
Функция rdsAdditionalContextMenuItem добавляет в контекстное меню блока, из модели которого она вызвана, временный (существующий только до закрытия меню) пункт с указанным текстом. Это устаревшая сервисная функция, сейчас вместо нее используется функция rdsAdditionalContextMenuItemEx, обладающая большими возможностями.
void RDSCALL rdsAdditionalContextMenuItemA( RDSCSTR Caption, // Текст пункта меню (UTF8) BOOL Enabled, // Разрешенность int MenuFunc, // Номер функции пункта меню int MenuData // Данные пункта меню ); void RDSCALL rdsAdditionalContextMenuItemW( RDSWCSTR Caption, // Текст пункта меню (UTF16) BOOL Enabled, // Разрешенность int MenuFunc, // Номер функции пункта меню int MenuData // Данные пункта меню ); // Функция-псевдоним void RDSCALL rdsAdditionalContextMenuItem( RDSXCSTR Caption, // Текст пункта меню (кодировка по умолчанию) BOOL Enabled, // Разрешенность int MenuFunc, // Номер функции пункта меню int MenuData // Данные пункта меню );
Тип указателя на эту функцию
RDS_VSBII (для UTF8) или RDS_VWsBII (для UTF16)
Параметры
- Caption (RDSCSTR, RDSWCSTR, RDSXCSTR)
- Указатель на строку с текстом пункта меню – этот текст пользователь увидит в самом меню.
- Enabled (BOOL)
- TRUE – пункт меню изображается нормальным цветом и может быть выбран пользователем, FALSE – пункт меню серый и не может быть выбран.
- MenuFunc (int)
- Номер функции пункта меню – при выборе пункта пользователем RDS копирует это число в поле Function структуры RDS_MENUFUNCDATA без какой-либо обработки.
- MenuData (int)
- Данные пункта меню – при выборе пункта пользователем RDS копирует это число в поле MenuData структуры RDS_MENUFUNCDATA без какой-либо обработки.
Примечания
Эту функцию можно вызывать только из реакции модели блока на событие RDS_BFM_CONTEXTPOPUP, возникающее перед открытием контекстного меню блока. Она добавляет в это меню пункт с текстом Caption и связывает с ним пару целых чисел (MenuFunc,MenuData). При выборе пункта пользователем модель блока будет вызвана для реакции на событие RDS_BFM_MENUFUNCTION, и в ее параметре ExtParam будет передан указатель на структуру RDS_MENUFUNCDATA, в полях которой будут записаны числа, связанные с выбранным пунктом меню.
См. также
RDS_BFM_MENUFUNCTION, RDS_MENUFUNCDATA, RDS_BFM_CONTEXTPOPUP, rdsAdditionalContextMenuItemEx.