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
Bool XkbSetNamedIndicator (\^Display *dpy\^, unsigned int device_spec\^, Atom name\^, Bool change_state\^, Bool state\^, Bool create_new\^, XkbIndicatorMapPtr map\^);
- dpy
connection to the X server
- device_spec
device ID, or XkbUseCoreKbd
- 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
If a compatible version of the Xkb extension is not available in the server, XkbSetNamedIndicator 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, and the optional parameter, state, is not NULL, XkbSetNamedIndicator tells the server to change the state of the named indicator to the value specified by state.
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, XkbSetNamedIndicator 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.
True
The XkbSetNamedIndicator function returns True if a compatible version of the Xkb extension is available in the server.
False
The XkbSetNamedIndicator function returns False if a compatible version of the Xkb extension is not available in the server.
BadAtom
A name is neither a valid Atom or None
BadImplementation
Invalid reply from server
XkbIndicatorMapNotify(3), XkbIndicatorStateNotify(3), XkbNamesNotify(3)