textinput/peninputgenericvkb/src/peninputgenericvkbwindow.cpp
branchRCL_3
changeset 11 c8fb4cf7b3ae
parent 9 e6a39382bb9c
child 12 5e18d8c489d6
equal deleted inserted replaced
9:e6a39382bb9c 11:c8fb4cf7b3ae
  1217     {
  1217     {
  1218     aRangeItems.Reset();
  1218     aRangeItems.Reset();
  1219     TInt currentRange = IntContext( EPeninputDataTypeCurrentRange );
  1219     TInt currentRange = IntContext( EPeninputDataTypeCurrentRange );
  1220     TInt permittedRange = IntContext( EPeninputDataTypePermittedRange );
  1220     TInt permittedRange = IntContext( EPeninputDataTypePermittedRange );
  1221     TInt currentAccent = IntContext( EPeninputDataTypeCurrentAccent );
  1221     TInt currentAccent = IntContext( EPeninputDataTypeCurrentAccent );
       
  1222     TInt currentLanguage = IntContext( EPeninputDataTypeInputLanguage );
  1222     
  1223     
  1223     CPeninputRangeBarInfo* rbinfo= ConfigInfo()->RangeBarInfo();
  1224     CPeninputRangeBarInfo* rbinfo= ConfigInfo()->RangeBarInfo();
  1224     CPeninputRangeInfo* rgninfo = NULL;
  1225     CPeninputRangeInfo* rgninfo = NULL;
  1225    
  1226    
  1226     //add accent items
  1227     //add accent items
  1251             item.iText.Copy( iRangeLabels.iLabelNativeChar );
  1252             item.iText.Copy( iRangeLabels.iLabelNativeChar );
  1252             aRangeItems.Append( item );
  1253             aRangeItems.Append( item );
  1253             }
  1254             }
  1254         }
  1255         }
  1255     
  1256     
  1256     if ( permittedRange & ERangeNativeNumber )
  1257     if (( permittedRange & ERangeNativeNumber ) && ( currentRange != ERangeNumber ) 
       
  1258     && (( ELangArabic == currentLanguage ) || ( ELangFarsi == currentLanguage ) 
       
  1259     || ( ELangUrdu == currentLanguage )))
  1257         {
  1260         {
  1258         rgninfo = rbinfo->FindRange( ERangeNativeNumber );
  1261         rgninfo = rbinfo->FindRange( ERangeNativeNumber );
  1259         if ( rgninfo && currentRange != ERangeNativeNumber )
  1262         if ( rgninfo && currentRange != ERangeNativeNumber )
  1260             {
  1263             {
  1261             item.iCommand = EPeninputVkbLayoutNativeNumber;
  1264             item.iCommand = EPeninputVkbLayoutNativeNumber;
  1262             item.iText.Copy( iRangeLabels.iLabelNativeNumber );
  1265             item.iText.Copy( iRangeLabels.iLabelNativeNumber );
  1263             aRangeItems.Append( item );
  1266             aRangeItems.Append( item );
  1264             }
  1267             }
  1265         }
  1268         }
       
  1269     else if(( permittedRange & ERangeNumber ) && ( currentRange != ERangeNumber ) 
       
  1270     		&& !(( ELangThai == currentLanguage ) && ( currentRange == ERangeNativeNumber )))
       
  1271        {
       
  1272        rgninfo = rbinfo->FindRange( ERangeNumber );
       
  1273        if ( rgninfo && currentRange != ERangeNumber )
       
  1274            {
       
  1275            item.iCommand = EPeninputVkbLayoutLatinNumber;
       
  1276            item.iText.Copy( iRangeLabels.iLabelLatinNumber );
       
  1277     	   aRangeItems.Append( item );
       
  1278     	   }
       
  1279         }
       
  1280     else
       
  1281       	{        
       
  1282             // Do nothing
       
  1283        }    
  1266    
  1284    
  1267     if ( permittedRange & ERangeEnglish )
  1285     if ( permittedRange & ERangeEnglish )
  1268         {
  1286         {
  1269         rgninfo = rbinfo->FindRange( ERangeEnglish );
  1287         rgninfo = rbinfo->FindRange( ERangeEnglish );
  1270         if ( rgninfo && currentRange != ERangeEnglish )
  1288         if ( rgninfo && currentRange != ERangeEnglish )
  1273             item.iText.Copy( iRangeLabels.iLabelLatinChar );
  1291             item.iText.Copy( iRangeLabels.iLabelLatinChar );
  1274             aRangeItems.Append( item );
  1292             aRangeItems.Append( item );
  1275             }
  1293             }
  1276         }
  1294         }
  1277     
  1295     
  1278     if ( permittedRange & ERangeNumber )
       
  1279         {
       
  1280         rgninfo = rbinfo->FindRange( ERangeNumber );
       
  1281         if ( rgninfo && currentRange != ERangeNumber )
       
  1282             {
       
  1283             item.iCommand = EPeninputVkbLayoutLatinNumber;
       
  1284             item.iText.Copy( iRangeLabels.iLabelLatinNumber );
       
  1285             aRangeItems.Append( item );
       
  1286             }
       
  1287         }  
       
  1288     }
  1296     }
  1289 
  1297 
  1290 // ---------------------------------------------------------------------------
  1298 // ---------------------------------------------------------------------------
  1291 // Load range labels for range list
  1299 // Load range labels for range list
  1292 // ---------------------------------------------------------------------------
  1300 // ---------------------------------------------------------------------------