XkbSetNamedDeviceIndicator (3) - Linux Manuals

XkbSetNamedDeviceIndicator: Names an indicator if it is not already named; toggles

NAME

XkbSetNamedIndicator - 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.