unixdev.net


Switch to SpeakEasy.net DSL

The Modular Manual Browser

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

XkbSetIndicatorMap(3)            XKB FUNCTIONS           XkbSetIndicatorMap(3)



NAME
       XkbSetIndicatorMap - Downloads the changes to the server based on modi-
       fications to a local copy of the keyboard description which will update
       the maps for one or more indicators

SYNOPSIS
       Bool XkbSetIndicatorMap ( dpy, which, desc )
             Display * dpy ;
             unsigned int  which ;
             XkbDescPtr  desc ;

ARGUMENTS
       - dpy  connection to the X server

       - which
              mask of indicators to change

       - desc keyboard description from which the maps are taken

DESCRIPTION
       This  section  discusses  the effects of explicitly changing indicators
       depending upon different settings in the indicator map.  See  Tables  1
       and  Table 2 for information on the effects of the indicator map fields
       when explicit changes are made.


       c s s c s s l l l l l lw(3i).  Table 1 XkbIndicatorMapRec  which_groups
       and groups, Indicator Drives Keyboard _ which_groups   New State Effect
       on Keyboard Group State _ XkbIM_UseNone  On or Off No effect XkbIM_Use-
       Base  On  or  Off     No  effect XkbIM_UseLatched    On   T{ The groups
       field is treated as a group mask. The keyboard group latch  is  changed
       to  the  lowest numbered group specified in groups; if groups is empty,
       the   keyboard  group  latch  is  changed  to  zero.    T}   XkbIM_Use-
       Latched    Off  T{  The groups field is treated as a group mask. If the
       indicator is explicitly extinguished, keyboard group latch  is  changed
       to  the  lowest  numbered  group  not specified in groups; if groups is
       zero, the keyboard group latch is set to the index of the highest legal
       keyboard group.  T} XkbIM_UseLocked or
       XkbIM_UseEffective  On   T{  If  the groups mask is empty, group is not
       changed; otherwise, the locked keyboard group is changed to the  lowest
       numbered group specified in groups.  T} XkbIM_UseLocked or
       XkbIM_UseEffective  Off  T{  Locked  keyboard  group  is changed to the
       lowest numbered group that is not specified in the groups mask,  or  to
       Group1 if the groups mask contains all keyboard groups.  T}



       c  s  s  c s s l l l l l lw(3i).  Table 2 XkbIidocatorMapRec which_mods
       and mods, Indicator Drives Keyboard _  which_mods     New  State Effect
       on Keyboard Modifiers _ XkbIM_UseNone or XkbIM_UseBase     On or Off No
       Effect XkbIM_UseLatched    On   T{ Any modifiers specified in the  mask
       field  of  mods  are  added  to  the  latched modifiers.  T} XkbIM_Use-
       Latched    Off  T{ Any modifiers specified in the mask  field  of  mods
       are   removed   from   the   latched  modifiers.   T}  XkbIM_UseLocked,
       XkbIM_UseCompat, or XkbIM_UseEffective     On   T{ Any modifiers speci-
       fied  in  the mask field of mods are added to the locked modifiers.  T}
       XkbIM_UseLocked     Off  T{ Any modifiers specified in the  mask  field
       of  mods  are removed from the locked modifiers.  T} XkbIM_UseCompat or
       XkbIM_UseEffective   Off  T{ Any modifiers specified in the mask  field
       of mods are removed from both the locked and latched modifiers.  T}

       If  XkbIM_LEDDrivesKB  is  set  and XkbIM_NoExplicit is not, and if you
       call a function that updates the server's image of  the  indicator  map
       (such as XkbSetIndicatorMap or XkbSetNamedIndicator),
        Xkb  changes  the  keyboard  state  and  controls to reflect the other
       fields of the indicator map. If you attempt to  explicitly  change  the
       value  of  an  indicator  for  which XkbIM_LEDDrivesKB is absent or for
       which XkbIM_NoExplicit is present, keyboard state or controls are unaf-
       fected.

       If  neither XkbIM_NoAutomatic nor XkbIM_NoExplicit is set in an indica-
       tor map, Xkb honors any request to change the state of  the  indicator,
       but  the new state might be immediately superseded by automatic changes
       to the indicator state if the keyboard state or controls change.

       The effects of changing an indicator that drives the keyboard are cumu-
       lative;  it  is  possible for a single change to affect keyboard group,
       modifiers, and controls simultaneously.

       If you change an indicator for which  both  the  XkbIM_LEDDrivesKB  and
       XkbIM_NoAutomatic flags are specified, Xkb applies the keyboard changes
       specified in the other indicator map fields and changes  the  indicator
       to  reflect  the  state  that  was  explicitly requested. The indicator
       remains in the new state until it is explicitly changed again.

       If the XkbIM_NoAutomatic flag is not set and XkbIM_LEDDrivesKB is  set,
       Xkb applies the changes specified in the other indicator map fields and
       sets the state of the indicator to the values specified by the  indica-
       tor map. Note that it is possible in this case for the indicator to end
       up in a different state than the one that was explicitly requested. For
       example,  Xkb  does  not  extinguish  an  indicator  with which_mods of
       XkbIM_UseBase and mods of Shift if,  at  the  time  Xkb  processes  the
       request  to  extinguish  the indicator, one of the Shift keys is physi-
       cally depressed.

       If you explicitly light an indicator  for  which  XkbIM_LEDDrivesKB  is
       set,  Xkb  enables  all  of the boolean controls specified in the ctrls
       field of its indicator map. Explicitly extinguishing such an  indicator
       causes Xkb to disable all of the boolean controls specified in ctrls.

       For  each  bit set in the which parameter, XkbSetIndicatorMap sends the
       corresponding indicator map from the desc parameter to the server.

SEE ALSO
       XkbSetNamedIndicator(3)



X Version 11                     libX11 1.1.5            XkbSetIndicatorMap(3)