aboutsummaryrefslogtreecommitdiff
path: root/libX11/man/xkb/XkbChangeNames.man
diff options
context:
space:
mode:
authormarha <marha@users.sourceforge.net>2009-06-28 22:07:26 +0000
committermarha <marha@users.sourceforge.net>2009-06-28 22:07:26 +0000
commit3562e78743202e43aec8727005182a2558117eca (patch)
tree8f9113a77d12470c5c851a2a8e4cb02e89df7d43 /libX11/man/xkb/XkbChangeNames.man
downloadvcxsrv-3562e78743202e43aec8727005182a2558117eca.tar.gz
vcxsrv-3562e78743202e43aec8727005182a2558117eca.tar.bz2
vcxsrv-3562e78743202e43aec8727005182a2558117eca.zip
Checked in the following released items:
xkeyboard-config-1.4.tar.gz ttf-bitstream-vera-1.10.tar.gz font-alias-1.0.1.tar.gz font-sun-misc-1.0.0.tar.gz font-sun-misc-1.0.0.tar.gz font-sony-misc-1.0.0.tar.gz font-schumacher-misc-1.0.0.tar.gz font-mutt-misc-1.0.0.tar.gz font-misc-misc-1.0.0.tar.gz font-misc-meltho-1.0.0.tar.gz font-micro-misc-1.0.0.tar.gz font-jis-misc-1.0.0.tar.gz font-isas-misc-1.0.0.tar.gz font-dec-misc-1.0.0.tar.gz font-daewoo-misc-1.0.0.tar.gz font-cursor-misc-1.0.0.tar.gz font-arabic-misc-1.0.0.tar.gz font-winitzki-cyrillic-1.0.0.tar.gz font-misc-cyrillic-1.0.0.tar.gz font-cronyx-cyrillic-1.0.0.tar.gz font-screen-cyrillic-1.0.1.tar.gz font-xfree86-type1-1.0.1.tar.gz font-adobe-utopia-type1-1.0.1.tar.gz font-ibm-type1-1.0.0.tar.gz font-bitstream-type1-1.0.0.tar.gz font-bitstream-speedo-1.0.0.tar.gz font-bh-ttf-1.0.0.tar.gz font-bh-type1-1.0.0.tar.gz font-bitstream-100dpi-1.0.0.tar.gz font-bh-lucidatypewriter-100dpi-1.0.0.tar.gz font-bh-100dpi-1.0.0.tar.gz font-adobe-utopia-100dpi-1.0.1.tar.gz font-adobe-100dpi-1.0.0.tar.gz font-util-1.0.1.tar.gz font-bitstream-75dpi-1.0.0.tar.gz font-bh-lucidatypewriter-75dpi-1.0.0.tar.gz font-adobe-utopia-75dpi-1.0.1.tar.gz font-bh-75dpi-1.0.0.tar.gz bdftopcf-1.0.1.tar.gz font-adobe-75dpi-1.0.0.tar.gz mkfontscale-1.0.6.tar.gz openssl-0.9.8k.tar.gz bigreqsproto-1.0.2.tar.gz xtrans-1.2.2.tar.gz resourceproto-1.0.2.tar.gz inputproto-1.4.4.tar.gz compositeproto-0.4.tar.gz damageproto-1.1.0.tar.gz zlib-1.2.3.tar.gz xkbcomp-1.0.5.tar.gz freetype-2.3.9.tar.gz pthreads-w32-2-8-0-release.tar.gz pixman-0.12.0.tar.gz kbproto-1.0.3.tar.gz evieext-1.0.2.tar.gz fixesproto-4.0.tar.gz recordproto-1.13.2.tar.gz randrproto-1.2.2.tar.gz scrnsaverproto-1.1.0.tar.gz renderproto-0.9.3.tar.gz xcmiscproto-1.1.2.tar.gz fontsproto-2.0.2.tar.gz xextproto-7.0.3.tar.gz xproto-7.0.14.tar.gz libXdmcp-1.0.2.tar.gz libxkbfile-1.0.5.tar.gz libfontenc-1.0.4.tar.gz libXfont-1.3.4.tar.gz libX11-1.1.5.tar.gz libXau-1.0.4.tar.gz libxcb-1.1.tar.gz xorg-server-1.5.3.tar.gz
Diffstat (limited to 'libX11/man/xkb/XkbChangeNames.man')
-rw-r--r--libX11/man/xkb/XkbChangeNames.man200
1 files changed, 200 insertions, 0 deletions
diff --git a/libX11/man/xkb/XkbChangeNames.man b/libX11/man/xkb/XkbChangeNames.man
new file mode 100644
index 000000000..75f815d6d
--- /dev/null
+++ b/libX11/man/xkb/XkbChangeNames.man
@@ -0,0 +1,200 @@
+'\" t
+.\" Copyright (c) 1999 - Sun Microsystems, Inc.
+.\" All rights reserved.
+.\"
+.\" Permission is hereby granted, free of charge, to any person obtaining a
+.\" copy of this software and associated documentation files (the
+.\" "Software"), to deal in the Software without restriction, including
+.\" without limitation the rights to use, copy, modify, merge, publish,
+.\" distribute, and/or sell copies of the Software, and to permit persons
+.\" to whom the Software is furnished to do so, provided that the above
+.\" copyright notice(s) and this permission notice appear in all copies of
+.\" the Software and that both the above copyright notice(s) and this
+.\" permission notice appear in supporting documentation.
+.\"
+.\" THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
+.\" OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+.\" MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT
+.\" OF THIRD PARTY RIGHTS. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR
+.\" HOLDERS INCLUDED IN THIS NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL
+.\" INDIRECT OR CONSEQUENTIAL DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING
+.\" FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
+.\" NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
+.\" WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+.\"
+.\" Except as contained in this notice, the name of a copyright holder
+.\" shall not be used in advertising or otherwise to promote the sale, use
+.\" or other dealings in this Software without prior written authorization
+.\" of the copyright holder.
+.\"
+.TH XkbChangeNames __libmansuffix__ __xorgversion__ "XKB FUNCTIONS"
+.SH NAME
+XkbChangeNames \- _summary-line_
+.SH SYNOPSIS
+.B Bool XkbChangeNames
+(
+.I dpy,
+.I which,
+.I Xkb
+)
+.br
+ Display * \fIdpy\fP\^;
+.br
+ unsigned int \fIwhich\fP\^;
+.br
+ XkbDescPtr \fIXkb\fP\^;
+.if n .ti +5n
+.if t .ti +.5i
+.SH ARGUMENTS
+.TP
+.I \- dpy
+connection to the X server
+.TP
+.I \- which
+mask of names or map components to be updated
+.TP
+.I \- Xkb
+keyboard description to be updated
+.SH DESCRIPTION
+.LP
+.I XkbChangeNames
+provides a more flexible method for changing symbolic names than
+.I XkbSetNames
+and requires the use of an XkbNameChangesRec structure.
+
+.I XkbChangeNames
+copies any names specified by
+.I changes
+from the keyboard description,
+.I xkb,
+to the X server specified by
+.I dpy. XkbChangeNames
+aborts and returns False if any illegal type names or type shift level names are
+specified by changes.
+
+To change the symbolic names in the server, first modify a local copy of the
+keyboard description and then use either
+.I XkbSetNames,
+or, to save network traffic, use a XkbNameChangesRec structure and call
+.I XkbChangeNames
+to download the changes to the server.
+.I XkbSetNames
+and
+.I XkbChangeNames
+can generate BadAlloc, BadAtom, BadLength, BadMatch, and BadImplementation
+errors.
+.SH STRUCTURES
+.LP
+The XkbNameChangesRec allows applications to identify small modifications to the
+symbolic names and
+effectively reduces the amount of traffic sent to the server:
+.nf
+
+ typedef struct _XkbNameChanges {
+ unsigned int changed; /\(** name components that have changed
+*/
+ unsigned char first_type; /\(** first key type with a new name */
+ unsigned char num_types; /\(** number of types with new names */
+ unsigned char first_lvl; /\(** first key type with new level
+names */
+ unsigned char num_lvls; /\(** number of key types with new level
+names */
+ unsigned char num_aliases; /\(** if key aliases changed, total
+number of key aliases */
+ unsigned char num_rg; /\(** if radio groups changed, total
+number of radio groups */
+ unsigned char first_key; /\(** first key with a new name */
+ unsigned char num_keys; /\(** number of keys with new names */
+ unsigned short changed_vmods; /\(** mask of virtual modifiers for
+which names have changed */
+ unsigned long changed_indicators; /\(** mask of indicators for which names
+were changed */
+ unsigned char changed_groups; /\(** mask of groups for which names
+were changed */
+ } XkbNameChangesRec, *XkbNameChangesPtr
+
+.fi
+The
+.I changed
+field specifies the name components that have changed and is the bitwise
+inclusive OR of the valid names
+mask bits defined in Table 1. The rest of the fields in the structure specify
+the ranges that have changed
+for the various kinds of symbolic names, as shown in Table 2.
+
+Xkb provides several functions that work with symbolic names. Each of these
+functions uses a mask to
+specify individual fields of the structures described above. These masks and
+their relationships to the
+fields in a keyboard description are shown in Table 1.
+
+.TS
+c s s s
+l l l l.
+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 phys_symbols
+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[*].lvl_names[*]
+XkbIndicatorNamesMask (1<<8) Xkb->names indicators[*]
+XkbKeyNamesMask (1<<9) Xkb->names keys[*], num_keys
+XkbKeyAliasesMask (1<<10) Xkb->names key_aliases[*], num_key_aliases
+XkbVirtualModNamesMask (1<<11) Xkb->names vmods[*]
+XkbGroupNamesMask (1<<12) Xkb->names groups[*]
+XkbRGNamesMask (1<<13) Xkb->names radio_groups[*], num_rg
+XkbComponentNamesMask (0x3f) Xkb->names keycodes,
+ geometry,
+ symbols,
+ physical symbols,
+ types, and
+ compatibility map
+XkbAllNamesMask (0x3fff) Xkb->names all name components
+.TE
+
+.TS
+c s s s
+l l l l.
+Table 2 XkbNameChanges Fields
+_
+Mask Fields Component Field
+_
+XkbKeyTypeNamesMask first_type, Xkb->map type[*].name
+ num_types
+XkbKTLevelNamesMask first_lvl, Xkb->map type[*].lvl_names[*]
+ num_lvls
+XkbKeyAliasesMask num_aliases Xkb->names key_aliases[*]
+XkbRGNamesMask num_rg Xkb->names radio_groups[*]
+XkbKeyNamesMask first_key, Xkb->names keys[*]
+ num_keys
+XkbVirtualModNamesMask changed_vmods Xkb->names vmods[*]
+XkbIndicatorNamesMask changed_indicators Xkb->names indicators[*]
+XkbGroupNamesMask changed_groups Xkb->names groups[*]
+.TE
+.SH DIAGNOSTICS
+.TP 15
+.B BadAlloc
+Unable to allocate storage
+.TP 15
+.B BadAtom
+A name is neither a valid Atom or None
+.TP 15
+.B BadImplementation
+Invalid reply from server
+.TP 15
+.B BadLength
+The length of a request is shorter or longer than that required to minimally
+contain the arguments
+.TP 15
+.B BadMatch
+A compatible version of Xkb was not available in the server or an argument has
+correct type and range, but is otherwise invalid
+.SH "SEE ALSO"
+.BR XkbSetNames (__libmansuffix__)