1 .\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1994, 1996 X Consortium
3 .\" Permission is hereby granted, free of charge, to any person obtaining
4 .\" a copy of this software and associated documentation files (the
5 .\" "Software"), to deal in the Software without restriction, including
6 .\" without limitation the rights to use, copy, modify, merge, publish,
7 .\" distribute, sublicense, and/or sell copies of the Software, and to
8 .\" permit persons to whom the Software is furnished to do so, subject to
9 .\" the following conditions:
11 .\" The above copyright notice and this permission notice shall be included
12 .\" in all copies or substantial portions of the Software.
14 .\" THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
15 .\" OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
16 .\" MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
17 .\" IN NO EVENT SHALL THE X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR
18 .\" OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
19 .\" ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
20 .\" OTHER DEALINGS IN THE SOFTWARE.
22 .\" Except as contained in this notice, the name of the X Consortium shall
23 .\" not be used in advertising or otherwise to promote the sale, use or
24 .\" other dealings in this Software without prior written authorization
25 .\" from the X Consortium.
27 .\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991 by
28 .\" Digital Equipment Corporation
30 .\" Portions Copyright \(co 1990, 1991 by
33 .\" Permission to use, copy, modify and distribute this documentation for
34 .\" any purpose and without fee is hereby granted, provided that the above
35 .\" copyright notice appears in all copies and that both that copyright notice
36 .\" and this permission notice appear in all copies, and that the names of
37 .\" Digital and Tektronix not be used in in advertising or publicity pertaining
38 .\" to this documentation without specific, written prior permission.
39 .\" Digital and Tektronix makes no representations about the suitability
40 .\" of this documentation for any purpose.
41 .\" It is provided ``as is'' without express or implied warranty.
44 .ds xT X Toolkit Intrinsics \- C Language Interface
45 .ds xW Athena X Widgets \- C Language X Toolkit Interface
46 .ds xL Xlib \- C Language X Interface
47 .ds xC Inter-Client Communication Conventions Manual
54 .\".if \\n(VS>=40 .vs \\n(VSu
55 .\".if \\n(VS<=39 .vs \\n(VSp
78 .de IN \" send an index entry to the stderr
85 .\" choose appropriate monospace font
86 .\" the imagen conditional, 480,
87 .\" may be changed to L if LB is too
88 .\" heavy for your eyes...
90 .ie "\\*(.T"480" .ft L
91 .el .ie "\\*(.T"300" .ft L
92 .el .ie "\\*(.T"202" .ft PO
93 .el .ie "\\*(.T"aps" .ft CW
96 .ie \\n(VS>40 .vs \\n(VSu
104 .ie t \\$1\fB\^\\$2\^\fR\\$3
105 .el \\$1\fI\^\\$2\^\fP\\$3
108 .ie t \fB\^\\$1\^\fR\\$2
109 .el \fI\^\\$1\^\fP\\$2
112 .ie t <\fB\\$1\fR>\\$2
118 .if \\n(.$>$1 .if !'\\$2'C' .ds NO \\$2
119 .if \\n(.$ .if !'\\$1'C' .ds NO \\$1
133 . \" Note End -- doug kraft 3/85
142 .TH XLookupKeysym __libmansuffix__ __xorgversion__ "XLIB FUNCTIONS"
144 XLookupKeysym, XRefreshKeyboardMapping, XLookupString, XRebindKeysym \- handle keyboard input events in Latin-1
147 KeySym XLookupKeysym(\^XKeyEvent *\fIkey_event\fP\^, int \fIindex\fP\^);
149 int XRefreshKeyboardMapping(\^XMappingEvent *\fIevent_map\fP\^);
151 int XLookupString(\^XKeyEvent *\fIevent_struct\fP\^, char
152 *\fIbuffer_return\fP\^, int \fIbytes_buffer\fP\^, KeySym
153 *\fIkeysym_return\fP\^, XComposeStatus *\fIstatus_in_out\fP\^);
155 int XRebindKeysym(\^Display *\fIdisplay\fP\^, KeySym \fIkeysym\fP\^, KeySym
156 \fIlist\fP\^[\^]\^, int \fImod_count\fP\^, unsigned char *\fIstring\fP\^, int
159 .IP \fIbuffer_return\fP 1i
160 Returns the translated characters.
161 .IP \fIbytes_buffer\fP 1i
162 Specifies the length of the buffer.
163 No more than bytes_buffer of translation are returned.
164 .IP \fInum_bytes\fP 1i
165 Specifies the number of bytes in the string argument.
167 Specifies the connection to the X server.
168 .IP \fIevent_map\fP 1i
169 Specifies the mapping event that is to be used.
170 .IP \fIevent_struct\fP 1i
171 Specifies the key event structure to be used.
175 .ZN XKeyReleasedEvent .
177 Specifies the index into the KeySyms list for the event's KeyCode.
178 .IP \fIkey_event\fP 1i
185 Specifies the KeySym that is to be \*(Fn.
186 .IP \fIkeysym_return\fP 1i
187 Returns the KeySym computed from the event if this argument is not NULL.
189 Specifies the KeySyms to be used as modifiers.
190 .IP \fImod_count\fP 1i
191 Specifies the number of modifiers in the modifier list.
192 .IP \fIstatus_in_out\fP 1i
193 Specifies or returns the
197 Specifies the string that is copied and will be returned by
202 function uses a given keyboard event and the index you specified to return
203 the KeySym from the list that corresponds to the KeyCode member in the
206 .ZN XKeyReleasedEvent
208 If no KeySym is defined for the KeyCode of the event,
214 .ZN XRefreshKeyboardMapping
215 function refreshes the stored modifier and keymap information.
216 You usually call this function when a
218 event with a request member of
223 The result is to update Xlib's knowledge of the keyboard.
227 function translates a key event to a KeySym and a string.
228 The KeySym is obtained by using the standard interpretation of the
231 group, and numlock modifiers as defined in the X Protocol specification.
232 If the KeySym has been rebound (see
234 the bound string will be stored in the buffer.
235 Otherwise, the KeySym is mapped, if possible, to an ISO Latin-1 character
236 or (if the Control modifier is on) to an ASCII control character,
237 and that character is stored in the buffer.
239 returns the number of characters that are stored in the buffer.
241 If present (non-NULL),
244 structure records the state,
245 which is private to Xlib,
246 that needs preservation across calls to
248 to implement compose processing.
251 structures is implementation-dependent;
252 a portable program must pass NULL for this argument.
256 function can be used to rebind the meaning of a KeySym for the client.
257 It does not redefine any key in the X server but merely
258 provides an easy way for long strings to be attached to keys.
260 returns this string when the appropriate set of
261 modifier keys are pressed and when the KeySym would have been used for
263 No text conversions are performed;
264 the client is responsible for supplying appropriately encoded strings.
265 Note that you can rebind a KeySym that may not exist.
267 XButtonEvent(__libmansuffix__),
268 XMapEvent(__libmansuffix__),
269 XStringToKeysym(__libmansuffix__),
270 XmbLookupString(__libmansuffix__),
271 XwcLookupString(__libmansuffix__),
272 Xutf8LookupString(__libmansuffix__),
273 Compose(__filemansuffix__)