Manual Page Result
0
Command: XkbFreeNames | Section: 3 | Source: OpenBSD | File: XkbFreeNames.3
XkbFreeNames(3) XKB FUNCTIONS XkbFreeNames(3)
NAME
XkbFreeNames - Free symbolic names structures
SYNOPSIS
void XkbFreeNames (XkbDescPtr xkb, unsigned int which, Bool free_map);
ARGUMENTS
xkb keyboard description for which names are to be freed
which mask of names components to be freed
free_map
True => XkbNamesRec structure itself should be freed
DESCRIPTION
Do not free symbolic names structures directly using free or XFree.
Use XkbFreeNames instead.
The which parameter is the bitwise inclusive OR of the valid names mask
bits defined in Table 1.
Xkb provides several functions that work with symbolic names. Each of
these functions uses a mask to specify individual fields of the struc-
tures described above. These masks and their relationships to the
fields in a keyboard description are shown in Table 1.
c s s s l l l l. Table 1 Symbolic Names Masks _ Mask
Bit Value Keyboard Field Component _ XkbKey-
codesNameMask (1<<0) Xkb->names keycodes XkbGeometry-
NameMask (1<<1) Xkb->names geometry XkbSymbol-
sNameMask (1<<2) Xkb->names symbols XkbPhysSymbol-
sNameMask (1<<3) Xkb->names phys_symbols XkbTypes-
NameMask (1<<4) Xkb->names type XkbCompat-
NameMask (1<<5) Xkb->names compat XkbKeyTypeNames-
Mask (1<<6) Xkb->map type[*].name XkbKTLevelNames-
Mask (1<<7) Xkb->map type[*].lvl_names[*] XkbIndicatorNames-
Mask (1<<8) Xkb->names indicators[*] XkbKeyNames-
Mask (1<<9) Xkb->names keys[*], num_keys XkbKeyAliases-
Mask (1<<10) Xkb->names key_aliases[*], num_key_aliases XkbVir-
tualModNamesMask (1<<11) Xkb->names vmods[*] XkbGroupNames-
Mask (1<<12) Xkb->names groups[*] XkbRGNames-
Mask (1<<13) Xkb->names radio_groups[*], num_rg XkbComponent-
NamesMask (0x3f) Xkb->names keycodes, geome-
try, symbols, physical symbols,
types, and compatibility map XkbAllNames-
Mask (0x3fff) Xkb->names all name components
X Version 11 libX11 1.8.10 XkbFreeNames(3)