XSelectInput(3X11)
Name
XSelectInput, XSelectAsyncInput − select input events
Syntax
XSelectInput(display, w, event_mask)
Display *display;
Window w;
long event_mask;
XSelectAsyncInput(display, w, event_mask, procedure, argument)
Display *display;
Window w;
unsigned long event_mask;
int (*procedure)()
unsigned long argument;
Arguments
argumentSpecifies the argument that is to be passed to the specified procedure.
displaySpecifies the connection to the X server.
event_maskSpecifies the event mask.
procedureSpecifies the procedure that is to be called.
wSpecifies the window whose events you are interested in.
Description
The XSelectInput function requests that the X server report the events associated with the specified event mask. Initially, X will not report any of these events. Events are reported relative to a window. If a window is not interested in a device event, it usually propagates to the closest ancestor that is interested, unless the do_not_propagate mask prohibits it.
Setting the event-mask attribute of a window overrides any previous call for the same window but not for other clients. Multiple clients can select for the same events on the same window with the following restrictions:
•Multiple clients can select events on the same window because their event masks are disjoint. When the X server generates an event, it reports it to all interested clients.
•Only one client at a time can select CirculateRequest, ConfigureRequest, or MapRequest events, which are associated with the event mask SubstructureRedirectMask.
•Only one client at a time can select a ResizeRequest event, which is associated with the event mask ResizeRedirectMask.
•Only one client at a time can select a ButtonPress event, which is associated with the event mask ButtonPressMask.
The server reports the event to all interested clients.
XSelectInput can generate a BadWindow error.
The XSelectAsyncInput function establishes asynchrous notification mode and calls the specified procedure, passing it the specified argument when you receive the event selected with the event_mask. Anyone who asynchrous notification cannot also use the SIGIO signal.
Diagnostics
BadWindow
A value for a Window argument does not name a defined Window.
See Also
Guide to the Xlib Library
Subroutines