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 structures. Do not allocate a names structure directly using malloc or Xmalloc if your application changes the number of key aliases or radio groups or constructs a symbolic names structure without loading the necessary 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