NAME
XkbFreeNames - Free symbolic names structures SYNOPSIS void XkbFreeNames (XkbDescPtr xkb, unsigned int which, Bool freemap); ARGUMENTS
- xkb keyboard description for which names are to be freed
- which mask of names components to be freed
- freemap 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. 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 physsymbols
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[*].lvlnames[*]
XkbIndicatorNamesMask (1<<8) Xkb->names indicators[*]
XkbKeyNamesMask (1<<9) Xkb->names keys[*], numkeys
XkbKeyAliasesMask (1<<10) Xkb->names keyaliases[*], numkeyaliases
XkbVirtualModNamesMask (1<<11) Xkb->names vmods[*]
XkbGroupNamesMask (1<<12) Xkb->names groups[*]
XkbRGNamesMask (1<<13) Xkb->names radiogroups[*], numrg
XkbComponentNamesMask (0x3f) Xkb->names keycodes, geometry, symbols, physical symbols, types, and compatibility map
XkbAllNamesMask (0x3fff) Xkb->names all name components X Version 11 libX11 1.6.5 XkbFreeNames(3)