[ Содержание ] | [ Перечень функций ] |
Status XSendEvent(display, w, propagate, event_mask, event_send) Display *display; Window w; Bool propagate; long event_mask; XEvent *event_send;
АРГУМЕНТЫ
Функция XSendEvent рассылает событие всем клиентам, установившим получение событий для окна w, соответствующих маске event_mask. Клиент получит это событие, если он установил маску получения событий, в которой есть общие разряды с event_mask, установленные в единицу. Или говоря другими словами, результат логического умножения маски, установленной клиентом и event_mask должен быть не равен нулю. При отправке событий через XSendEvent установки на монопольный захват получения событий игнорируются.
Кроме указания идентификатора окна в аргументе w можно использовать следующие значения:
Кроме этого, для дополнительного выбора клиентов, которым необходимо разослать сообщение можно использовать следующие варианты:
Чтобы в случае необходимости X-сервер мог корректно произвести преобразования в порядке следования байтов, event_send должен быть одним из базовых событий системы X Window или событием, определённым в расширениях системы. Иначе сервер оставляет событие нетронутым, за исключением полей send_event и serial, которые сервер заполняет своими значениеями в любом случае. Поэтому эти два поля, а также поле display при отправке события игнорируются.
В случае успешной отправки события XSendEvent возвращает ненулевое значение статуса. Если же событие по каким-то причинам отправлено не было, то статус будет нулевым.
Cм. также: XNextEvent, XPeekEvent, XWindowEvent, XCheckWindowEvent, XMaskEvent, XCheckMaskEvent, XCheckTypedEvent, XPutBackEvent.
[ Содержание ] | [ Перечень функций ] |