XkbResizeKeyType(3) XKB FUNCTIONS XkbResizeKeyType(3)
NAME
XkbResizeKeyType - Change the number of levels in a key type
SYNOPSIS
Status XkbResizeKeyType ( xkb, type_ndx, map_count, want_preserve, new_num_lvls )
XkbDescPtr xkb;
int type_ndx;
int map_count;
Bool want_preserve;
int new_num_lvls;
ARGUMENTS
- xkb keyboard description containing client map to update
- type_ndx
index in xkb->map->types of type to change
- map_count
total # of map entries needed for the type
- want_preserve
True => list of preserved modifiers is necessary
- new_num_lvls
new max # of levels for type
DESCRIPTION
XkbResizeKeyType changes the type specified by xkb->map->types[type_ndx], and reallocates
the symbols and actions bound to all keys that use the type, if necessary. XkbResizeKey-
Type updates only the local copy of the types in xkb; to update the server's copy for the
physical device, use XkbSetMap or XkbChangeMap after calling XkbResizeKeyType.
The map_count parameter specifies the total number of map entries needed for the type, and
can be zero or greater. If map_count is zero, XkbResizeKeyType frees the existing map and
preserve entries for the type if they exist and sets them to NULL.
The want_preserve parameter specifies whether a preserve list for the key should be cre-
ated. If want_preserve is True, the preserve list with map_count entries is allocated or
reallocated if it already exists. Otherwise, if want_preserve is False, the preserve field
is freed if necessary and set to NULL.
The new_num_lvls parameter specifies the new maximum number of shift levels for the type
and is used to calculate and resize the symbols and actions bound to all keys that use the
type.
If type_ndx does not specify a legal type, new_num_lvls is less than 1, or the map_count
is less than zero, XkbResizeKeyType returns BadValue. If XkbResizeKeyType encounters any
problems with allocation, it returns BadAlloc. Otherwise, it returns Success.
RETURN VALUES
Success The XkbResizeKeyType function returns Success if type_ndx specifies a legal
type, new_num_lvls is greater than zero and map_count is positive.
DIAGNOSTICS
BadAlloc Unable to allocate storage
BadValue An argument is out of range
SEE ALSO
XkbChangeMap(3), XkbSetMap(3)
X Version 11 libX11 1.1.5 XkbResizeKeyType(3)
Generated by $Id: phpMan.php,v 4.49 2006/02/26 13:18:18 chedong Exp $ Author: Che Dong
On Apache
Under GNU General Public License
2012-05-25 14:07 @38.107.179.240 Crawled by CCBot/1.0 (+http://www.commoncrawl.org/bot.html)