XKB FUNCTIONS XkbSelectEvents(3x11)
NAME
XkbSelectEvents - Selects and / or deselects for delivery
of one or more Xkb events and has them delivered under all conditionsSYNOPSIS
cc [ flag... ] file... -lX11 [ library... ]
Bool XkbSelectEvents (Display *display, unsigned int
device_spec, unsigned long int bits_to_change, unsigned
long int values_for_bits);
ARGUMENTS display connection to the X serverdevice_spec
device ID, or XkbUseCoreKbdbits_to_change
determines events to be selected / deselectedvalues_for_bits
1=>select, 0->deselect; for events in bits_to_change
DESCRIPTION
Xkb events are selected using an event mask, much the same as normal core X events are selected. However, unlikeselecting core X events, where you must specify the selec-
tion status (on or off) for all possible event types when-
ever you wish to change the selection criteria for any one event, Xkb allows you to restrict the specification to only the event types you wish to change. This means that you donot need to remember the event selection values for all pos-
sible types each time you want to change one of them. Many Xkb event types are generated under several different circumstances. When selecting to receive an Xkb event, youmay specify either that you want it delivered under all cir-
cumstances, or that you want it delivered only for a subset of the possible circumstances. You can also deselect an event type that was previously selected for, using the same granularity. Xkb provides two functions to select and deselect deliveryof Xkb events. XkbSelectEvents allows you to select or
deselect delivery of more than one Xkb event type at once.Events selected using XkbSelectEvents are delivered to your
program under all circumstances that generate the events. To restrict delivery of an event to a subset of the conditions under which it occurs, use XkbSelectEventDetails. X Version 11 Last change: libX11 1.3.5 1XKB FUNCTIONS XkbSelectEvents(3x11)
XkbSelectEventDetails only allows you to change the selec-
tion conditions for a single event at a time, but it pro-
vides a means of fine-tuning the conditions under which the
event is delivered. This request changes the Xkb event selection mask for thekeyboard specified by device_spec.
Each Xkb event that can be selected is represented by a bitin the bits_to_change and values_for_bits masks. Only the
event selection bits specified by the bits_to_change parame-
ter are affected; any unspecified bits are left unchanged. To turn on event selection for an event, set the bit for theevent in the bits_to_change parameter and set the
corresponding bit in the values_for_bits parameter. To turn
off event selection for an event, set the bit for the eventin the bits_to_change parameter and do not set the
corresponding bit in the values_for_bits parameter. The
valid values for both of these parameters are an inclusivebitwise OR of the masks shown in Table 1. There is no inter-
face to return your client's current event selection mask. Clients cannot set other clients' event selection masks. The X server reports the events defined by Xkb to your client application only if you have requested them via acall to XkbSelectEvents or XkbSelectEventDetails. Specify
the event types in which you are interested in a mask. Table 1 lists the event mask constants that can be specifiedwith the XkbSelectEvents request and the circumstances in
which the mask should be specified.Table 1 XkbSelectEvents Mask Constants
__________________________________________________________________________
Event Mask Value Notification Wanted__________________________________________________________________________
XkbNewKeyboardNotifyMask (1L<<0) Keyboard geometry change XkbMapNotifyMask (1L<<1) Keyboard mapping change XkbStateNotifyMask (1L<<2) Keyboard state change XkbControlsNotifyMask (1L<<3) Keyboard control change XkbIndicatorStateNotifyMask (1L<<4) Keyboard indicator state change XkbIndicatorMapNotifyMask (1L<<5) Keyboard indicator map change XkbNamesNotifyMask (1L<<6) Keyboard name change XkbCompatMapNotifyMask (1L<<7) Keyboard compat map change XkbBellNotifyMask (1L<<8) Bell XkbActionMessageMask (1L<<9) Action message XkbAccessXNotifyMask (1L<<10) AccessX features XkbExtensionDeviceNotifyMask (1L<<11) Extension device XkbAllEventsMask (0xFFF) All Xkb eventsIf a bit is not set in the bits_to_change parameter, but the
corresponding bit is set in the values_for_bits parameter, a
X Version 11 Last change: libX11 1.3.5 2XKB FUNCTIONS XkbSelectEvents(3x11)
BadMatch protocol error results. If an undefined bit is setin either the bits_to_change or the values_for_bits parame-
ter, a BadValue protocol error results. All event selection bits are initially zero for clients using the Xkb extension. Once you set some bits, they remain set for your client until you clear them via another call toXkbSelectEvents.
XkbSelectEvents returns False if the Xkb extension has not
been initilialized and True otherwise.RETURN VALUES
True The XkbSelectEvents function returns True if
the Xkb extension has been initilialized.False The XkbSelectEvents function returns False if
the Xkb extension has not been initilialized.SEE ALSO
XkbSelectEventDetails(3x11), XkbUseCoreKbd(3x11)ATTRIBUTES
See attributes(5) for descriptions of the following attri-
butes:____________________________________________________________
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
|_____________________________|_____________________________|
| Availability | x11/library/libx11 ||_____________________________|_____________________________|
| Interface Stability | Committed ||_____________________________|_____________________________|
| MT-Level | See XInitThreads(3X11) |
|_____________________________|_____________________________|
X Version 11 Last change: libX11 1.3.5 3