xref: /aoo41x/main/vcl/inc/unx/i18n_keysym.hxx (revision 161f4cd1)
1 /**************************************************************
2  *
3  * Licensed to the Apache Software Foundation (ASF) under one
4  * or more contributor license agreements.  See the NOTICE file
5  * distributed with this work for additional information
6  * regarding copyright ownership.  The ASF licenses this file
7  * to you under the Apache License, Version 2.0 (the
8  * "License"); you may not use this file except in compliance
9  * with the License.  You may obtain a copy of the License at
10  *
11  *   http://www.apache.org/licenses/LICENSE-2.0
12  *
13  * Unless required by applicable law or agreed to in writing,
14  * software distributed under the License is distributed on an
15  * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16  * KIND, either express or implied.  See the License for the
17  * specific language governing permissions and limitations
18  * under the License.
19  *
20  *************************************************************/
21 
22 
23 
24 #ifndef _SAL_I18N_KEYSYM_HXX
25 #define _SAL_I18N_KEYSYM_HXX
26 
27 /*
28  convert a keysym as defined in /usr/{X11R6|openwin}/include/X11/keysymdef.h
29  to unicode
30 
31  supported charsets: (byte1 and byte2 are always 0x0)
32 
33  	Latin-1 	Byte 3 = 0x00
34  	Latin-2		Byte 3 = 0x01
35  	Latin-3		Byte 3 = 0x02
36  	Latin-4		Byte 3 = 0x03
37  	Kana		Byte 3 = 0x04
38  	Arabic		Byte 3 = 0x05
39 	Cyrillic	Byte 3 = 0x06
40  	Greek		Byte 3 = 0x07
41  	Technical	Byte 3 = 0x08
42  	Special		Byte 3 = 0x09
43  	Publishing	Byte 3 = 0x0a = 10
44  	APL			Byte 3 = 0x0b = 11
45  	Hebrew		Byte 3 = 0x0c = 12
46  	Thai		Byte 3 = 0x0d = 13
47  	Korean		Byte 3 = 0x0e = 14
48  	Latin-9 	Byte 3 = 0x13 = 19
49  	Currency	Byte 3 = 0x20 = 32
50  	Keyboard 	Byte 3 = 0xff = 255
51 
52  missing charsets:
53 
54  	Latin-8  	Byte 3 = 0x12 = 18
55  	Armenian 	Byte 3 = 0x14 = 20
56  	Georgian 	Byte 3 = 0x15 = 21
57  	Azeri 		Byte 3 = 0x16 = 22
58  	Vietnamese 	Byte 3 = 0x1e = 30
59 
60  of course not all keysyms can be mapped to a unicode code point
61 */
62 
63 sal_Unicode KeysymToUnicode (KeySym nKeySym);
64 
65 #endif /* _SAL_I18N_KEYSYM_HXX */
66 
67 
68