Текущий раздел:

Описания RDS

Приложения

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

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

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

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

# Приложения

## Приложение А. Функции, константы и структуры 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.