Приложения
Приложение А. Функции, константы и структуры RDS
А.2. События блока и связанные с ними описания
А.2.6. События пользовательского интерфейса и рисования внешнего вида блоков
А.2.6.5. RDS_BFM_DRAWOVER – рисование внешнего вида блока при перетаскивании
Поток, в котором вызывается функция модели
Главный поток RDS.
Первый параметр функции модели (int CallMode)
Константа RDS_BFM_DRAWOVER.
Третий параметр функции модели (void *ExtParam)
Указатель на структуру описания события RDS_DRAWDATA.
Возвращаемое функцией модели значение
Не используется, можно возвращать любое значение.
Примечания
Реакция на событие RDS_BFM_DRAWOVER вызывается при перетаскивании мышью программно рисуемого (т.е. если в окне параметров блока установлен флаг «») блока, если модель установила флаг RDS_BLOCKDRAWOVER в его структуре данных. Обычно при перетаскивании и масштабировании программно рисуемый блок изображается инверсным прямоугольником, модель вызывается для его рисования только в «статическом» состоянии. Если этого недостаточно, модель может установить флаг RDS_BLOCKDRAWOVER и рисовать перетаскиваемый блок самостоятельно. При этом необходимо выполнять рисование так, чтобы два последовательных вызова с одними и теми же координатами и размерами блока вернули изображение на экране к состоянию до первого рисования. Этого можно добиться, например, рисуя изображение белым цветом с включенной операцией «исключающее ИЛИ» (режим рисования R2_XORPEN функции rdsXGSetPenStyle) или инвертируя точки изображения (режим рисования R2_NOT). Две последовательных операции «исключающее ИЛИ» с одним и тем же значением, так же, как и две последовательных инверсии, восстанавливают исходное значение цвета точки экрана.
См. также