1XkbAllocCompatMap(3) XKB FUNCTIONS XkbAllocCompatMap(3)
2
3
4
6 XkbAllocCompatMap - Allocate a new compatibility map if you do not al‐
7 ready have one available
8
10 Status XkbAllocCompatMap (XkbDescPtr xkb, unsigned int which, unsigned
11 int num_si);
12
14 xkb keyboard description in which to allocate compat map
15
16 which mask of compatibility map components to allocate
17
18 num_si number of symbol interpretations to allocate
19
21 xkb specifies the keyboard description for which compatibility maps are
22 to be allocated. The compatibility map is the compat field in this
23 structure.
24
25 which specifies the compatibility map components to be allocated (see
26 XkbGetCompatMap). which is an inclusive OR of the bits shown in Table
27 1.
28
29
30 Table 1 Compatibility Map Component Masks
31 ───────────────────────────────────────────────────────────────
32 Mask Value Affecting
33 ───────────────────────────────────────────────────────────────
34 XkbSymInterpMask (1<<0) Symbol interpretations
35 XkbGroupCompatMask (1<<1) Group maps
36 XkbAllCompatMask (0x3) All compatibility map components
37
38 num_si specifies the total number of entries to allocate in the symbol
39 interpretation vector (xkb.compat.sym_interpret).
40
41 XkbAllocCompatMap returns Success if successful, BadMatch if xkb is
42 NULL, or BadAlloc if errors are encountered when attempting to allocate
43 storage.
44
46 typedef struct {
47 KeySym sym; /* keysym of interest or NULL */
48 unsigned char flags; /* XkbSI_AutoRepeat, XkbSI_LockingKey */
49 unsigned char match; /* specifies how mods is interpreted */
50 unsigned char mods; /* modifier bits, correspond to eight real modifiers */
51 unsigned char virtual_mod; /* 1 modifier to add to key virtual mod map */
52 XkbAnyAction act; /* action to bind to symbol position on key */
53 } XkbSymInterpretRec,*XkbSymInterpretPtr;
54
55
57 BadAlloc Unable to allocate storage
58
59 BadMatch A compatible version of Xkb was not available in the
60 server or an argument has correct type and range, but is
61 otherwise invalid
62
64 XkbGetCompatMap(3)
65
67 Note that symbol interpretations in a compatibility map (the sym_inter‐
68 pret vector of XkbSymInterpretRec structures) are also allocated using
69 this same function. To ensure that there is sufficient space in the
70 symbol interpretation vector for entries to be added, use XkbAllocCom‐
71 patMap specifying which as XkbSymInterpretMask and the number of free
72 symbol interpretations needed in num_si.
73
74
75
76X Version 11 libX11 1.8.7 XkbAllocCompatMap(3)