Приложения
Приложение А. Функции, константы и структуры RDS
А.2. События блока и связанные с ними описания
А.2.7. События, связанные с изменением схемы пользователем
А.2.7.2. RDS_BFM_MANUALINSERT – вставка блока пользователем
Поток, в котором вызывается функция модели
Главный поток RDS.
Первый параметр функции модели (int CallMode)
Константа RDS_BFM_MANUALINSERT.
Третий параметр функции модели (void *ExtParam)
Указатель на структуру описания события RDS_MANUALINSERTDATA.
Возвращаемое функцией модели значение
Не используется, можно возвращать любое значение.
Примечания
Событие RDS_BFM_MANUALINSERT возникает после того, как данный блок помещен в схему пользователем при помощи вставки из буфера обмена, загрузки из отдельного файла, добавления из библиотеки или с панели блоков. Если блок добавлен в схему сервисной функцией, это событие не возникает. Если в схему вставляется подсистема, содержащая другие блоки, реакция на событие RDS_BFM_MANUALINSERT вызывается только у самой подсистемы, а внутренние блоки информацию о событии не получают. Реакция на это событие может использоваться, например, для автоматического открытия окна настройки блока при его вставке из библиотеки (см. §2.12.8 руководства программиста).
В параметре ExtParam передается указатель на структуру RDS_MANUALINSERTDATA, описывающую событие:
typedef struct { RDSINT32 Reason; // Способ добавления (константа RDS_LS_*) BOOL Single; // Добавлен только один блок } RDS_MANUALINSERTDATA; typedef RDS_MANUALINSERTDATA *RDS_PMANUALINSERTDATA;
Поля структуры
- Reason (RDSINT32)
- Одна
из двух стандартных констант, указывающих на способ добавления блока в схему (эти же
константы возвращаются при вызове сервисной функции rdsGetSystemInt с параметром
RDS_GSISAVELOADACTION):
RDS_LS_LOADCLIPBRD Блок вставлен из буфера обмена. RDS_LS_LOADFROMFILE Блок вставлен из библиотеки, с панели блоков или загружен из отдельного файла. - Single (BOOL)
- TRUE, если в схему вставлен только один блок, и FALSE, если вставлено сразу несколько блоков (например, группа блоков из буфера обмена).
См. также