Index of Section 3 Manual Pages

Interix / SUAXkbSetControls.3Interix / SUA

XkbSetControls(3)         XKB FUNCTIONS         XkbSetControls(3)



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

SYNOPSIS
       Bool XkbSetControls ( display, which, xkb )
             Display *display;
             unsigned long which;
             XkbDescPtr xkb;

ARGUMENTS
       - display
              connection to X server

       - which
              mask of controls requested

       - xkb  keyboard description for controls information

DESCRIPTION
       For  each  bit that is set in the which parameter, XkbSet-
       Controls  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 param-
       eters 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 dis-
       abled.

                               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 |
                                                          XkbAccessXFeedbackMask)
       XkbAllBooleanCtrlsMask                   ok        (0x00001FFF)
       XkbAllControlsMask       ok                        (0xF8001FFF)

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

       Note that changes to attributes of controls in the XkbCon-
       trolsRec  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 XkbChangeEn-
       abledControls for more information on  enabling  and  dis-
       abling controls.

       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  Xkb-
       SetControls.

       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.

RETURN VALUES
       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.

DIAGNOSTICS
       BadAlloc       Unable to allocate storage

       BadMatch       A compatible version of Xkb was not  avail-
                      able  in the server or an argument has cor-
                      rect  type  and  range,  but  is  otherwise
                      invalid

SEE ALSO
       XkbChangeEnabledControls(3), XkbFreeControls(3)




X Version 11               libX11 1.1.5         XkbSetControls(3)

Interix / SUAHosted at SUA Community for Interix, SUA and SFUInterix / SUA