1XkbAllocNames(3)                 XKB FUNCTIONS                XkbAllocNames(3)
2
3
4

NAME

6       XkbAllocNames - Allocate symbolic names structures
7

SYNOPSIS

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

ARGUMENTS

13       - xkb  keyboard description for which names are to be allocated
14
15       - which
16              mask of names to be allocated
17
18       - num_rg
19              total number of radio group names needed
20
21       - num_key_aliases
22              total number of key aliases needed
23

DESCRIPTION

25       Most applications do not  need  to  directly  allocate  symbolic  names
26       structures.  Do not allocate a names structure directly using malloc or
27       Xmalloc if your application changes the number of key aliases or  radio
28       groups  or  constructs  a  symbolic names structure without loading the
29       necessary components from the X server. Instead use XkbAllocNames.
30
31       XkbAllocNames can return BadAlloc, BadMatch, and BadValue  errors.  The
32       which  parameter  is  the  bitwise inclusive OR of the valid names mask
33       bits defined in Table 1.
34
35
36                                 Table 1 Symbolic Names Masks
37       ─────────────────────────────────────────────────────────────────────────────────
38       Mask Bit                 Value      Keyboard     Field
39                                           Component
40       ─────────────────────────────────────────────────────────────────────────────────
41       XkbKeycodesNameMask      (1<<0)     Xkb->names   keycodes
42       XkbGeometryNameMask      (1<<1)     Xkb->names   geometry
43       XkbSymbolsNameMask       (1<<2)     Xkb->names   symbols
44       XkbPhysSymbolsNameMask   (1<<3)     Xkb->names   phys_symbols
45       XkbTypesNameMask         (1<<4)     Xkb->names   type
46       XkbCompatNameMask        (1<<5)     Xkb->names   compat
47       XkbKeyTypeNamesMask      (1<<6)     Xkb->map     type[*].name
48       XkbKTLevelNamesMask      (1<<7)     Xkb->map     type[*].lvl_names[*]
49       XkbIndicatorNamesMask    (1<<8)     Xkb->names   indicators[*]
50       XkbKeyNamesMask          (1<<9)     Xkb->names   keys[*], num_keys
51       XkbKeyAliasesMask        (1<<10)    Xkb->names   key_aliases[*], num_key_aliases
52       XkbVirtualModNamesMask   (1<<11)    Xkb->names   vmods[*]
53       XkbGroupNamesMask        (1<<12)    Xkb->names   groups[*]
54       XkbRGNamesMask           (1<<13)    Xkb->names   radio_groups[*], num_rg
55       XkbComponentNamesMask    (0x3f)     Xkb->names   keycodes,
56                                                        geometry,
57                                                        symbols,
58                                                        physical symbols,
59                                                        types, and
60                                                        compatibility map
61       XkbAllNamesMask          (0x3fff)   Xkb->names   all name components
62
63       Do not free symbolic names structures directly  using  free  or  XFree.
64       Use XkbFreeNames instead.
65

DIAGNOSTICS

67       BadAlloc       Unable to allocate storage
68
69       BadMatch       A  compatible  version  of  Xkb was not available in the
70                      server or an argument has correct type and range, but is
71                      otherwise invalid
72
73       BadValue       An argument is out of range
74

SEE ALSO

76       XkbFreeNames(3)
77
78
79
80X Version 11                     libX11 1.7.2                 XkbAllocNames(3)
Impressum