textinput/ptienginev2/languages/PtiKeymappings_ITUT_16.cpp
branchRCL_3
changeset 43 ebd48d2de13c
parent 18 c8fb4cf7b3ae
child 44 ecbabf52600f
equal deleted inserted replaced
39:ac7e4d1d9209 43:ebd48d2de13c
     1 /*
     1 /*
     2 * Copyright (c) 2007 Nokia Corporation and/or its subsidiary(-ies).
     2 * Copyright (c) 2002-2004 Nokia Corporation and/or its subsidiary(-ies).
     3 * All rights reserved.
     3 * All rights reserved.
     4 * This component and the accompanying materials are made available
     4 * This component and the accompanying materials are made available
     5 * under the terms of the License "Eclipse Public License v1.0"
     5 * under the terms of "Eclipse Public License v1.0""
     6 * which accompanies this distribution, and is available
     6 * which accompanies this distribution, and is available
     7 * at the URL "http://www.eclipse.org/legal/epl-v10.html".
     7 * at the URL "http://www.eclipse.org/legal/epl-v10.html".
     8 *
     8 *
     9 * Initial Contributors:
     9 * Initial Contributors:
    10 * Nokia Corporation - initial contribution.
    10 * Nokia Corporation - initial contribution.
    95 //
    95 //
    96 // StandardQwerty keymap data table
    96 // StandardQwerty keymap data table
    97 //
    97 //
    98 const TUint16 StandardQwertyData_table_Russian[] =
    98 const TUint16 StandardQwertyData_table_Russian[] =
    99     {
    99     {
   100      0x0439,
   100      0x31,
   101      0x0446,
   101      0x32,
   102      0x0443,
   102      0x33,
   103      0x043A,
   103      0x34,
   104      0x0435,0x0451,
   104      0x35,
   105      0x043D,
   105      0x36,
   106      0x0433,
   106      0x37,
   107      0x0448,
   107      0x38,
   108      0x0449,
   108      0x39,
   109      0x0437,
   109      0x30,
   110      0x0445,
   110      0x2d,
   111      0x0444,
   111      0x439,
   112      0x044B,
   112      0x446,
   113      0x0432,
   113      0x443,
   114      0x0430,
   114      0x43a,
   115      0x043F,
   115      0x435,
   116      0x0440,
   116      0x43d,
   117      0x043E,
   117      0x433,
   118      0x043B,
   118      0x448,
   119      0x0434,
   119      0x449,
   120      0x0436,
   120      0x437,
   121      0x044D,
   121      0x445,
   122      0x044F,
   122      0x2b,
   123      0x0447,
   123      0x444,
   124      0x0441,
   124      0x44b,
   125      0x043C,
   125      0x432,
   126      0x0438,
   126      0x430,
   127      0x0442,
   127      0x43f,
   128      0x044C,
   128      0x440,
   129      0x0431,
   129      0x43e,
   130      0x044E,
   130      0x43b,
   131      0x044A,
   131      0x434,
   132      0x002E,
   132      0x436,
   133      0x0419,
   133      0x44d,
   134      0x0426,
   134      0x44f,
   135      0x0423,
   135      0x447,
   136      0x041A,
   136      0x441,
   137      0x0415,0x0401,
   137      0x43c,
   138      0x041D,
   138      0x438,
   139      0x0413,
   139      0x442,
   140      0x0428,
   140      0x44c,
   141      0x0429,
   141      0x431,
   142      0x0417,
   142      0x44e,
   143      0x0425,
   143      0x2e,
   144      0x0424,
   144      0x21,
   145      0x042B,
   145      0x22,
   146      0x0412,
   146      0x40,
   147      0x0410,
   147      0x3b,
   148      0x041F,
   148      0x3d,
   149      0x0420,
   149      0x3a,
   150      0x041E,
   150      0x3f,
   151      0x041B,
   151      0x2a,
   152      0x0414,
   152      0x28,
   153      0x0416,
   153      0x29,
   154      0x042D,
   154      0x2f,
   155      0x042F,
   155      0x419,
   156      0x0427,
   156      0x426,
   157      0x0421,
   157      0x423,
   158      0x041C,
   158      0x41a,
   159      0x0418,
   159      0x415,
   160      0x0422,
   160      0x41d,
   161      0x042C,
   161      0x413,
   162      0x0411,
   162      0x428,
   163      0x042E,
   163      0x429,
   164      0x042A,
   164      0x417,
   165      0x002C,
   165      0x425,
       
   166      0x23,
       
   167      0x424,
       
   168      0x42b,
       
   169      0x412,
       
   170      0x410,
       
   171      0x41f,
       
   172      0x420,
       
   173      0x41e,
       
   174      0x41b,
       
   175      0x414,
       
   176      0x416,
       
   177      0x42d,
       
   178      0x42f,
       
   179      0x427,
       
   180      0x421,
       
   181      0x41c,
       
   182      0x418,
       
   183      0x422,
       
   184      0x42c,
       
   185      0x411,
       
   186      0x42e,
       
   187      0x2c,
   166     };
   188     };
   167 
   189 
   168 const TInt KStandardQwertyDataSize_Russian = 68;
   190 const TInt KStandardQwertyDataSize_Russian = 88;
   169 
   191 
   170 
   192 
   171 const TPtiKeyBinding StandardQwertyKeyBindings_table_Russian[] =
   193 const TPtiKeyBinding StandardQwertyKeyBindings_table_Russian[] =
   172     {
   194     {
   173         {EPtiKeyQwertyAtCharacter, EPtiCaseLower, 0, 1},
   195         {EPtiKeyQwerty1, EPtiCaseLower, 0, 1},
   174         {EPtiKeyQwerty1, EPtiCaseLower, 1, 1},
   196         {EPtiKeyQwerty2, EPtiCaseLower, 1, 1},
   175         {EPtiKeyQwerty2, EPtiCaseLower, 2, 1},
   197         {EPtiKeyQwerty3, EPtiCaseLower, 2, 1},
   176         {EPtiKeyQwerty3, EPtiCaseLower, 3, 1},
   198         {EPtiKeyQwerty4, EPtiCaseLower, 3, 1},
   177         {EPtiKeyQwerty4, EPtiCaseLower, 4, 2},
   199         {EPtiKeyQwerty5, EPtiCaseLower, 4, 1},
   178         {EPtiKeyQwerty5, EPtiCaseLower, 6, 1},
   200         {EPtiKeyQwerty6, EPtiCaseLower, 5, 1},
   179         {EPtiKeyQwerty6, EPtiCaseLower, 7, 1},
   201         {EPtiKeyQwerty7, EPtiCaseLower, 6, 1},
   180         {EPtiKeyQwerty7, EPtiCaseLower, 8, 1},
   202         {EPtiKeyQwerty8, EPtiCaseLower, 7, 1},
   181         {EPtiKeyQwerty8, EPtiCaseLower, 9, 1},
   203         {EPtiKeyQwerty9, EPtiCaseLower, 8, 1},
   182         {EPtiKeyQwerty9, EPtiCaseLower, 10, 1},
   204         {EPtiKeyQwerty0, EPtiCaseLower, 9, 1},
   183         {EPtiKeyQwerty0, EPtiCaseLower, 11, 1},
   205         {EPtiKeyQwertyPlus, EPtiCaseLower, 10, 1},
   184         {EPtiKeyQwertyPlus, EPtiCaseLower, 12, 1},
   206         {EPtiKeyQwertyQ, EPtiCaseLower, 11, 1},
   185         {EPtiKeyQwertyQ, EPtiCaseLower, 13, 1},
   207         {EPtiKeyQwertyW, EPtiCaseLower, 12, 1},
   186         {EPtiKeyQwertyW, EPtiCaseLower, 14, 1},
   208         {EPtiKeyQwertyE, EPtiCaseLower, 13, 1},
   187         {EPtiKeyQwertyE, EPtiCaseLower, 15, 1},
   209         {EPtiKeyQwertyR, EPtiCaseLower, 14, 1},
   188         {EPtiKeyQwertyR, EPtiCaseLower, 16, 1},
   210         {EPtiKeyQwertyT, EPtiCaseLower, 15, 1},
   189         {EPtiKeyQwertyT, EPtiCaseLower, 17, 1},
   211         {EPtiKeyQwertyY, EPtiCaseLower, 16, 1},
   190         {EPtiKeyQwertyY, EPtiCaseLower, 18, 1},
   212         {EPtiKeyQwertyU, EPtiCaseLower, 17, 1},
   191         {EPtiKeyQwertyU, EPtiCaseLower, 19, 1},
   213         {EPtiKeyQwertyI, EPtiCaseLower, 18, 1},
   192         {EPtiKeyQwertyI, EPtiCaseLower, 20, 1},
   214         {EPtiKeyQwertyO, EPtiCaseLower, 19, 1},
   193         {EPtiKeyQwertyO, EPtiCaseLower, 21, 1},
   215         {EPtiKeyQwertyP, EPtiCaseLower, 20, 1},
   194         {EPtiKeyQwertyP, EPtiCaseLower, 22, 1},
   216         {EPtiKeyQwertyMinus, EPtiCaseLower, 21, 1},
   195         {EPtiKeyQwertyMinus, EPtiCaseLower, 23, 0},
   217         {EPtiKeyQwertyHash, EPtiCaseLower, 22, 1},
   196         {EPtiKeyQwertyHash, EPtiCaseLower, 23, 1},
   218         {EPtiKeyQwertyA, EPtiCaseLower, 23, 1},
   197         {EPtiKeyQwertyA, EPtiCaseLower, 24, 1},
   219         {EPtiKeyQwertyS, EPtiCaseLower, 24, 1},
   198         {EPtiKeyQwertyS, EPtiCaseLower, 25, 1},
   220         {EPtiKeyQwertyD, EPtiCaseLower, 25, 1},
   199         {EPtiKeyQwertyD, EPtiCaseLower, 26, 1},
   221         {EPtiKeyQwertyF, EPtiCaseLower, 26, 1},
   200         {EPtiKeyQwertyF, EPtiCaseLower, 27, 1},
   222         {EPtiKeyQwertyG, EPtiCaseLower, 27, 1},
   201         {EPtiKeyQwertyG, EPtiCaseLower, 28, 1},
   223         {EPtiKeyQwertyH, EPtiCaseLower, 28, 1},
   202         {EPtiKeyQwertyH, EPtiCaseLower, 29, 1},
   224         {EPtiKeyQwertyJ, EPtiCaseLower, 29, 1},
   203         {EPtiKeyQwertyJ, EPtiCaseLower, 30, 1},
   225         {EPtiKeyQwertyK, EPtiCaseLower, 30, 1},
   204         {EPtiKeyQwertyK, EPtiCaseLower, 31, 1},
   226         {EPtiKeyQwertyL, EPtiCaseLower, 31, 1},
   205         {EPtiKeyQwertyL, EPtiCaseLower, 32, 1},
   227         {EPtiKeyQwertySemicolon, EPtiCaseLower, 32, 1},
   206         {EPtiKeyQwertySemicolon, EPtiCaseLower, 33, 1},
   228         {EPtiKeyQwertyApostrophe, EPtiCaseLower, 33, 1},
   207         {EPtiKeyQwertyApostrophe, EPtiCaseLower, 34, 0},
   229         {EPtiKeyQwertyZ, EPtiCaseLower, 34, 1},
   208         {0x5b, EPtiCaseLower, 34, 0},
   230         {EPtiKeyQwertyX, EPtiCaseLower, 35, 1},
   209         {EPtiKeyQwertyZ, EPtiCaseLower, 34, 0},
   231         {EPtiKeyQwertyC, EPtiCaseLower, 36, 1},
   210         {EPtiKeyQwertyX, EPtiCaseLower, 34, 0},
   232         {EPtiKeyQwertyV, EPtiCaseLower, 37, 1},
   211         {EPtiKeyQwertyC, EPtiCaseLower, 34, 0},
   233         {EPtiKeyQwertyB, EPtiCaseLower, 38, 1},
   212         {EPtiKeyQwertyV, EPtiCaseLower, 34, 0},
   234         {EPtiKeyQwertyN, EPtiCaseLower, 39, 1},
   213         {EPtiKeyQwertyB, EPtiCaseLower, 34, 0},
   235         {EPtiKeyQwertyM, EPtiCaseLower, 40, 1},
   214         {EPtiKeyQwertyN, EPtiCaseLower, 34, 0},
   236         {EPtiKeyQwertyComma, EPtiCaseLower, 41, 1},
   215         {EPtiKeyQwertyM, EPtiCaseLower, 34, 0},
   237         {EPtiKeyQwertyFullstop, EPtiCaseLower, 42, 1},
   216         {EPtiKeyQwertyComma, EPtiCaseLower, 34, 0},
   238         {EPtiKeyQwertySlash, EPtiCaseLower, 43, 1},
   217         {EPtiKeyQwertyFullstop, EPtiCaseLower, 34, 0},
   239         {EPtiKeyQwerty1, EPtiCaseUpper, 44, 1},
   218         {EPtiKeyQwertySlash, EPtiCaseLower, 34, 0},
   240         {EPtiKeyQwerty2, EPtiCaseUpper, 45, 1},
   219         {EPtiKeyQwertyAtCharacter, EPtiCaseUpper, 34, 1},
   241         {EPtiKeyQwerty3, EPtiCaseUpper, 46, 1},
   220         {EPtiKeyQwerty1, EPtiCaseUpper, 35, 1},
   242         {EPtiKeyQwerty4, EPtiCaseUpper, 47, 1},
   221         {EPtiKeyQwerty2, EPtiCaseUpper, 36, 1},
   243         {EPtiKeyQwerty5, EPtiCaseUpper, 48, 1},
   222         {EPtiKeyQwerty3, EPtiCaseUpper, 37, 1},
   244         {EPtiKeyQwerty6, EPtiCaseUpper, 49, 1},
   223         {EPtiKeyQwerty4, EPtiCaseUpper, 38, 2},
   245         {EPtiKeyQwerty7, EPtiCaseUpper, 50, 1},
   224         {EPtiKeyQwerty5, EPtiCaseUpper, 40, 1},
   246         {EPtiKeyQwerty8, EPtiCaseUpper, 51, 1},
   225         {EPtiKeyQwerty6, EPtiCaseUpper, 41, 1},
   247         {EPtiKeyQwerty9, EPtiCaseUpper, 52, 1},
   226         {EPtiKeyQwerty7, EPtiCaseUpper, 42, 1},
   248         {EPtiKeyQwerty0, EPtiCaseUpper, 53, 1},
   227         {EPtiKeyQwerty8, EPtiCaseUpper, 43, 1},
   249         {EPtiKeyQwertyPlus, EPtiCaseUpper, 54, 1},
   228         {EPtiKeyQwerty9, EPtiCaseUpper, 44, 1},
   250         {EPtiKeyQwertyQ, EPtiCaseUpper, 55, 1},
   229         {EPtiKeyQwerty0, EPtiCaseUpper, 45, 1},
   251         {EPtiKeyQwertyW, EPtiCaseUpper, 56, 1},
   230         {EPtiKeyQwertyPlus, EPtiCaseUpper, 46, 1},
   252         {EPtiKeyQwertyE, EPtiCaseUpper, 57, 1},
   231         {EPtiKeyQwertyQ, EPtiCaseUpper, 47, 1},
   253         {EPtiKeyQwertyR, EPtiCaseUpper, 58, 1},
   232         {EPtiKeyQwertyW, EPtiCaseUpper, 48, 1},
   254         {EPtiKeyQwertyT, EPtiCaseUpper, 59, 1},
   233         {EPtiKeyQwertyE, EPtiCaseUpper, 49, 1},
   255         {EPtiKeyQwertyY, EPtiCaseUpper, 60, 1},
   234         {EPtiKeyQwertyR, EPtiCaseUpper, 50, 1},
   256         {EPtiKeyQwertyU, EPtiCaseUpper, 61, 1},
   235         {EPtiKeyQwertyT, EPtiCaseUpper, 51, 1},
   257         {EPtiKeyQwertyI, EPtiCaseUpper, 62, 1},
   236         {EPtiKeyQwertyY, EPtiCaseUpper, 52, 1},
   258         {EPtiKeyQwertyO, EPtiCaseUpper, 63, 1},
   237         {EPtiKeyQwertyU, EPtiCaseUpper, 53, 1},
   259         {EPtiKeyQwertyP, EPtiCaseUpper, 64, 1},
   238         {EPtiKeyQwertyI, EPtiCaseUpper, 54, 1},
   260         {EPtiKeyQwertyMinus, EPtiCaseUpper, 65, 1},
   239         {EPtiKeyQwertyO, EPtiCaseUpper, 55, 1},
   261         {EPtiKeyQwertyHash, EPtiCaseUpper, 66, 1},
   240         {EPtiKeyQwertyP, EPtiCaseUpper, 56, 1},
   262         {EPtiKeyQwertyA, EPtiCaseUpper, 67, 1},
   241         {EPtiKeyQwertyMinus, EPtiCaseUpper, 57, 0},
   263         {EPtiKeyQwertyS, EPtiCaseUpper, 68, 1},
   242         {EPtiKeyQwertyHash, EPtiCaseUpper, 57, 1},
   264         {EPtiKeyQwertyD, EPtiCaseUpper, 69, 1},
   243         {EPtiKeyQwertyA, EPtiCaseUpper, 58, 1},
   265         {EPtiKeyQwertyF, EPtiCaseUpper, 70, 1},
   244         {EPtiKeyQwertyS, EPtiCaseUpper, 59, 1},
   266         {EPtiKeyQwertyG, EPtiCaseUpper, 71, 1},
   245         {EPtiKeyQwertyD, EPtiCaseUpper, 60, 1},
   267         {EPtiKeyQwertyH, EPtiCaseUpper, 72, 1},
   246         {EPtiKeyQwertyF, EPtiCaseUpper, 61, 1},
   268         {EPtiKeyQwertyJ, EPtiCaseUpper, 73, 1},
   247         {EPtiKeyQwertyG, EPtiCaseUpper, 62, 1},
   269         {EPtiKeyQwertyK, EPtiCaseUpper, 74, 1},
   248         {EPtiKeyQwertyH, EPtiCaseUpper, 63, 1},
   270         {EPtiKeyQwertyL, EPtiCaseUpper, 75, 1},
   249         {EPtiKeyQwertyJ, EPtiCaseUpper, 64, 1},
   271         {EPtiKeyQwertySemicolon, EPtiCaseUpper, 76, 1},
   250         {EPtiKeyQwertyK, EPtiCaseUpper, 65, 1},
   272         {EPtiKeyQwertyApostrophe, EPtiCaseUpper, 77, 1},
   251         {EPtiKeyQwertyL, EPtiCaseUpper, 66, 1},
   273         {EPtiKeyQwertyZ, EPtiCaseUpper, 78, 1},
   252         {EPtiKeyQwertySemicolon, EPtiCaseUpper, 67, 1},
   274         {EPtiKeyQwertyX, EPtiCaseUpper, 79, 1},
   253         {EPtiKeyQwertyApostrophe, EPtiCaseUpper, 68, 0},
   275         {EPtiKeyQwertyC, EPtiCaseUpper, 80, 1},
   254         {0x5b, EPtiCaseUpper, 68, 0},
   276         {EPtiKeyQwertyV, EPtiCaseUpper, 81, 1},
   255         {EPtiKeyQwertyZ, EPtiCaseUpper, 68, 0},
   277         {EPtiKeyQwertyB, EPtiCaseUpper, 82, 1},
   256         {EPtiKeyQwertyX, EPtiCaseUpper, 68, 0},
   278         {EPtiKeyQwertyN, EPtiCaseUpper, 83, 1},
   257         {EPtiKeyQwertyC, EPtiCaseUpper, 68, 0},
   279         {EPtiKeyQwertyM, EPtiCaseUpper, 84, 1},
   258         {EPtiKeyQwertyV, EPtiCaseUpper, 68, 0},
   280         {EPtiKeyQwertyComma, EPtiCaseUpper, 85, 1},
   259         {EPtiKeyQwertyB, EPtiCaseUpper, 68, 0},
   281         {EPtiKeyQwertyFullstop, EPtiCaseUpper, 86, 1},
   260         {EPtiKeyQwertyN, EPtiCaseUpper, 68, 0},
   282         {EPtiKeyQwertySlash, EPtiCaseUpper, 87, 1},
   261         {EPtiKeyQwertyM, EPtiCaseUpper, 68, 0},
       
   262         {EPtiKeyQwertyComma, EPtiCaseUpper, 68, 0},
       
   263         {EPtiKeyQwertyFullstop, EPtiCaseUpper, 68, 0},
       
   264         {EPtiKeyQwertySlash, EPtiCaseUpper, 68, 0},
       
   265     };
   283     };
   266 
   284 
   267 const TInt KMaxStandardQwertyIndex_Russian = 92;
   285 const TInt KMaxStandardQwertyIndex_Russian = 88;
   268 
   286 
       
   287 
       
   288 //
       
   289 // Numeric key data table for StandardQwerty
       
   290 //
       
   291 const TPtiNumericKeyBinding StandardQwertyNumericKeysData_table_Russian[] =
       
   292 	{
       
   293 	{'p',EPtiKeyQwertyP,EPtiCaseLower},
       
   294 	{'w',EPtiKeyQwertyW,EPtiCaseLower},
       
   295 	{'E',EPtiKeyQwertyE,EPtiCaseUpper},
       
   296 	};
       
   297 
       
   298 const TInt KNumStandardQwertyNumericKeysEntries_Russian = 3;
   269 //
   299 //
   270 // MiniQwerty keymap data table
   300 // MiniQwerty keymap data table
   271 //
   301 //
   272 const TUint16 MiniQwertyData_table_Russian[] =
   302 const TUint16 MiniQwertyData_table_Russian[] =
   273     {
   303     {
   541     }
   571     }
   542 
   572 
   543 
   573 
   544 const TPtiNumericKeyBinding* CPtiLangDataImplRussian::NumericModeKeysTable(TPtiKeyboardType aKeyboardType, TInt& aNumEntries) const
   574 const TPtiNumericKeyBinding* CPtiLangDataImplRussian::NumericModeKeysTable(TPtiKeyboardType aKeyboardType, TInt& aNumEntries) const
   545     {
   575     {
       
   576     if (aKeyboardType == EPtiKeyboardQwerty4x12)
       
   577         {
       
   578         aNumEntries = KNumStandardQwertyNumericKeysEntries_Russian;
       
   579         return StandardQwertyNumericKeysData_table_Russian;
       
   580         }
       
   581 
   546     if (aKeyboardType == EPtiKeyboardQwerty4x10)
   582     if (aKeyboardType == EPtiKeyboardQwerty4x10)
   547         {
   583         {
   548         aNumEntries = KNumMiniQwertyNumericKeysEntries_Russian;
   584         aNumEntries = KNumMiniQwertyNumericKeysEntries_Russian;
   549         return MiniQwertyNumericKeysData_table_Russian;
   585         return MiniQwertyNumericKeysData_table_Russian;
   550         }
   586         }
   552     aNumEntries = 0;
   588     aNumEntries = 0;
   553     return NULL;
   589     return NULL;
   554     }
   590     }
   555 
   591 
   556 
   592 
       
   593 
       
   594 TBool CPtiLangDataImplRussian::SuitableForLatinOnlyMode() const
       
   595     {
       
   596     return EFalse;
       
   597     }
       
   598 
       
   599