XChangeKeyboardControl()XChangeKeyboardControl()Name
XChangeKeyboardControl – change the keyboard preferences such as key
click.
Synopsis
XChangeKeyboardControl(display, value_mask, values)
Display *display;
unsigned long value_mask;
XKeyboardControl *values;
Arguments
display Specifies a connection to an X server; returned from
XOpenDisplay().
value_mask
Specifies a mask composed of ORed symbols from the table
shown in the Structures section below, specifying which
fields to set.
values Specifies the settings for the keyboard preferences.
DescriptionXChangeKeyboardControl() sets user preferences such as key click, bell
volume and duration, light state, and keyboard auto-repeat. Changing
some or all these settings may not be possible on all servers.
The value_mask argument specifies which values are to be changed; it is
made by combining any number of the mask symbols
The values structure contains the values to be set, as follows:
key_click_percent sets the volume for key clicks between 0 (off) and
100 (loud) inclusive. Setting to -1 restores the default.
bell_percent sets the base volume for the bell between 0 (off) and 100
(loud) inclusive. Setting to -1 restores the default.
bell_pitch sets the pitch (specified in Hz) of the bell. Setting to -1
restores the default.
bell_duration sets the duration (specified in milliseconds) of the
bell. Setting to -1 restores the default.
led_mode is either LedModeOn or LedModeOff. led is a number between 1
and 32 inclusive that specifies which light's state is to be changed.
If both led_mode and led are specified, then the state of the LED spec‐
ified in led is changed to the state specified in led_mode. If only
led_mode is specified, then all the LEDs assume the value specified by
led_mode.
auto_repeat_mode is either AutoRepeatModeOn, AutoRepeatModeOff, or
AutoRepeatModeDefault. key is a keycode between 7 and 255 inclusive.
If both auto_repeat_mode and key are specified, then the auto-repeat
mode of the key specified by key is set as specified by
auto_repeat_mode. If only auto_repeat_mode is specified, then the
global auto repeat mode for the entire keyboard is changed, without
affecting the settings for each key. If the auto_repeat_mode is
AutoRepeatModeDefault for either case, the key or the entire keyboard
is returned to its default setting for the server, which is normally to
have all non-modal keys repeat.
When a key is being used as a modifier key, it does not repeat regard‐
less of the individual or global auto repeat mode.
The order in which the changes are performed is server-dependent, and
some may be completed when another causes an error.
For more information on user preferences, see Volume One, Chapter 9,
The Keyboard and Pointer.
Structures
/* masks for ChangeKeyboardControl */
#define KBKeyClickPercent (1L<<0)
#define KBBellPercent (1L<<1)
#define KBBellPitch (1L<<2)
#define KBBellDuration (1L<<3)
#define KBLed (1L<<4)
#define KBLedMode (1L<<5)
#define KBKey (1L<<6)
#define KBAutoRepeatMode (1L<<7)
/* structure for ChangeKeyboardControl */
typedef struct {
int key_click_percent;
int bell_percent;
int bell_pitch;
int bell_duration;
int led;
int led_mode; /* LedModeOn or LedModeOff */
int key;
int auto_repeat_mode; /* AutoRepeatModeOff, AutoRepeatModeOn,
AutoRepeatModeDefault */
} XKeyboardControl;
Errors
BadMatch values.key specified but values.auto_repeat_mode not speci‐
fied.
values.led specified but values.led_mode not specified.
BadValue values.key_click_percent < -1.
values.bell_percent < -1.
values.bell_pitch < -1.
values.bell_duration < -1.
See AlsoXAutoRepeatOff(), XAutoRepeatOn(), XBell(), XGetDefault(), XGetKey‐
boardControl(), XGetPointerControl().
Xlib - User Preferences XChangeKeyboardControl()