GNU.WIKI: The GNU/Linux Knowledge Base

  [HOME] [PHP Manual] [HowTo] [ABS] [MAN1] [MAN2] [MAN3] [MAN4] [MAN5] [MAN6] [MAN7] [MAN8] [MAN9]

  [0-9] [Aa] [Bb] [Cc] [Dd] [Ee] [Ff] [Gg] [Hh] [Ii] [Jj] [Kk] [Ll] [Mm] [Nn] [Oo] [Pp] [Qq] [Rr] [Ss] [Tt] [Uu] [Vv] [Ww] [Xx] [Yy] [Zz]


       XkbSetControls  -  Copies  changes  to the X server based on a modified
       ctrls structure in a local copy of the keyboard description


       Bool XkbSetControls (Display *display, unsigned long which,  XkbDescPtr


       - display
              connection to X server

       - which
              mask of controls requested

       - xkb  keyboard description for controls information


       For  each  bit that is set in the which parameter, XkbSetControls sends
       the corresponding values from the xkb->ctrls field to the server. Valid
       values  for  which  are  any combination of the masks listed in Table 1
       that have "ok" in the which column.

       Table 1 shows the actual values for the individual mask  bits  used  to
       select controls for modification and to enable and disable the control.
       Note that the same mask bit is used to specify general modifications to
       the parameters used to configure the control (which), and to enable and
       disable the control (enabled_ctrls). The anomalies  in  the  table  (no
       "ok"  in column) are for controls that have no configurable attributes;
       and for controls that are not boolean controls and therefore cannot  be
       enabled or disabled.

                               Table 1 Controls Mask Bits
       Mask Bit                 which or        enabled   Value
                                changed_ctrls   _ctrls
       XkbRepeatKeysMask        ok              ok        (1L<<0)
       XkbSlowKeysMask          ok              ok        (1L<<1)
       XkbBounceKeysMask        ok              ok        (1L<<2)
       XkbStickyKeysMask        ok              ok        (1L<<3)
       XkbMouseKeysMask         ok              ok        (1L<<4)
       XkbMouseKeysAccelMask    ok              ok        (1L<<5)
       XkbAccessXKeysMask       ok              ok        (1L<<6)
       XkbAccessXTimeoutMask    ok              ok        (1L<<7)
       XkbAccessXFeedbackMask   ok              ok        (1L<<8)
       XkbAudibleBellMask                       ok        (1L<<9)
       XkbOverlay1Mask                          ok        (1L<<10)
       XkbOverlay2Mask                          ok        (1L<<11)
       XkbIgnoreGroupLockMask                   ok        (1L<<12)
       XkbGroupsWrapMask        ok                        (1L<<27)
       XkbInternalModsMask      ok                        (1L<<28)
       XkbIgnoreLockModsMask    ok                        (1L<<29)
       XkbPerKeyRepeatMask      ok                        (1L<<30)
       XkbControlsEnabledMask   ok                        (1L<<31)
       XkbAccessXOptionsMask    ok              ok        (XkbStickyKeysMask |
       XkbAllBooleanCtrlsMask                   ok        (0x00001FFF)
       XkbAllControlsMask       ok                        (0xF8001FFF)

       If xkb->ctrls is NULL, the server does not support a compatible version
       of Xkb, or  the  Xkb  extension  has  not  been  properly  initialized,
       XkbSetControls  returns False. Otherwise, it sends the request to the X
       server and returns True.

       Note that changes to  attributes  of  controls  in  the  XkbControlsRec
       structure  are  apparent  only  when the associated control is enabled,
       although the corresponding values are still updated in  the  X  server.
       For  example,  the  repeat_delay and repeat_interval fields are ignored
       unless the RepeatKeys control is  enabled  (that  is,  the  X  server's
       equivalent  of  xkb->ctrls  has XkbRepeatKeyMask set in enabled_ctrls).
       It is permissible to modify the attributes of a control in one call  to
       XkbSetControls  and  enable  the  control  in  a  subsequent  call. See
       XkbChangeEnabledControls for more information on enabling and disabling

       Note   that   the  enabled_ctrls  field  is  itself  a  control  -  the
       EnabledControls control. As such, to set a  specific  configuration  of
       enabled  and  disabled  boolean controls, you must set enabled_ctrls to
       the appropriate bits to enable only the controls you want  and  disable
       all  others,  then  specify  the  XkbControlsEnabledMask  in  a call to

       Because this is somewhat awkward if all you want to do  is  enable  and
       disable controls, and not modify any of their attributes, a convenience
       function is also provided for this purpose, XkbChangeEnabledControls.


       True           The XkbSetControls function returns True when  it  sends
                      the request to the X server.

       False          The   XkbSetControls   function   returns   False   when
                      xkb->ctrls is  NULL,  the  server  does  not  support  a
                      compatible  version of Xkb, or the Xkb extension has not
                      been properly initialized.


       BadAlloc       Unable to allocate storage

       BadMatch       A compatible version of Xkb was  not  available  in  the
                      server or an argument has correct type and range, but is
                      otherwise invalid


       XkbChangeEnabledControls(3), XkbFreeControls(3)

  All copyrights belong to their respective owners. Other content (c) 2014-2018, GNU.WIKI. Please report site errors to
Page load time: 0.163 seconds. Last modified: November 04 2018 12:49:43.