XIfEvent(3X) XIfEvent(3X)
NAME
XIfEvent, XCheckIfEvent, XPeekIfEvent - check the event
queue with a predicate procedure
SYNOPSIS
XIfEvent(display, event_return, predicate, arg)
Display *display;
XEvent *event_return;
Bool (*predicate)();
char *arg;
Bool XCheckIfEvent(display, event_return, predicate,
arg)
Display *display;
XEvent *event_return;
Bool (*predicate)();
char *arg;
XPeekIfEvent(display, event_return, predicate, arg)
Display *display;
XEvent *event_return;
Bool (*predicate)();
char *arg;
ARGUMENTS
arg Specifies the user-supplied argument that
will be passed to the predicate procedure.
display Specifies the connection to the X server.
event_return
Returns either a copy of or the matched
event's associated structure.
predicate Specifies the procedure that is to be called
to determine if the next event in the queue
matches what you want.
DESCRIPTION
The XIfEvent function completes only when the specified
predicate procedure returns True for an event, which
indicates an event in the queue matches. XIfEvent
flushes the output buffer if it blocks waiting for
additional events. XIfEvent removes the matching event
from the queue and copies the structure into the
client-supplied XEvent structure.
When the predicate procedure finds a match,
XCheckIfEvent copies the matched event into the
client-supplied XEvent structure and returns True.
(This event is removed from the queue.) If the
predicate procedure finds no match, XCheckIfEvent
- 1 -
XIfEvent(3X) XIfEvent(3X)
returns False, and the output buffer will have been
flushed. All earlier events stored in the queue are
not discarded.
The XPeekIfEvent function returns only when the
specified predicate procedure returns True for an
event. After the predicate procedure finds a match,
XPeekIfEvent copies the matched event into the client-
supplied XEvent structure without removing the event
from the queue. XPeekIfEvent flushes the output buffer
if it blocks waiting for additional events.
SEE ALSO
XPutBackEvent(3X11) XNextEvent(3X11), XSendEvent(3X11)
Xlib Programming Manual
- 2 -