|
1 /* |
|
2 * Copyright (c) 2002-2004 Nokia Corporation and/or its subsidiary(-ies). |
|
3 * All rights reserved. |
|
4 * This component and the accompanying materials are made available |
|
5 * under the terms of "Eclipse Public License v1.0"" |
|
6 * which accompanies this distribution, and is available |
|
7 * at the URL "http://www.eclipse.org/legal/epl-v10.html". |
|
8 * |
|
9 * Initial Contributors: |
|
10 * Nokia Corporation - initial contribution. |
|
11 * |
|
12 * Contributors: |
|
13 * |
|
14 * Description: Keymapping data implementation for |
|
15 * |
|
16 */ |
|
17 |
|
18 |
|
19 |
|
20 |
|
21 |
|
22 |
|
23 |
|
24 |
|
25 |
|
26 |
|
27 |
|
28 |
|
29 #include <PtiKeyMapData.h> |
|
30 |
|
31 #include <languages.hrh> |
|
32 |
|
33 #include "PtiKeymappings_ITUT_50.h" |
|
34 |
|
35 // |
|
36 // Multitap keymap data table |
|
37 // |
|
38 const TUint16 MultitapData_table_Farsi[] = |
|
39 { |
|
40 0x2e,0x61f,0x3a,0x60c,0x21,0x31, |
|
41 0x628,0x67e,0x62a,0x629,0x62b,0x32, |
|
42 0x627,0x623,0x625,0x622,0x624,0x626,0x621,0x33, |
|
43 0x633,0x634,0x635,0x636,0x34, |
|
44 0x62f,0x630,0x631,0x632,0x698,0x35, |
|
45 0x62c,0x686,0x62d,0x62e,0x36, |
|
46 0x646,0x648,0x647,0x6cc,0x37, |
|
47 0x641,0x642,0x6a9,0x6af,0x644,0x645,0x38, |
|
48 0x637,0x638,0x639,0x63a,0x39, |
|
49 0x20,0x30,0x21b3, |
|
50 0x2e,0x61f,0x3a,0x60c,0x21,0x31, |
|
51 0x628,0x67e,0x62a,0x629,0x62b,0x32, |
|
52 0x627,0x623,0x625,0x622,0x624,0x626,0x621,0x33, |
|
53 0x633,0x634,0x635,0x636,0x34, |
|
54 0x62f,0x630,0x631,0x632,0x698,0x35, |
|
55 0x62c,0x686,0x62d,0x62e,0x36, |
|
56 0x646,0x648,0x647,0x6cc,0x37, |
|
57 0x641,0x642,0x6a9,0x6af,0x644,0x645,0x38, |
|
58 0x637,0x638,0x639,0x63a,0x39, |
|
59 0x20,0x30,0x21b3, |
|
60 }; |
|
61 |
|
62 const TInt KMultitapDataSize_Farsi = 112; |
|
63 |
|
64 |
|
65 const TPtiKeyBinding MultitapKeyBindings_table_Farsi[] = |
|
66 { |
|
67 {EPtiKey1, EPtiCaseLower, 0, 6}, |
|
68 {EPtiKey2, EPtiCaseLower, 6, 6}, |
|
69 {EPtiKey3, EPtiCaseLower, 12, 8}, |
|
70 {EPtiKey4, EPtiCaseLower, 20, 5}, |
|
71 {EPtiKey5, EPtiCaseLower, 25, 6}, |
|
72 {EPtiKey6, EPtiCaseLower, 31, 5}, |
|
73 {EPtiKey7, EPtiCaseLower, 36, 5}, |
|
74 {EPtiKey8, EPtiCaseLower, 41, 7}, |
|
75 {EPtiKey9, EPtiCaseLower, 48, 5}, |
|
76 {EPtiKeyStar, EPtiCaseLower, 53, 0}, |
|
77 {EPtiKey0, EPtiCaseLower, 53, 3}, |
|
78 {EPtiKeyHash, EPtiCaseLower, 56, 0}, |
|
79 {EPtiKey1, EPtiCaseUpper, 56, 6}, |
|
80 {EPtiKey2, EPtiCaseUpper, 62, 6}, |
|
81 {EPtiKey3, EPtiCaseUpper, 68, 8}, |
|
82 {EPtiKey4, EPtiCaseUpper, 76, 5}, |
|
83 {EPtiKey5, EPtiCaseUpper, 81, 6}, |
|
84 {EPtiKey6, EPtiCaseUpper, 87, 5}, |
|
85 {EPtiKey7, EPtiCaseUpper, 92, 5}, |
|
86 {EPtiKey8, EPtiCaseUpper, 97, 7}, |
|
87 {EPtiKey9, EPtiCaseUpper, 104, 5}, |
|
88 {EPtiKeyStar, EPtiCaseUpper, 109, 0}, |
|
89 {EPtiKey0, EPtiCaseUpper, 109, 3}, |
|
90 {EPtiKeyHash, EPtiCaseUpper, 112, 0}, |
|
91 }; |
|
92 |
|
93 const TInt KMaxMultitapIndex_Farsi = 24; |
|
94 |
|
95 // |
|
96 // StandardQwerty keymap data table |
|
97 // |
|
98 const TUint16 StandardQwertyData_table_Farsi[] = |
|
99 { |
|
100 0x6f1, |
|
101 0x6f2, |
|
102 0x6f3, |
|
103 0x6f4, |
|
104 0x6f5, |
|
105 0x6f6, |
|
106 0x6f7, |
|
107 0x6f8, |
|
108 0x6f9, |
|
109 0x6f0, |
|
110 0x636, |
|
111 0x635, |
|
112 0x62b, |
|
113 0x642, |
|
114 0x641, |
|
115 0x63a, |
|
116 0x639, |
|
117 0x647, |
|
118 0x62e, |
|
119 0x62d, |
|
120 0x62c, |
|
121 0x686, |
|
122 0x634, |
|
123 0x633, |
|
124 0x6cc, |
|
125 0x628, |
|
126 0x644, |
|
127 0x627, |
|
128 0x62a, |
|
129 0x646, |
|
130 0x645, |
|
131 0x6a9, |
|
132 0x6af, |
|
133 0x40, |
|
134 0x638, |
|
135 0x637, |
|
136 0x632, |
|
137 0x631, |
|
138 0x630, |
|
139 0x62f, |
|
140 0x67e, |
|
141 0x648, |
|
142 0x2e, |
|
143 0x2f, |
|
144 0x66c, |
|
145 0x66b, |
|
146 0xfdfc, |
|
147 0x66a, |
|
148 0x3d, |
|
149 0x21, |
|
150 0x2a, |
|
151 0x2d, |
|
152 0x2b, |
|
153 0x640, |
|
154 0x636, |
|
155 0x635, |
|
156 0x62b, |
|
157 0x642, |
|
158 0x641, |
|
159 0x63a, |
|
160 0x28, |
|
161 0x28, |
|
162 0x7d, |
|
163 0x7b, |
|
164 0x5c, |
|
165 0x7c, |
|
166 0x624, |
|
167 0x626, |
|
168 0x64a, |
|
169 0x625, |
|
170 0x623, |
|
171 0x622, |
|
172 0x629, |
|
173 0xbb, |
|
174 0xab, |
|
175 0x3a, |
|
176 0x61b, |
|
177 0x60c, |
|
178 0x643, |
|
179 0x637, |
|
180 0x698, |
|
181 0x631, |
|
182 0x200c, |
|
183 0x200d, |
|
184 0x621, |
|
185 0x3e, |
|
186 0x3c, |
|
187 0x61f, |
|
188 }; |
|
189 |
|
190 const TInt KStandardQwertyDataSize_Farsi = 88; |
|
191 |
|
192 |
|
193 const TPtiKeyBinding StandardQwertyKeyBindings_table_Farsi[] = |
|
194 { |
|
195 {EPtiKeyQwerty1, EPtiCaseLower, 0, 1}, |
|
196 {EPtiKeyQwerty2, EPtiCaseLower, 1, 1}, |
|
197 {EPtiKeyQwerty3, EPtiCaseLower, 2, 1}, |
|
198 {EPtiKeyQwerty4, EPtiCaseLower, 3, 1}, |
|
199 {EPtiKeyQwerty5, EPtiCaseLower, 4, 1}, |
|
200 {EPtiKeyQwerty6, EPtiCaseLower, 5, 1}, |
|
201 {EPtiKeyQwerty7, EPtiCaseLower, 6, 1}, |
|
202 {EPtiKeyQwerty8, EPtiCaseLower, 7, 1}, |
|
203 {EPtiKeyQwerty9, EPtiCaseLower, 8, 1}, |
|
204 {EPtiKeyQwerty0, EPtiCaseLower, 9, 1}, |
|
205 {EPtiKeyQwertyPlus, EPtiCaseLower, 10, 1}, |
|
206 {EPtiKeyQwertyQ, EPtiCaseLower, 11, 1}, |
|
207 {EPtiKeyQwertyW, EPtiCaseLower, 12, 1}, |
|
208 {EPtiKeyQwertyE, EPtiCaseLower, 13, 1}, |
|
209 {EPtiKeyQwertyR, EPtiCaseLower, 14, 1}, |
|
210 {EPtiKeyQwertyT, EPtiCaseLower, 15, 1}, |
|
211 {EPtiKeyQwertyY, EPtiCaseLower, 16, 1}, |
|
212 {EPtiKeyQwertyU, EPtiCaseLower, 17, 1}, |
|
213 {EPtiKeyQwertyI, EPtiCaseLower, 18, 1}, |
|
214 {EPtiKeyQwertyO, EPtiCaseLower, 19, 1}, |
|
215 {EPtiKeyQwertyP, EPtiCaseLower, 20, 1}, |
|
216 {EPtiKeyQwertyMinus, EPtiCaseLower, 21, 1}, |
|
217 {EPtiKeyQwertyHash, EPtiCaseLower, 22, 1}, |
|
218 {EPtiKeyQwertyA, EPtiCaseLower, 23, 1}, |
|
219 {EPtiKeyQwertyS, EPtiCaseLower, 24, 1}, |
|
220 {EPtiKeyQwertyD, EPtiCaseLower, 25, 1}, |
|
221 {EPtiKeyQwertyF, EPtiCaseLower, 26, 1}, |
|
222 {EPtiKeyQwertyG, EPtiCaseLower, 27, 1}, |
|
223 {EPtiKeyQwertyH, EPtiCaseLower, 28, 1}, |
|
224 {EPtiKeyQwertyJ, EPtiCaseLower, 29, 1}, |
|
225 {EPtiKeyQwertyK, EPtiCaseLower, 30, 1}, |
|
226 {EPtiKeyQwertyL, EPtiCaseLower, 31, 1}, |
|
227 {EPtiKeyQwertySemicolon, EPtiCaseLower, 32, 1}, |
|
228 {EPtiKeyQwertyApostrophe, EPtiCaseLower, 33, 1}, |
|
229 {EPtiKeyQwertyZ, EPtiCaseLower, 34, 1}, |
|
230 {EPtiKeyQwertyX, EPtiCaseLower, 35, 1}, |
|
231 {EPtiKeyQwertyC, EPtiCaseLower, 36, 1}, |
|
232 {EPtiKeyQwertyV, EPtiCaseLower, 37, 1}, |
|
233 {EPtiKeyQwertyB, EPtiCaseLower, 38, 1}, |
|
234 {EPtiKeyQwertyN, EPtiCaseLower, 39, 1}, |
|
235 {EPtiKeyQwertyM, EPtiCaseLower, 40, 1}, |
|
236 {EPtiKeyQwertyComma, EPtiCaseLower, 41, 1}, |
|
237 {EPtiKeyQwertyFullstop, EPtiCaseLower, 42, 1}, |
|
238 {EPtiKeyQwertySlash, EPtiCaseLower, 43, 1}, |
|
239 {EPtiKeyQwerty1, EPtiCaseUpper, 44, 1}, |
|
240 {EPtiKeyQwerty2, EPtiCaseUpper, 45, 1}, |
|
241 {EPtiKeyQwerty3, EPtiCaseUpper, 46, 1}, |
|
242 {EPtiKeyQwerty4, EPtiCaseUpper, 47, 1}, |
|
243 {EPtiKeyQwerty5, EPtiCaseUpper, 48, 1}, |
|
244 {EPtiKeyQwerty6, EPtiCaseUpper, 49, 1}, |
|
245 {EPtiKeyQwerty7, EPtiCaseUpper, 50, 1}, |
|
246 {EPtiKeyQwerty8, EPtiCaseUpper, 51, 1}, |
|
247 {EPtiKeyQwerty9, EPtiCaseUpper, 52, 1}, |
|
248 {EPtiKeyQwerty0, EPtiCaseUpper, 53, 1}, |
|
249 {EPtiKeyQwertyPlus, EPtiCaseUpper, 54, 1}, |
|
250 {EPtiKeyQwertyQ, EPtiCaseUpper, 55, 1}, |
|
251 {EPtiKeyQwertyW, EPtiCaseUpper, 56, 1}, |
|
252 {EPtiKeyQwertyE, EPtiCaseUpper, 57, 1}, |
|
253 {EPtiKeyQwertyR, EPtiCaseUpper, 58, 1}, |
|
254 {EPtiKeyQwertyT, EPtiCaseUpper, 59, 1}, |
|
255 {EPtiKeyQwertyY, EPtiCaseUpper, 60, 1}, |
|
256 {EPtiKeyQwertyU, EPtiCaseUpper, 61, 1}, |
|
257 {EPtiKeyQwertyI, EPtiCaseUpper, 62, 1}, |
|
258 {EPtiKeyQwertyO, EPtiCaseUpper, 63, 1}, |
|
259 {EPtiKeyQwertyP, EPtiCaseUpper, 64, 1}, |
|
260 {EPtiKeyQwertyMinus, EPtiCaseUpper, 65, 1}, |
|
261 {EPtiKeyQwertyHash, EPtiCaseUpper, 66, 1}, |
|
262 {EPtiKeyQwertyA, EPtiCaseUpper, 67, 1}, |
|
263 {EPtiKeyQwertyS, EPtiCaseUpper, 68, 1}, |
|
264 {EPtiKeyQwertyD, EPtiCaseUpper, 69, 1}, |
|
265 {EPtiKeyQwertyF, EPtiCaseUpper, 70, 1}, |
|
266 {EPtiKeyQwertyG, EPtiCaseUpper, 71, 1}, |
|
267 {EPtiKeyQwertyH, EPtiCaseUpper, 72, 1}, |
|
268 {EPtiKeyQwertyJ, EPtiCaseUpper, 73, 1}, |
|
269 {EPtiKeyQwertyK, EPtiCaseUpper, 74, 1}, |
|
270 {EPtiKeyQwertyL, EPtiCaseUpper, 75, 1}, |
|
271 {EPtiKeyQwertySemicolon, EPtiCaseUpper, 76, 1}, |
|
272 {EPtiKeyQwertyApostrophe, EPtiCaseUpper, 77, 1}, |
|
273 {EPtiKeyQwertyZ, EPtiCaseUpper, 78, 1}, |
|
274 {EPtiKeyQwertyX, EPtiCaseUpper, 79, 1}, |
|
275 {EPtiKeyQwertyC, EPtiCaseUpper, 80, 1}, |
|
276 {EPtiKeyQwertyV, EPtiCaseUpper, 81, 1}, |
|
277 {EPtiKeyQwertyB, EPtiCaseUpper, 82, 1}, |
|
278 {EPtiKeyQwertyN, EPtiCaseUpper, 83, 1}, |
|
279 {EPtiKeyQwertyM, EPtiCaseUpper, 84, 1}, |
|
280 {EPtiKeyQwertyComma, EPtiCaseUpper, 85, 1}, |
|
281 {EPtiKeyQwertyFullstop, EPtiCaseUpper, 86, 1}, |
|
282 {EPtiKeyQwertySlash, EPtiCaseUpper, 87, 1}, |
|
283 }; |
|
284 |
|
285 const TInt KMaxStandardQwertyIndex_Farsi = 88; |
|
286 |
|
287 |
|
288 // |
|
289 // Numeric key data table for StandardQwerty |
|
290 // |
|
291 const TPtiNumericKeyBinding StandardQwertyNumericKeysData_table_Farsi[] = |
|
292 { |
|
293 {'#',EPtiKeyQwertyHash,EPtiCaseLower}, |
|
294 {'p',EPtiKeyQwertyP,EPtiCaseLower}, |
|
295 {'w',EPtiKeyQwertyW,EPtiCaseLower}, |
|
296 {'1',EPtiKeyQwerty1,EPtiCaseLower}, |
|
297 {'2',EPtiKeyQwerty2,EPtiCaseLower}, |
|
298 {'3',EPtiKeyQwerty3,EPtiCaseLower}, |
|
299 {'4',EPtiKeyQwerty4,EPtiCaseLower}, |
|
300 {'5',EPtiKeyQwerty5,EPtiCaseLower}, |
|
301 {'6',EPtiKeyQwerty6,EPtiCaseLower}, |
|
302 {'7',EPtiKeyQwerty7,EPtiCaseLower}, |
|
303 {'8',EPtiKeyQwerty8,EPtiCaseLower}, |
|
304 {'9',EPtiKeyQwerty9,EPtiCaseLower}, |
|
305 {'0',EPtiKeyQwerty0,EPtiCaseLower}, |
|
306 {'E',EPtiKeyQwertyE,EPtiCaseUpper}, |
|
307 }; |
|
308 |
|
309 const TInt KNumStandardQwertyNumericKeysEntries_Farsi = 14; |
|
310 // |
|
311 // MiniQwerty keymap data table |
|
312 // |
|
313 const TUint16 MiniQwertyData_table_Farsi[] = |
|
314 { |
|
315 0x0636, |
|
316 0x0635, |
|
317 0x062B, |
|
318 0x0642, |
|
319 0x0641, |
|
320 0x0639, |
|
321 0x0647, |
|
322 0x062D, |
|
323 0x0686, |
|
324 0x067E, |
|
325 0x0634, |
|
326 0x0633, |
|
327 0x06CC, |
|
328 0x0628, |
|
329 0x0644, |
|
330 0x0627, |
|
331 0x062A, |
|
332 0x0646, |
|
333 0x0645, |
|
334 0x0638, |
|
335 0x0637, |
|
336 0x0632, |
|
337 0x0631, |
|
338 0x0630, |
|
339 0x062F, |
|
340 0x0626, |
|
341 0x0648, |
|
342 0x06AF, |
|
343 0x0040, |
|
344 0x0026, |
|
345 0x060C, |
|
346 0x002E, |
|
347 0x0636, |
|
348 0x0635, |
|
349 0x062B, |
|
350 0x0642, |
|
351 0x0641, |
|
352 0x063A, |
|
353 0x0647, |
|
354 0x062E, |
|
355 0x062C, |
|
356 0x067E, |
|
357 0x0634, |
|
358 0x0633, |
|
359 0x06CC, |
|
360 0x0628, |
|
361 0x06C0, |
|
362 0x0622, |
|
363 0x0640, |
|
364 0x00AB, |
|
365 0x00BB, |
|
366 0x0629, |
|
367 0x064A, |
|
368 0x0698, |
|
369 0x0624, |
|
370 0x0625, |
|
371 0x0623, |
|
372 0x0621, |
|
373 0x0648, |
|
374 0x06A9, |
|
375 0x061B, |
|
376 0x003A, |
|
377 0x0021, |
|
378 0x0022, |
|
379 0x0031, |
|
380 0x0031, |
|
381 0x0032, |
|
382 0x0032, |
|
383 0x0033, |
|
384 0x0033, |
|
385 0x002B, |
|
386 0x002F, |
|
387 0x0027, |
|
388 0x0034, |
|
389 0x0034, |
|
390 0x0035, |
|
391 0x0035, |
|
392 0x0036, |
|
393 0x0036, |
|
394 0x002D, |
|
395 0x0028, |
|
396 0x0029, |
|
397 0x0037, |
|
398 0x0037, |
|
399 0x0038, |
|
400 0x0038, |
|
401 0x0039, |
|
402 0x0039, |
|
403 0x061F, |
|
404 0x002A, |
|
405 0x002A, |
|
406 0x0030, |
|
407 0x0030, |
|
408 0x0023, |
|
409 0x0023, |
|
410 }; |
|
411 |
|
412 const TInt KMiniQwertyDataSize_Farsi = 95; |
|
413 |
|
414 |
|
415 const TPtiKeyBinding MiniQwertyKeyBindings_table_Farsi[] = |
|
416 { |
|
417 {EPtiKeyQwerty1, EPtiCaseLower, 0, 1}, |
|
418 {EPtiKeyQwerty2, EPtiCaseLower, 1, 1}, |
|
419 {EPtiKeyQwerty3, EPtiCaseLower, 2, 1}, |
|
420 {EPtiKeyQwerty4, EPtiCaseLower, 3, 1}, |
|
421 {EPtiKeyQwerty5, EPtiCaseLower, 4, 1}, |
|
422 {EPtiKeyQwerty6, EPtiCaseLower, 5, 1}, |
|
423 {EPtiKeyQwerty7, EPtiCaseLower, 6, 1}, |
|
424 {EPtiKeyQwerty8, EPtiCaseLower, 7, 1}, |
|
425 {EPtiKeyQwerty9, EPtiCaseLower, 8, 1}, |
|
426 {EPtiKeyQwerty0, EPtiCaseLower, 9, 1}, |
|
427 {EPtiKeyQwertyA, EPtiCaseLower, 10, 1}, |
|
428 {EPtiKeyQwertyS, EPtiCaseLower, 11, 1}, |
|
429 {EPtiKeyQwertyD, EPtiCaseLower, 12, 1}, |
|
430 {EPtiKeyQwertyF, EPtiCaseLower, 13, 1}, |
|
431 {EPtiKeyQwertyG, EPtiCaseLower, 14, 1}, |
|
432 {EPtiKeyQwertyH, EPtiCaseLower, 15, 1}, |
|
433 {EPtiKeyQwertyJ, EPtiCaseLower, 16, 1}, |
|
434 {EPtiKeyQwertyK, EPtiCaseLower, 17, 1}, |
|
435 {EPtiKeyQwertyL, EPtiCaseLower, 18, 1}, |
|
436 {EPtiKeyQwertyZ, EPtiCaseLower, 19, 1}, |
|
437 {EPtiKeyQwertyX, EPtiCaseLower, 20, 1}, |
|
438 {EPtiKeyQwertyC, EPtiCaseLower, 21, 1}, |
|
439 {EPtiKeyQwertyV, EPtiCaseLower, 22, 1}, |
|
440 {EPtiKeyQwertyB, EPtiCaseLower, 23, 1}, |
|
441 {EPtiKeyQwertyN, EPtiCaseLower, 24, 1}, |
|
442 {EPtiKeyQwertyM, EPtiCaseLower, 25, 1}, |
|
443 {EPtiKeyQwertyComma, EPtiCaseLower, 26, 1}, |
|
444 {EPtiKeyQwertyFullstop, EPtiCaseLower, 27, 1}, |
|
445 {EPtiKeyQwerty1, EPtiCaseUpper, 32, 1}, |
|
446 {EPtiKeyQwerty2, EPtiCaseUpper, 33, 1}, |
|
447 {EPtiKeyQwerty3, EPtiCaseUpper, 34, 1}, |
|
448 {EPtiKeyQwerty4, EPtiCaseUpper, 35, 1}, |
|
449 {EPtiKeyQwerty5, EPtiCaseUpper, 36, 1}, |
|
450 {EPtiKeyQwerty6, EPtiCaseUpper, 37, 1}, |
|
451 {EPtiKeyQwerty7, EPtiCaseUpper, 38, 1}, |
|
452 {EPtiKeyQwerty8, EPtiCaseUpper, 39, 1}, |
|
453 {EPtiKeyQwerty9, EPtiCaseUpper, 40, 1}, |
|
454 {EPtiKeyQwerty0, EPtiCaseUpper, 41, 1}, |
|
455 {EPtiKeyQwertyA, EPtiCaseUpper, 42, 1}, |
|
456 {EPtiKeyQwertyS, EPtiCaseUpper, 43, 1}, |
|
457 {EPtiKeyQwertyD, EPtiCaseUpper, 44, 1}, |
|
458 {EPtiKeyQwertyF, EPtiCaseUpper, 45, 1}, |
|
459 {EPtiKeyQwertyG, EPtiCaseUpper, 46, 1}, |
|
460 {EPtiKeyQwertyH, EPtiCaseUpper, 47, 1}, |
|
461 {EPtiKeyQwertyJ, EPtiCaseUpper, 48, 1}, |
|
462 {EPtiKeyQwertyK, EPtiCaseUpper, 49, 1}, |
|
463 {EPtiKeyQwertyL, EPtiCaseUpper, 50, 1}, |
|
464 {EPtiKeyQwertyZ, EPtiCaseUpper, 51, 1}, |
|
465 {EPtiKeyQwertyX, EPtiCaseUpper, 52, 1}, |
|
466 {EPtiKeyQwertyC, EPtiCaseUpper, 53, 1}, |
|
467 {EPtiKeyQwertyV, EPtiCaseUpper, 54, 1}, |
|
468 {EPtiKeyQwertyB, EPtiCaseUpper, 55, 1}, |
|
469 {EPtiKeyQwertyN, EPtiCaseUpper, 56, 1}, |
|
470 {EPtiKeyQwertyM, EPtiCaseUpper, 57, 1}, |
|
471 {EPtiKeyQwertyComma, EPtiCaseUpper, 58, 1}, |
|
472 {EPtiKeyQwertyFullstop, EPtiCaseUpper, 59, 1}, |
|
473 {EPtiKeyQwerty1, EPtiCaseFnLower, 62, 1}, |
|
474 {EPtiKeyQwerty2, EPtiCaseFnLower, 63, 1}, |
|
475 {EPtiKeyQwerty3, EPtiCaseFnLower, 64, 1}, |
|
476 {EPtiKeyQwerty4, EPtiCaseFnLower, 65, 1}, |
|
477 {EPtiKeyQwerty5, EPtiCaseFnLower, 66, 1}, |
|
478 {EPtiKeyQwerty6, EPtiCaseFnLower, 67, 1}, |
|
479 {EPtiKeyQwerty7, EPtiCaseFnLower, 68, 1}, |
|
480 {EPtiKeyQwerty8, EPtiCaseFnLower, 69, 1}, |
|
481 {EPtiKeyQwerty9, EPtiCaseFnLower, 70, 1}, |
|
482 {EPtiKeyQwertyA, EPtiCaseFnLower, 71, 1}, |
|
483 {EPtiKeyQwertyS, EPtiCaseFnLower, 72, 1}, |
|
484 {EPtiKeyQwertyD, EPtiCaseFnLower, 73, 1}, |
|
485 {EPtiKeyQwertyF, EPtiCaseFnLower, 74, 1}, |
|
486 {EPtiKeyQwertyG, EPtiCaseFnLower, 75, 1}, |
|
487 {EPtiKeyQwertyH, EPtiCaseFnLower, 76, 1}, |
|
488 {EPtiKeyQwertyJ, EPtiCaseFnLower, 77, 1}, |
|
489 {EPtiKeyQwertyK, EPtiCaseFnLower, 78, 1}, |
|
490 {EPtiKeyQwertyL, EPtiCaseFnLower, 79, 1}, |
|
491 {EPtiKeyQwertyZ, EPtiCaseFnLower, 80, 1}, |
|
492 {EPtiKeyQwertyX, EPtiCaseFnLower, 81, 1}, |
|
493 {EPtiKeyQwertyC, EPtiCaseFnLower, 82, 1}, |
|
494 {EPtiKeyQwertyV, EPtiCaseFnLower, 83, 1}, |
|
495 {EPtiKeyQwertyB, EPtiCaseFnLower, 84, 1}, |
|
496 {EPtiKeyQwertyN, EPtiCaseFnLower, 85, 1}, |
|
497 {EPtiKeyQwertyM, EPtiCaseFnLower, 86, 1}, |
|
498 {EPtiKeyQwertyComma, EPtiCaseFnLower, 87, 1}, |
|
499 {EPtiKeyQwertyFullstop, EPtiCaseFnLower, 88, 1}, |
|
500 }; |
|
501 |
|
502 const TInt KMaxMiniQwertyIndex_Farsi = 83; |
|
503 |
|
504 |
|
505 // |
|
506 // Numeric key data table for MiniQwerty |
|
507 // |
|
508 const TPtiNumericKeyBinding MiniQwertyNumericKeysData_table_Farsi[] = |
|
509 { |
|
510 {'p',EPtiKeyQwerty0,EPtiCaseLower}, |
|
511 {'w',EPtiKeyQwerty2,EPtiCaseLower}, |
|
512 {'E',EPtiKeyQwerty3,EPtiCaseUpper}, |
|
513 }; |
|
514 |
|
515 const TInt KNumMiniQwertyNumericKeysEntries_Farsi = 3; |
|
516 // |
|
517 // Class implementation. |
|
518 // |
|
519 |
|
520 CPtiLangDataImplFarsi* CPtiLangDataImplFarsi::NewL() |
|
521 { |
|
522 return new (ELeave) CPtiLangDataImplFarsi(); |
|
523 } |
|
524 |
|
525 |
|
526 TInt CPtiLangDataImplFarsi::LanguageCode() const |
|
527 { |
|
528 return ELangFarsi; |
|
529 } |
|
530 |
|
531 |
|
532 const TUint16* CPtiLangDataImplFarsi::KeyData(TPtiKeyboardType aKeyboardType, TInt& aDataSize) const |
|
533 { |
|
534 if (aKeyboardType == EPtiKeyboard12Key) |
|
535 { |
|
536 aDataSize = KMultitapDataSize_Farsi; |
|
537 return MultitapData_table_Farsi; |
|
538 } |
|
539 if (aKeyboardType == EPtiKeyboardQwerty4x12) |
|
540 { |
|
541 aDataSize = KStandardQwertyDataSize_Farsi; |
|
542 return StandardQwertyData_table_Farsi; |
|
543 } |
|
544 |
|
545 if (aKeyboardType == EPtiKeyboardQwerty4x10) |
|
546 { |
|
547 aDataSize = KMiniQwertyDataSize_Farsi; |
|
548 return MiniQwertyData_table_Farsi; |
|
549 } |
|
550 |
|
551 aDataSize = 0; |
|
552 return NULL; |
|
553 } |
|
554 |
|
555 |
|
556 const TPtiKeyBinding* CPtiLangDataImplFarsi::KeyBindingTable(TPtiKeyboardType aKeyboardType, TInt& aNumItems) const |
|
557 { |
|
558 if (aKeyboardType == EPtiKeyboard12Key) |
|
559 { |
|
560 aNumItems = KMaxMultitapIndex_Farsi; |
|
561 return MultitapKeyBindings_table_Farsi; |
|
562 } |
|
563 if (aKeyboardType == EPtiKeyboardQwerty4x12) |
|
564 { |
|
565 aNumItems = KMaxStandardQwertyIndex_Farsi; |
|
566 return StandardQwertyKeyBindings_table_Farsi; |
|
567 } |
|
568 if (aKeyboardType == EPtiKeyboardQwerty4x10) |
|
569 { |
|
570 aNumItems = KMaxMiniQwertyIndex_Farsi; |
|
571 return MiniQwertyKeyBindings_table_Farsi; |
|
572 } |
|
573 |
|
574 aNumItems = 0; |
|
575 return NULL; |
|
576 } |
|
577 |
|
578 |
|
579 const TPtiNumericKeyBinding* CPtiLangDataImplFarsi::NumericModeKeysTable(TPtiKeyboardType aKeyboardType, TInt& aNumEntries) const |
|
580 { |
|
581 if (aKeyboardType == EPtiKeyboardQwerty4x12) |
|
582 { |
|
583 aNumEntries = KNumStandardQwertyNumericKeysEntries_Farsi; |
|
584 return StandardQwertyNumericKeysData_table_Farsi; |
|
585 } |
|
586 |
|
587 if (aKeyboardType == EPtiKeyboardQwerty4x10) |
|
588 { |
|
589 aNumEntries = KNumMiniQwertyNumericKeysEntries_Farsi; |
|
590 return MiniQwertyNumericKeysData_table_Farsi; |
|
591 } |
|
592 |
|
593 aNumEntries = 0; |
|
594 return NULL; |
|
595 } |
|
596 |
|
597 |
|
598 |
|
599 TBool CPtiLangDataImplFarsi::SuitableForLatinOnlyMode() const |
|
600 { |
|
601 return EFalse; |
|
602 } |
|
603 |
|
604 |