Навигация:
<< >> Оглавление Указатель

Приложения

Приложение А. Функции, константы и структуры RDS

А.5. Сервисные функции и макросы RDS

А.5.18. Системное меню и контекстное меню блока

А.5.18.2. rdsAdditionalContextMenuItemEx – добавить временный пункт в контекстное меню блока

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

  void  rdsAdditionalContextMenuItemExA(
     Caption,  // Текст пункта меню (UTF8)
     Options,    // Флаги (RDS_MENU_*)
    int MenuFunc,     // Номер функции пункта меню
    int MenuData      // Данные пункта меню
  );
  void  rdsAdditionalContextMenuItemExW(
     Caption, // Текст пункта меню (UTF16)
     Options,    // Флаги (RDS_MENU_*)
    int MenuFunc,     // Номер функции пункта меню
    int MenuData      // Данные пункта меню
  );
  // 
  void  rdsAdditionalContextMenuItemEx(
     Caption, // Текст пункта меню (кодировка по умолчанию)
     Options,    // Флаги (RDS_MENU_*)
    int MenuFunc,     // Номер функции пункта меню
    int MenuData      // Данные пункта меню
  );

Тип указателя на эту функцию

RDS_VSDwII (для UTF8) или RDS_VWsDwII (для UTF16)

Параметры

Caption (RDSCSTR, RDSWCSTR, RDSXCSTR)
Указатель на строку с текстом пункта меню – этот текст пользователь увидит в самом меню. Если в этом параметре передать NULL, вместо пункта меню будет создан разделитель (аналогично флагу RDS_MENU_DIVIDER, см. ниже).
Options (DWORD)
Один или несколько объединенных битовым ИЛИ флагов, задающих параметры пункта меню:
RDS_MENU_DISABLED Выбор пункта меню будет запрещен, пункт будет изображаться серым цветом.
RDS_MENU_CHECKED Слева от текста пункта меню будет находиться галочка.
RDS_MENU_DIVIDER Вместо пункта меню будет изображаться горизонтальная черта-разделитель. Пользователь не может выбрать этот пункт. При установке этого флага другие флаги и параметры Caption, MenuFunc и MenuData игнорируются.
MenuFunc (int)
Номер функции пункта меню – при выборе пункта пользователем RDS копирует это число в поле Function структуры RDS_MENUFUNCDATA без какой-либо обработки.
MenuData (int)
Данные пункта меню – при выборе пункта пользователем RDS копирует это число в поле MenuData структуры RDS_MENUFUNCDATA без какой-либо обработки.

Примечания

Эту функцию можно вызывать только из реакции модели блока на событие RDS_BFM_CONTEXTPOPUP, возникающее перед открытием контекстного меню блока. Она добавляет в это меню пункт с текстом Caption и внешним видом, определяемым флагами в параметре Options, связывая с ним пару целых чисел (MenuFunc,MenuData). При выборе пункта пользователем модель блока будет вызвана для реакции на событие RDS_BFM_MENUFUNCTION, и в ее параметре ExtParam будет передан указатель на структуру RDS_MENUFUNCDATA, в полях которой будут записаны числа, связанные с выбранным пунктом меню.

Пример

Примеры использования функции rdsAdditionalContextMenuItemEx приведены в §2.12.6, §2.13.3 и §2.13.4 руководства программиста.

См. также

RDS_BFM_MENUFUNCTION, RDS_MENUFUNCDATA, RDS_BFM_CONTEXTPOPUP, rdsRegisterContextMenuItemEx.


<< >> Оглавление Указатель