textinput/ptienginev2/languages/PtiKeymappings_ITUT_94.cpp
branchRCL_3
changeset 20 ebd48d2de13c
parent 11 c8fb4cf7b3ae
child 21 ecbabf52600f
equal deleted inserted replaced
19:ac7e4d1d9209 20: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_Urdu[] =
    98 const TUint16 StandardQwertyData_table_Urdu[] =
    99     {
    99     {
       
   100      0x06f1,
       
   101      0x06f2,
       
   102      0x06f3,
       
   103      0x06f4,
       
   104      0x06f5,
       
   105      0x06f6,
       
   106      0x06f7,
       
   107      0x06f8,
       
   108      0x06f9,
       
   109      0x06f0,
   100      0x0637,
   110      0x0637,
   101      0x0635,
   111      0x0635,
   102      0x06BE,
   112      0x06be,
   103      0x062F,
   113      0x062f,
   104      0x0679,
   114      0x06BB,
   105      0x067E,
   115      0x067e,
   106      0x062A,
   116      0x062a,
   107      0x0628,
   117      0x0628,
   108      0x062C,
   118      0x062c,
   109      0x062D,
   119      0x062d,
   110      0x0021,
   120      0x002d,
       
   121      0x003d,
   111      0x0645,
   122      0x0645,
   112      0x0648,
   123      0x0648,
   113      0x0631,
   124      0x0631,
   114      0x0646,
   125      0x0646,
   115      0x0644,
   126      0x0644,
   116      0x06C1,
   127      0x0647,
   117      0x0627,
   128      0x0627,
   118      0x06A9,
   129      0x06a9,
   119      0x06CC,
   130      0x06cc,
   120      0x061B,
   131      0x061b,
   121      0x005C,
   132      0x0027,
       
   133      0x005c,
   122      0x0642,
   134      0x0642,
   123      0x0641,
   135      0x0641,
   124      0x06D2,
   136      0x06d2,
   125      0x0633,
   137      0x0633,
   126      0x0634,
   138      0x0634,
   127      0x063A,
   139      0x063a,
   128      0x0639,
   140      0x0639,
   129      0x060C,
   141      0x060c,
   130      0x002E,
   142      0x06d4,
   131      0x002F,
   143      0x002f,
   132      0x061F,
   144      0x0021,
       
   145      0x0040,
       
   146      0x0023,
       
   147      0x0024,
       
   148      0x066a,
       
   149      0x005e,
       
   150      0x0029,
       
   151      0x0028,
       
   152      0x005f,
       
   153      0x002b,
   133      0x0638,
   154      0x0638,
   134      0x0636,
   155      0x0636,
   135      0x0630,
   156      0x0630,
   136      0x0688,
   157      0x0688,
   137      0x062B,
   158      0x062b,
   138      0x06C3,
   159      0x067e,
       
   160      0x06c3,
   139      0x0628,
   161      0x0628,
   140      0x0686,
   162      0x0686,
   141      0x062E,
   163      0x062e,
   142      0x0029,
   164      0x007d,
   143      0x0028,
   165      0x007b,
   144      0x0698,
   166      0x0698,
   145      0x0632,
   167      0x0632,
   146      0x0691,
   168      0x0691,
   147      0x06BA,
   169      0x06ba,
   148      0x06C2,
   170      0x06c2,
   149      0x0621,
   171      0x0621,
   150      0x0622,
   172      0x0622,
   151      0x06AF,
   173      0x06af,
   152      0x064A,
   174      0x064a,
   153      0x003A,
   175      0x003a,
   154      0x0022,
   176      0x0022,
   155      0x200C,
   177      0x002a,
   156      0x200D,
   178      0x200d,
   157      0x06D3,
   179      0x200c,
   158      0x200E,
   180      0x06d3,
       
   181      0x200e,
   159      0x0624,
   182      0x0624,
   160      0x0626,
   183      0x0626,
   161      0x200F,
   184      0x200f,
   162      0x003E,
   185      0x003e,
   163      0x003C,
   186      0x003c,
   164      0x005F,
   187      0x061f,
   165      0x0640,
       
   166     };
   188     };
   167 
   189 
   168 const TInt KStandardQwertyDataSize_Urdu = 66;
   190 const TInt KStandardQwertyDataSize_Urdu = 88;
   169 
   191 
   170 
   192 
   171 const TPtiKeyBinding StandardQwertyKeyBindings_table_Urdu[] =
   193 const TPtiKeyBinding StandardQwertyKeyBindings_table_Urdu[] =
   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, 1},
   199         {EPtiKeyQwerty5, EPtiCaseLower, 4, 1},
   178         {EPtiKeyQwerty5, EPtiCaseLower, 5, 1},
   200         {EPtiKeyQwerty6, EPtiCaseLower, 5, 1},
   179         {EPtiKeyQwerty6, EPtiCaseLower, 6, 1},
   201         {EPtiKeyQwerty7, EPtiCaseLower, 6, 1},
   180         {EPtiKeyQwerty7, EPtiCaseLower, 7, 1},
   202         {EPtiKeyQwerty8, EPtiCaseLower, 7, 1},
   181         {EPtiKeyQwerty8, EPtiCaseLower, 8, 1},
   203         {EPtiKeyQwerty9, EPtiCaseLower, 8, 1},
   182         {EPtiKeyQwerty9, EPtiCaseLower, 9, 1},
   204         {EPtiKeyQwerty0, EPtiCaseLower, 9, 1},
   183         {EPtiKeyQwerty0, EPtiCaseLower, 10, 1},
   205         {EPtiKeyQwertyPlus, EPtiCaseLower, 10, 1},
   184         {EPtiKeyQwertyPlus, EPtiCaseLower, 11, 1},
   206         {EPtiKeyQwertyQ, EPtiCaseLower, 11, 1},
   185         {EPtiKeyQwertyQ, EPtiCaseLower, 12, 1},
   207         {EPtiKeyQwertyW, EPtiCaseLower, 12, 1},
   186         {EPtiKeyQwertyW, EPtiCaseLower, 13, 1},
   208         {EPtiKeyQwertyE, EPtiCaseLower, 13, 1},
   187         {EPtiKeyQwertyE, EPtiCaseLower, 14, 1},
   209         {EPtiKeyQwertyR, EPtiCaseLower, 14, 1},
   188         {EPtiKeyQwertyR, EPtiCaseLower, 15, 1},
   210         {EPtiKeyQwertyT, EPtiCaseLower, 15, 1},
   189         {EPtiKeyQwertyT, EPtiCaseLower, 16, 1},
   211         {EPtiKeyQwertyY, EPtiCaseLower, 16, 1},
   190         {EPtiKeyQwertyY, EPtiCaseLower, 17, 1},
   212         {EPtiKeyQwertyU, EPtiCaseLower, 17, 1},
   191         {EPtiKeyQwertyU, EPtiCaseLower, 18, 1},
   213         {EPtiKeyQwertyI, EPtiCaseLower, 18, 1},
   192         {EPtiKeyQwertyI, EPtiCaseLower, 19, 1},
   214         {EPtiKeyQwertyO, EPtiCaseLower, 19, 1},
   193         {EPtiKeyQwertyO, EPtiCaseLower, 20, 1},
   215         {EPtiKeyQwertyP, EPtiCaseLower, 20, 1},
   194         {EPtiKeyQwertyP, EPtiCaseLower, 21, 1},
   216         {EPtiKeyQwertyMinus, EPtiCaseLower, 21, 1},
   195         {EPtiKeyQwertyMinus, EPtiCaseLower, 22, 0},
       
   196         {EPtiKeyQwertyHash, EPtiCaseLower, 22, 1},
   217         {EPtiKeyQwertyHash, EPtiCaseLower, 22, 1},
   197         {EPtiKeyQwertyA, EPtiCaseLower, 23, 1},
   218         {EPtiKeyQwertyA, EPtiCaseLower, 23, 1},
   198         {EPtiKeyQwertyS, EPtiCaseLower, 24, 1},
   219         {EPtiKeyQwertyS, EPtiCaseLower, 24, 1},
   199         {EPtiKeyQwertyD, EPtiCaseLower, 25, 1},
   220         {EPtiKeyQwertyD, EPtiCaseLower, 25, 1},
   200         {EPtiKeyQwertyF, EPtiCaseLower, 26, 1},
   221         {EPtiKeyQwertyF, EPtiCaseLower, 26, 1},
   202         {EPtiKeyQwertyH, EPtiCaseLower, 28, 1},
   223         {EPtiKeyQwertyH, EPtiCaseLower, 28, 1},
   203         {EPtiKeyQwertyJ, EPtiCaseLower, 29, 1},
   224         {EPtiKeyQwertyJ, EPtiCaseLower, 29, 1},
   204         {EPtiKeyQwertyK, EPtiCaseLower, 30, 1},
   225         {EPtiKeyQwertyK, EPtiCaseLower, 30, 1},
   205         {EPtiKeyQwertyL, EPtiCaseLower, 31, 1},
   226         {EPtiKeyQwertyL, EPtiCaseLower, 31, 1},
   206         {EPtiKeyQwertySemicolon, EPtiCaseLower, 32, 1},
   227         {EPtiKeyQwertySemicolon, EPtiCaseLower, 32, 1},
   207         {EPtiKeyQwertyApostrophe, EPtiCaseLower, 33, 0},
   228         {EPtiKeyQwertyApostrophe, EPtiCaseLower, 33, 1},
   208         {0x5b, EPtiCaseLower, 33, 0},
   229         {EPtiKeyQwertyZ, EPtiCaseLower, 34, 1},
   209         {EPtiKeyQwertyZ, EPtiCaseLower, 33, 0},
   230         {EPtiKeyQwertyX, EPtiCaseLower, 35, 1},
   210         {EPtiKeyQwertyX, EPtiCaseLower, 33, 0},
   231         {EPtiKeyQwertyC, EPtiCaseLower, 36, 1},
   211         {EPtiKeyQwertyC, EPtiCaseLower, 33, 0},
   232         {EPtiKeyQwertyV, EPtiCaseLower, 37, 1},
   212         {EPtiKeyQwertyV, EPtiCaseLower, 33, 0},
   233         {EPtiKeyQwertyB, EPtiCaseLower, 38, 1},
   213         {EPtiKeyQwertyB, EPtiCaseLower, 33, 0},
   234         {EPtiKeyQwertyN, EPtiCaseLower, 39, 1},
   214         {EPtiKeyQwertyN, EPtiCaseLower, 33, 0},
   235         {EPtiKeyQwertyM, EPtiCaseLower, 40, 1},
   215         {EPtiKeyQwertyM, EPtiCaseLower, 33, 0},
   236         {EPtiKeyQwertyComma, EPtiCaseLower, 41, 1},
   216         {EPtiKeyQwertyComma, EPtiCaseLower, 33, 0},
   237         {EPtiKeyQwertyFullstop, EPtiCaseLower, 42, 1},
   217         {EPtiKeyQwertyFullstop, EPtiCaseLower, 33, 0},
   238         {EPtiKeyQwertySlash, EPtiCaseLower, 43, 1},
   218         {EPtiKeyQwertySlash, EPtiCaseLower, 33, 0},
   239         {EPtiKeyQwerty1, EPtiCaseUpper, 44, 1},
   219         {EPtiKeyQwertyAtCharacter, EPtiCaseUpper, 33, 1},
   240         {EPtiKeyQwerty2, EPtiCaseUpper, 45, 1},
   220         {EPtiKeyQwerty1, EPtiCaseUpper, 34, 1},
   241         {EPtiKeyQwerty3, EPtiCaseUpper, 46, 1},
   221         {EPtiKeyQwerty2, EPtiCaseUpper, 35, 1},
   242         {EPtiKeyQwerty4, EPtiCaseUpper, 47, 1},
   222         {EPtiKeyQwerty3, EPtiCaseUpper, 36, 1},
   243         {EPtiKeyQwerty5, EPtiCaseUpper, 48, 1},
   223         {EPtiKeyQwerty4, EPtiCaseUpper, 37, 1},
   244         {EPtiKeyQwerty6, EPtiCaseUpper, 49, 1},
   224         {EPtiKeyQwerty5, EPtiCaseUpper, 38, 1},
   245         {EPtiKeyQwerty7, EPtiCaseUpper, 50, 1},
   225         {EPtiKeyQwerty6, EPtiCaseUpper, 39, 1},
   246         {EPtiKeyQwerty8, EPtiCaseUpper, 51, 1},
   226         {EPtiKeyQwerty7, EPtiCaseUpper, 40, 1},
   247         {EPtiKeyQwerty9, EPtiCaseUpper, 52, 1},
   227         {EPtiKeyQwerty8, EPtiCaseUpper, 41, 1},
   248         {EPtiKeyQwerty0, EPtiCaseUpper, 53, 1},
   228         {EPtiKeyQwerty9, EPtiCaseUpper, 42, 1},
   249         {EPtiKeyQwertyPlus, EPtiCaseUpper, 54, 1},
   229         {EPtiKeyQwerty0, EPtiCaseUpper, 43, 1},
   250         {EPtiKeyQwertyQ, EPtiCaseUpper, 55, 1},
   230         {EPtiKeyQwertyPlus, EPtiCaseUpper, 44, 1},
   251         {EPtiKeyQwertyW, EPtiCaseUpper, 56, 1},
   231         {EPtiKeyQwertyQ, EPtiCaseUpper, 45, 1},
   252         {EPtiKeyQwertyE, EPtiCaseUpper, 57, 1},
   232         {EPtiKeyQwertyW, EPtiCaseUpper, 46, 1},
   253         {EPtiKeyQwertyR, EPtiCaseUpper, 58, 1},
   233         {EPtiKeyQwertyE, EPtiCaseUpper, 47, 1},
   254         {EPtiKeyQwertyT, EPtiCaseUpper, 59, 1},
   234         {EPtiKeyQwertyR, EPtiCaseUpper, 48, 1},
   255         {EPtiKeyQwertyY, EPtiCaseUpper, 60, 1},
   235         {EPtiKeyQwertyT, EPtiCaseUpper, 49, 1},
   256         {EPtiKeyQwertyU, EPtiCaseUpper, 61, 1},
   236         {EPtiKeyQwertyY, EPtiCaseUpper, 50, 1},
   257         {EPtiKeyQwertyI, EPtiCaseUpper, 62, 1},
   237         {EPtiKeyQwertyU, EPtiCaseUpper, 51, 1},
   258         {EPtiKeyQwertyO, EPtiCaseUpper, 63, 1},
   238         {EPtiKeyQwertyI, EPtiCaseUpper, 52, 1},
   259         {EPtiKeyQwertyP, EPtiCaseUpper, 64, 1},
   239         {EPtiKeyQwertyO, EPtiCaseUpper, 53, 1},
   260         {EPtiKeyQwertyMinus, EPtiCaseUpper, 65, 1},
   240         {EPtiKeyQwertyP, EPtiCaseUpper, 54, 1},
   261         {EPtiKeyQwertyHash, EPtiCaseUpper, 66, 1},
   241         {EPtiKeyQwertyMinus, EPtiCaseUpper, 55, 0},
   262         {EPtiKeyQwertyA, EPtiCaseUpper, 67, 1},
   242         {EPtiKeyQwertyHash, EPtiCaseUpper, 55, 1},
   263         {EPtiKeyQwertyS, EPtiCaseUpper, 68, 1},
   243         {EPtiKeyQwertyA, EPtiCaseUpper, 56, 1},
   264         {EPtiKeyQwertyD, EPtiCaseUpper, 69, 1},
   244         {EPtiKeyQwertyS, EPtiCaseUpper, 57, 1},
   265         {EPtiKeyQwertyF, EPtiCaseUpper, 70, 1},
   245         {EPtiKeyQwertyD, EPtiCaseUpper, 58, 1},
   266         {EPtiKeyQwertyG, EPtiCaseUpper, 71, 1},
   246         {EPtiKeyQwertyF, EPtiCaseUpper, 59, 1},
   267         {EPtiKeyQwertyH, EPtiCaseUpper, 72, 1},
   247         {EPtiKeyQwertyG, EPtiCaseUpper, 60, 1},
   268         {EPtiKeyQwertyJ, EPtiCaseUpper, 73, 1},
   248         {EPtiKeyQwertyH, EPtiCaseUpper, 61, 1},
   269         {EPtiKeyQwertyK, EPtiCaseUpper, 74, 1},
   249         {EPtiKeyQwertyJ, EPtiCaseUpper, 62, 1},
   270         {EPtiKeyQwertyL, EPtiCaseUpper, 75, 1},
   250         {EPtiKeyQwertyK, EPtiCaseUpper, 63, 1},
   271         {EPtiKeyQwertySemicolon, EPtiCaseUpper, 76, 1},
   251         {EPtiKeyQwertyL, EPtiCaseUpper, 64, 1},
   272         {EPtiKeyQwertyApostrophe, EPtiCaseUpper, 77, 1},
   252         {EPtiKeyQwertySemicolon, EPtiCaseUpper, 65, 1},
   273         {EPtiKeyQwertyZ, EPtiCaseUpper, 78, 1},
   253         {EPtiKeyQwertyApostrophe, EPtiCaseUpper, 66, 0},
   274         {EPtiKeyQwertyX, EPtiCaseUpper, 79, 1},
   254         {0x5b, EPtiCaseUpper, 66, 0},
   275         {EPtiKeyQwertyC, EPtiCaseUpper, 80, 1},
   255         {EPtiKeyQwertyZ, EPtiCaseUpper, 66, 0},
   276         {EPtiKeyQwertyV, EPtiCaseUpper, 81, 1},
   256         {EPtiKeyQwertyX, EPtiCaseUpper, 66, 0},
   277         {EPtiKeyQwertyB, EPtiCaseUpper, 82, 1},
   257         {EPtiKeyQwertyC, EPtiCaseUpper, 66, 0},
   278         {EPtiKeyQwertyN, EPtiCaseUpper, 83, 1},
   258         {EPtiKeyQwertyV, EPtiCaseUpper, 66, 0},
   279         {EPtiKeyQwertyM, EPtiCaseUpper, 84, 1},
   259         {EPtiKeyQwertyB, EPtiCaseUpper, 66, 0},
   280         {EPtiKeyQwertyComma, EPtiCaseUpper, 85, 1},
   260         {EPtiKeyQwertyN, EPtiCaseUpper, 66, 0},
   281         {EPtiKeyQwertyFullstop, EPtiCaseUpper, 86, 1},
   261         {EPtiKeyQwertyM, EPtiCaseUpper, 66, 0},
   282         {EPtiKeyQwertySlash, EPtiCaseUpper, 87, 1},
   262         {EPtiKeyQwertyComma, EPtiCaseUpper, 66, 0},
       
   263         {EPtiKeyQwertyFullstop, EPtiCaseUpper, 66, 0},
       
   264         {EPtiKeyQwertySlash, EPtiCaseUpper, 66, 0},
       
   265     };
   283     };
   266 
   284 
   267 const TInt KMaxStandardQwertyIndex_Urdu = 92;
   285 const TInt KMaxStandardQwertyIndex_Urdu = 88;
   268 
   286 
       
   287 
       
   288 //
       
   289 // Numeric key data table for StandardQwerty
       
   290 //
       
   291 const TPtiNumericKeyBinding StandardQwertyNumericKeysData_table_Urdu[] =
       
   292 	{
       
   293 	{'*',EPtiKeyQwerty7,EPtiCaseUpper},
       
   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 	{';',EPtiKeyQwertySemicolon,EPtiCaseLower},
       
   307 	{'.',EPtiKeyQwertyFullstop,EPtiCaseLower},
       
   308 	{',',EPtiKeyQwertyComma,EPtiCaseLower},
       
   309 	{'E',EPtiKeyQwertyE,EPtiCaseUpper},
       
   310 	{'?',EPtiKeyQwertySlash,EPtiCaseUpper},
       
   311 	};
       
   312 
       
   313 const TInt KNumStandardQwertyNumericKeysEntries_Urdu = 18;
   269 //
   314 //
   270 // Class implementation.
   315 // Class implementation.
   271 //
   316 //
   272 
   317 
   273 CPtiLangDataImplUrdu* CPtiLangDataImplUrdu::NewL()
   318 CPtiLangDataImplUrdu* CPtiLangDataImplUrdu::NewL()
   316     aNumItems = 0;
   361     aNumItems = 0;
   317     return NULL;
   362     return NULL;
   318     }
   363     }
   319 
   364 
   320 
   365 
       
   366 const TPtiNumericKeyBinding* CPtiLangDataImplUrdu::NumericModeKeysTable(TPtiKeyboardType aKeyboardType, TInt& aNumEntries) const
       
   367     {
       
   368     if (aKeyboardType == EPtiKeyboardQwerty4x12)
       
   369         {
       
   370         aNumEntries = KNumStandardQwertyNumericKeysEntries_Urdu;
       
   371         return StandardQwertyNumericKeysData_table_Urdu;
       
   372         }
       
   373 
       
   374     aNumEntries = 0;
       
   375     return NULL;
       
   376     }
       
   377 
       
   378 
       
   379 
       
   380 TBool CPtiLangDataImplUrdu::SuitableForLatinOnlyMode() const
       
   381     {
       
   382     return EFalse;
       
   383     }
       
   384 
       
   385