dwww Home | Manual pages | Find package

XkbAllocNames(3)                 XKB FUNCTIONS                 XkbAllocNames(3)

NAME
       XkbAllocNames - Allocate symbolic names structures

SYNOPSIS

       Status  XkbAllocNames  (XkbDescPtr  xkb, unsigned int which, int num_rg,
              int num_key_aliases);

ARGUMENTS
       xkb    keyboard description for which names are to be allocated

       which  mask of names to be allocated

       num_rg total number of radio group names needed

       num_key_aliases
              total number of key aliases needed

DESCRIPTION
       Most applications do not need to directly allocate symbolic names struc-
       tures. Do not allocate a names structure directly using malloc or  Xmal-
       loc  if  your  application  changes  the  number of key aliases or radio
       groups or constructs a symbolic names structure without loading the nec-
       essary components from the X server. Instead use XkbAllocNames.

       XkbAllocNames can return BadAlloc, BadMatch, and  BadValue  errors.  The
       which parameter is the bitwise inclusive OR of the valid names mask bits
       defined in Table 1.

                                 Table 1 Symbolic Names Masks
       ─────────────────────────────────────────────────────────────────────────────────
       Mask Bit                 Value      Keyboard     Field
                                           Component
       ─────────────────────────────────────────────────────────────────────────────────
       XkbKeycodesNameMask      (1<<0)     Xkb->names   keycodes
       XkbGeometryNameMask      (1<<1)     Xkb->names   geometry
       XkbSymbolsNameMask       (1<<2)     Xkb->names   symbols
       XkbPhysSymbolsNameMask   (1<<3)     Xkb->names   phys_symbols
       XkbTypesNameMask         (1<<4)     Xkb->names   type
       XkbCompatNameMask        (1<<5)     Xkb->names   compat
       XkbKeyTypeNamesMask      (1<<6)     Xkb->map     type[*].name
       XkbKTLevelNamesMask      (1<<7)     Xkb->map     type[*].lvl_names[*]
       XkbIndicatorNamesMask    (1<<8)     Xkb->names   indicators[*]
       XkbKeyNamesMask          (1<<9)     Xkb->names   keys[*], num_keys
       XkbKeyAliasesMask        (1<<10)    Xkb->names   key_aliases[*], num_key_aliases
       XkbVirtualModNamesMask   (1<<11)    Xkb->names   vmods[*]
       XkbGroupNamesMask        (1<<12)    Xkb->names   groups[*]
       XkbRGNamesMask           (1<<13)    Xkb->names   radio_groups[*], num_rg
       XkbComponentNamesMask    (0x3f)     Xkb->names   keycodes,
                                                        geometry,
                                                        symbols,
                                                        physical symbols,
                                                        types, and
                                                        compatibility map
       XkbAllNamesMask          (0x3fff)   Xkb->names   all name components

       Do not free symbolic names structures directly using free or XFree.  Use
       XkbFreeNames instead.

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

       BadValue       An argument is out of range

SEE ALSO
       XkbFreeNames(3)

X Version 11                     libX11 1.8.12                 XkbAllocNames(3)

Generated by dwww version 1.16 on Sat Oct 3 07:40:51 CEST 2026.