Table of Contents

## Name

XNextEvent, XPeekEvent, XWindowEvent, XCheckWindowEvent, XMaskEvent, XCheckMaskEvent, XCheckTypedEvent, XCheckTypedWindowEvent - select events by type

## Syntax

int XNextEvent(Display *display, XEvent *event_return);
int XPeekEvent(Display *display, XEvent *event_return);
int XWindowEvent(Display *display, Window w, long
  event_mask, XEvent *event_return);
Bool XCheckWindowEvent(Display *display, Window w, long
  event_mask, XEvent *event_return);
int XMaskEvent(Display *display, long event_mask, XEvent
  *event_return);
Bool XCheckMaskEvent(Display *display, long event_mask,
  XEvent *event_return);
Bool XCheckTypedEvent(Display *display, int event_type,
  XEvent *event_return);
Bool XCheckTypedWindowEvent(Display *display, Window w,
  int event_type, XEvent *event_return);

## Arguments

display
  Specifies the connection to the X server.
event_mask
  Specifies the event mask.
event_return
  Returns the matched event's associated structure.
event_return
  Returns the next event in the queue.
event_return
  Returns a copy of the matched event's associated structure.
event_type
  Specifies the event type to be compared.

w
  Specifies the window whose event uou are interested in.

## Description

The XNextEvent function copies the first event from the event queue into the specified XEvent structure and then removes it from the queue. If the event queue is empty, XNextEvent flushes the output buffer and blocks until an event is received.

The XPeekEvent function returns the first event from the event queue, but it does not remove the event from the queue. If the queue is empty, XPeekEvent flushes the output buffer and blocks until an event is received. It then copies the event into the client-supplied XEvent structure without removing it from the event queue.

The XWindowEvent function searches the event queue for an event that matches both the specified window and event mask. When it finds a match, XWindowEvent removes that event from the queue and copies it into the specified XEvent structure. The other events stored in the queue are not discarded. If a matching event is not in the queue, XWindowEvent flushes the output buffer and blocks until one is received.

The XCheckWindowEvent function searches the event queue and then the events available on the server connection for the first event that matches the specified window and event mask. If it finds a match, XCheckWindowEvent removes that event, copies it into the specified XEvent structure, and returns True. The other events stored in the queue are not discarded. If the event you requested is not available, XCheckWindowEvent returns False, and the output buffer will have been flushed.

The XMaskEvent function searches the event queue for the events associated with the specified mask. When it finds a match, XMaskEvent removes that event and copies it into the specified XEvent structure. The other events stored in the queue are not discarded. If the event you requested is not in the queue, XMaskEvent flushes the output buffer and blocks until one is received.

The XCheckMaskEvent function searches the event queue and then any events available on the server connection for the first event that matches the specified mask. If it finds a match, XCheckMaskEvent removes that event, copies it into the specified XEvent structure, and returns True. The other events stored in the queue are not discarded. If the event you requested is not available, XCheckMaskEvent returns False, and the output buffer will have been flushed.

The XCheckTypedEvent function searches the event queue and then any events available on the server connection for the first event that matches the specified type. If it finds a match, XCheckTypedEvent removes that event, copies it into the specified XEvent structure, and returns True. The other events in the queue are not discarded. If the event is not available, XCheckTypedEvent returns False, and the output buffer will have been flushed.

The XCheckTypedWindowEvent function searches the event queue and then any events available on the server connection for the first event that matches the specified type and window. If it finds a match, XCheckTypedWindowEvent removes the event from the queue, copies it into the specified XEvent structure, and returns True. The other events in the queue are not discarded. If the event is not available, XCheckTypedWindowEvent returns False, and the output buffer will have been flushed.

## See Also

XAnyEvent(3X11) , XIfEvent(3X11) , XPutBackEvent(3X11) , XSendEvent(3X11)
Xlib - C Language X Interface

Table of Contents

- Name
- Syntax
- Arguments
- Description
- See Also