XkbSetNamedIndicator - Man Page

Names an indicator if it is not already named; toggles the state of the indicator; sets the indicator to a specified state and sets the indicator map for the indicator

Synopsis

Bool XkbSetNamedDeviceIndicator (Display *dpy, unsigned int device_spec, unsigned int led_class, unsigned int led_id, Atom name, Bool change_state, Bool state, Bool create_new, XkbIndicatorMapPtr map); Bool XkbSetNamedIndicator (Display *dpy, Atom name, Bool change_state, Bool state, Bool create_new, XkbIndicatorMapPtr map);

Arguments

- dpy

connection to the X server

- device_spec

device ID, or XkbUseCoreKbd

- led_class

feedback class, or XkbDfltXIClass

- led_id

feedback ID, or XkbDfltXIId

- name

name of the indicator to change

- change_state

whether to change the indicator state or not

- state

desired new state for the indicator

- create_new

whether a new indicator with the specified name should be created when necessary

- map

new map for the indicator

Description

If a compatible version of the Xkb extension is not available in the server, XkbSetNamedDeviceIndicator returns False. Otherwise, it sends a request to the X server to change the  indicator specified by name and returns True.
 If change_state is True, XkbSetNamedDeviceIndicator tells the server to change the state of the named indicator to the value  specified by state. If change_state is False, then state is not used.

If an indicator with the name specified by name does not already exist, the create_new parameter tells the server whether it should create a new named indicator. If create_new is True, the server finds the first indicator that doesn't have a name and gives  it the name specified by name. If the optional parameter, map, is not NULL, XkbSetNamedDeviceIndicator tells the server to change the indicator's map to the values specified in map.

In addition, it can also generate XkbIndicatorStateNotify,  XkbIndicatorMapNotify, and XkbNamesNotify events.

XkbSetNamedIndicator is a convenience function that calls XkbSetNamedDeviceIndicator with a device_spec of XkbUseCoreKbd, a led_class of XkbDfltXIClass, and a led_id of XkbDfltXIId. It returns the return value from XkbSetNamedDeviceIndicator.

Return Values

True

The XkbSetNamedIndicator and XkbSetNamedDeviceIndicator functions return True if a compatible version of the Xkb extension is available in the server.

False

The XkbSetNamedIndicator and XkbSetNamedDeviceIndicator functions return False if a compatible version of the Xkb extension is not available in the server.

Diagnostics

BadAtom

A name is neither a valid Atom or None

BadImplementation

Invalid reply from server

BadKeyboard

device_spec does not specify a device with indicators.

BadMatch

led_id is not DfltXIId and does not specify a feedback of the class specified by led_class on the device specified by device_spec.

BadValue

led_class does not specify DfltXIClass, LedFeedbackClass, or KbdFeedbackClass.

See Also

XkbIndicatorMapNotify(3), XkbIndicatorStateNotify(3), XkbNamesNotify(3)

Referenced By

XkbSetIndicatorMap(3).

The man page XkbSetNamedDeviceIndicator(3) is an alias of XkbSetNamedIndicator(3).

libX11 1.7.0 X Version 11 XKB FUNCTIONS