unixdev.net


Switch to SpeakEasy.net DSL

The Modular Manual Browser

Home Page
Manual: (Debian-5.0)
Page:
Section:
Apropos / Subsearch:
optional field

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


       c s s s l l l l l l l l l l l l.  Table 1 Controls  Mask  Bits  _  Mask
       Bit  which  or    enabled   Value       changed_ctrls  _ctrls  _ XkbRe-
       peatKeysMask   ok   ok   (1L<<0)  XkbSlowKeysMask     ok   ok   (1L<<1)
       XkbBounceKeysMask   ok   ok   (1L<<2)                         XkbStick-
       yKeysMask   ok   ok   (1L<<3)     XkbMouseKeysMask    ok   ok   (1L<<4)
       XkbMouseKeysAccelMask    ok   ok   (1L<<5)                       XkbAc-
       cessXKeysMask  ok   ok   (1L<<6)                     XkbAccessXTimeout-
       Mask    ok   ok   (1L<<7)    XkbAccessXFeedbackMask   ok   ok   (1L<<8)
       XkbAudibleBellMask       ok   (1L<<9)                          XkbOver-
       lay1Mask          ok   (1L<<10)  XkbOverlay2Mask          ok   (1L<<11)
       XkbIgnoreGroupLockMask        ok   (1L<<12)              XkbGroupsWrap-
       Mask   ok        (1L<<27) XkbInternalModsMask ok        (1L<<28) XkbIg-
       noreLockModsMask    ok        (1L<<29)                 XkbPerKeyRepeat-
       Mask ok        (1L<<30)     XkbControlsEnabledMask   ok        (1L<<31)
       XkbAccessXOptionsMask    ok   ok   (XkbStickyKeysMask                 |
                      XkbAccessXFeedbackMask)              XkbAllBooleanCtrls-
       Mask        ok   (0x00001FFF)                           XkbAllControls-
       Mask  ok        (0xF8001FFF)

       If xkb-&gt;ctrls is NULL, the server does not support a compatible version
       of Xkb, or the Xkb extension has not been properly initialized, XkbSet-
       Controls 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-&gt;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
       controls.

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

       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-&gt;ctrls  is  NULL, the server does not support a com-
                      patible 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 available in the
                      server or an argument has correct type and range, but is
                      otherwise invalid

SEE ALSO
       XkbChangeEnabledControls(3), XkbFreeControls(3)




X Version 11                     libX11 1.1.5                XkbSetControls(3)