unixdev.net


Switch to SpeakEasy.net DSL

The Modular Manual Browser

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

XkbResizeKeySyms(3)              XKB FUNCTIONS             XkbResizeKeySyms(3)



NAME
       XkbResizeKeySyms - Change the number of symbols bound to a key

SYNOPSIS
       KeySym * XkbResizeKeySyms ( xkb, key, needed )
             XkbDescRec * xkb;
             int key;
             int needed;

ARGUMENTS
       - xkb  keyboard description to be changed

       - key  keycode for key to modify

       - needed
              new number of keysyms required for key

DESCRIPTION
       XkbResizeKeySyms  reserves  the  space  needed  for  needed keysyms and
       returns a pointer to the beginning of the  new  array  that  holds  the
       keysyms.  It  adjusts the offset field of the key_sym_map entry for the
       key if necessary and can also change the syms, num_syms, and  size_syms
       fields  of  xkb->map  if  it is necessary to reallocate the syms array.
       XkbResizeKeySyms does not modify either the width or number  of  groups
       associated with the key.

       If  needed  is  greater than the current number of keysyms for the key,
       XkbResizeKeySyms initializes all new keysyms in the array to NoSymbol.

       Because the number of symbols needed by a key is normally  computed  as
       width  *  number of groups, and XkbResizeKeySyms does not modify either
       the width or number of groups for the key, a  discrepancy  exists  upon
       return  from  XkbResizeKeySyms  between  the  space  allocated  for the
       keysyms and the number required. The unused entries in the list of sym-
       bols returned by XkbResizeKeySyms are not preserved across future calls
       to any of the map editing functions, so you must update the key  symbol
       mapping  (which  updates  the  width  and number of groups for the key)
       before calling another allocator function.  A  call  to  XkbChangeType-
       sOfKey will update the mapping.

       If  any  allocation  errors  occur while resizing the number of symbols
       bound to the key, XkbResizeKeySyms returns NULL.

SEE ALSO
       XkbChangeTypesOfKey(3), XkbResizeKeyActions(3)

NOTES
       A change to the number of symbols bound to a key should be  accompanied
       by  a  change  in the number of actions bound to a key. Refer to XkbRe-
       sizeKeyActions for more information on changing the number  of  actions
       bound to a key.



X Version 11                     libX11 1.1.5              XkbResizeKeySyms(3)