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

Описание пользователя

Глава 3. Использование стандартных модулей автокомпиляции

§3.7. Краткий перечень вводимых в модель описаний и реакций на события

§3.7.11. Прочие реакции

§3.7.11.7. Выбор пункта меню

Это событие возникает при выборе пользователем пункта, добавленного моделью в контекстное меню блока или системное меню RDS. Примеры моделей, добавляющих свои пункты в контекстное и системное меню, приведены в §3.6.12.

Текст реакции на это событие вводится на вкладке «события» левой панели редактора модели: раздел «разное», подраздел «выбор пункта меню». В классе блока для нее создается функция с именем rdsbcppMenuFunc следующего вида:

  // Block menu item selection
  void rdsbcppBlockClass::rdsbcppMenuFunc( MenuData)
  {
     … пользовательский текст реакции … 
  }

Параметр функции MenuData – это указатель на структуру RDS_MENUFUNCDATA, содержащую идентификаторы, присвоенные моделью выбранному пункту меню при его создании:

  typedef struct {
    int Function;   // Номер функции меню
    int MenuData;   // Данные меню
  } ;
  typedef  *;

Поля структуры имеют следующий смысл:

Function (int)
Идентификатор выбранного пользователем пункта меню, указанный при его создании.
MenuData (int)
Дополнительное целое число, указанное при создании выбранного пункта меню.

При написании моделей блоков без использования модуля автокомпиляции выбору пункта меню соответствует константа RDS RDS_BFM_MENUFUNCTION.


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