textinput/peninputgenericitut/src/peninputgenericitutdatamgr.cpp
branchRCL_3
changeset 10 6defe5d1bd39
parent 7 a47de9135b21
child 12 4eb1ae11334f
equal deleted inserted replaced
8:6ceef9a83b1a 10:6defe5d1bd39
   301 				}    
   301 				}    
   302 			}
   302 			}
   303 		} 
   303 		} 
   304 	 
   304 	 
   305 
   305 
   306 	iVkNumTextForPrtWest = AknLayoutScalable_Avkon::cell_ituss_key_t1(0).LayoutLine(); 
   306 	// Num text row
       
   307 	iVkBigNumTextForPrtWest = AknLayoutScalable_Avkon::cell_ituss_key_t1(0).LayoutLine(); 
       
   308 	iVkNumTextForPrtWest = AknLayoutScalable_Avkon::cell_ituss_key_t1(1).LayoutLine();
       
   309 	
   307 	// Key text row 1                               
   310 	// Key text row 1                               
   308 	iVkAlphaText1ForPrtWest = AknLayoutScalable_Avkon::cell_ituss_key_t2(0).LayoutLine();
   311 	iVkAlphaText1ForPrtWest = AknLayoutScalable_Avkon::cell_ituss_key_t2(1).LayoutLine();
   309 	iVkAlphaText3ForPrtWest = AknLayoutScalable_Avkon::cell_ituss_key_t4(0).LayoutLine();                                                              
   312 	// Key text row 3
       
   313 	iVkAlphaText3ForPrtWest = AknLayoutScalable_Avkon::cell_ituss_key_t4(1).LayoutLine();
   310 	// Key text row 2                               
   314 	// Key text row 2                               
   311 	iVkAlphaText2ForPrtWest = AknLayoutScalable_Avkon::cell_ituss_key_t3(0).LayoutLine();
   315 	iVkAlphaText2ForPrtWest = AknLayoutScalable_Avkon::cell_ituss_key_t3(1).LayoutLine();
   312 	
   316 	
   313 	// close button
   317 	// close button
   314 	TAknWindowLineLayout funcbtn, funcbtnbg, funcbtninner;
   318 	TAknWindowLineLayout funcbtn, funcbtnbg, funcbtninner;
   315 	TAknLayoutRect funcrect, funcbgrect, funcinnerrect, arrowleftinnerrect, arrowrightinnerrect;
   319 	TAknLayoutRect funcrect, funcbgrect, funcinnerrect, arrowleftinnerrect, arrowrightinnerrect;
   316 	TAknLayoutRect optioninnerrect, backspaceinnerrect;
   320 	TAknLayoutRect optioninnerrect, backspaceinnerrect;
  1197             iInputMode = aMode;
  1201             iInputMode = aMode;
  1198             }
  1202             }
  1199         }
  1203         }
  1200     }
  1204     }
  1201 
  1205 
  1202 TBool CGenericItutDataMgr::IsChineseGlobalLanguage()
  1206 
  1203     {
  1207 
  1204     CRepository* repository = NULL;
  1208 
  1205     TRAPD(ret, repository = CRepository::NewL(KCRUidAknFep));
  1209 void CGenericItutDataMgr::SetChineseSpellFlag( TBool aFlag )
  1206     if (ret != KErrNone)
  1210 	{
  1207         {
  1211 	iIsChineseSpell = aFlag;
  1208         return EPluginInputModeAll;
  1212 	}
  1209         }
  1213 
  1210     TInt curLanguage ;
  1214 TBool CGenericItutDataMgr::IsChineseSpellMode()
  1211     repository->Get(KAknFepInputTxtLang, curLanguage);
  1215 	{
  1212     delete repository;
  1216 	return iIsChineseSpell;
  1213     
  1217 	}
  1214     return (curLanguage == ELangPrcChinese || curLanguage == ELangHongKongChinese 
  1218 
  1215          || curLanguage == ELangTaiwanChinese);
  1219 TAny* CGenericItutDataMgr::RequestDataForPortraitWestUIAndChineseSpellUI(TInt aDataType)
  1216     }
       
  1217 
       
  1218 TAny* CGenericItutDataMgr::RequestDataForPortraitWest(TInt aDataType)
       
  1219     {
  1220     {
  1220     switch ( aDataType )
  1221     switch ( aDataType )
  1221         {
  1222         {
  1222         case EScreenSize:
  1223         case EScreenSize:
  1223             {
  1224             {
  1227             {
  1228             {
  1228             return &iLayoutOffsetForPrtWest;
  1229             return &iLayoutOffsetForPrtWest;
  1229             }
  1230             }
  1230         case ELayoutRect:
  1231         case ELayoutRect:
  1231             {
  1232             {
  1232             if ( IsChineseGlobalLanguage())
  1233             return &iLayoutRectForPrtWest;
  1233                 {
       
  1234                 return &iLayoutRect;
       
  1235                 }
       
  1236             else
       
  1237                 {
       
  1238                 return &iLayoutRectForPrtWest;
       
  1239                 }
       
  1240             }
  1234             }
  1241         case EIcfRect:
  1235         case EIcfRect:
  1242             {
  1236             {
  1243             return &iIcfRectForPrtWest;
  1237             return &iIcfRectForPrtWest;
  1244             }
  1238             }
  1245         case EIcfFont:
  1239         case EIcfFont:
  1246             {
  1240             {
  1247             if ( IsChineseGlobalLanguage())
  1241             if ( IsChineseSpellMode())
  1248                 {
  1242             	{
  1249                 return IsChinese() ? reinterpret_cast<TAny*>(iIcfFontCn) : 
  1243 				return reinterpret_cast<TAny*>(iIcfFont);
  1250                     reinterpret_cast<TAny*>(iIcfFont);
  1244             	}
  1251                 }
       
  1252             else
  1245             else
  1253                 {
  1246                 {
  1254                 return reinterpret_cast<TAny*>(iIcfFontForPrtWest);
  1247                 return reinterpret_cast<TAny*>(iIcfFontForPrtWest);
  1255                 }
  1248                 }
  1256             }
  1249             }
  1259             {
  1252             {
  1260             return &iBackspaceRectForPrtWest;
  1253             return &iBackspaceRectForPrtWest;
  1261             }
  1254             }
  1262         case EKeypadRect:
  1255         case EKeypadRect:
  1263             {
  1256             {
  1264             if ( IsChineseGlobalLanguage())
  1257 			if ( IsChineseSpellMode())
  1265                 {
  1258             	{
  1266                 return IsChinese() ? &iKeypadRectCn : &iKeypadRect;
  1259 				return &iKeypadRect;
  1267                 }
  1260             	}
  1268             else
  1261             else
  1269                 {
  1262                 {
  1270                 return &iKeypadRectForPrtWest;
  1263                 return &iKeypadRectForPrtWest;
  1271                 }
  1264                 }
  1272             }               
  1265             }               
  1273         case EKeypadCellRects:
  1266         case EKeypadCellRects:
  1274             {
  1267             {
  1275             if ( IsChineseGlobalLanguage())
  1268             if ( IsChineseSpellMode())
  1276                 {
  1269             	{
  1277                 return IsChinese() ? &iKeypadCellRectsCn : &iKeypadCellRects;
  1270 				return &iKeypadCellRects;
  1278                 }
  1271             	}
  1279             else
  1272             else
  1280                 {
  1273                 {
  1281                 return &iKeypadCellRectsForPrtWest;
  1274                 return &iKeypadCellRectsForPrtWest;
  1282                 }
  1275                 }
  1283             }
  1276             }
  1284         case EKeypadLeftTextLine:
  1277         case EKeypadLeftTextLine:
  1285             {
  1278             {
  1286             if ( IsChineseGlobalLanguage())
  1279             if ( IsChineseSpellMode())
  1287                 {
  1280                 {
  1288                 return &iVkNumText;
  1281                 return &iVkNumText;
  1289                 }
  1282                 }
  1290             else
  1283             else
  1291                 {
  1284                 {
  1292                 return &iVkNumTextForPrtWest;
  1285                 // Modify new begin
       
  1286                 if ( iInputMode == ENumber || iInputMode == ENativeNumber )
       
  1287                 	{
       
  1288 					return &iVkBigNumTextForPrtWest;
       
  1289                 	}
       
  1290                 else
       
  1291                 	{
       
  1292 					return &iVkNumTextForPrtWest;
       
  1293                 	}
       
  1294                 // Modify new end
  1293                 }
  1295                 }
  1294             }
  1296             }
  1295         case EKeypadRightTextLine1:
  1297         case EKeypadRightTextLine1:
  1296             {
  1298             {
  1297             if ( IsChineseGlobalLanguage())
  1299             if ( IsChineseSpellMode())
  1298                 {
  1300                 {
  1299                 return IsThai() ? &iVkAlphaText1ForThai : &iVkAlphaText1;
  1301                 return IsThai() ? &iVkAlphaText1ForThai : &iVkAlphaText1;
  1300                 }
  1302                 }
  1301             else
  1303             else
  1302                 {
  1304                 {
  1303                 return &iVkAlphaText1ForPrtWest;
  1305                 return &iVkAlphaText1ForPrtWest;
  1304                 }
  1306                 }
  1305             }
  1307             }
  1306         case EKeypadRightTextLine2:
  1308         case EKeypadRightTextLine2:
  1307             {
  1309             {
  1308             if ( IsChineseGlobalLanguage())
  1310             if ( IsChineseSpellMode())
  1309                 {
  1311                 {
  1310                 return IsThai() ? &iVkAlphaText2ForThai : &iVkAlphaText2;
  1312                 return IsThai() ? &iVkAlphaText2ForThai : &iVkAlphaText2;
  1311                 }
  1313                 }
  1312             else
  1314             else
  1313                 {
  1315                 {
  1314                 return &iVkAlphaText2ForPrtWest;
  1316                 return &iVkAlphaText2ForPrtWest;
  1315                 }
  1317                 }
  1316             }
  1318             }
  1317         case EKeypadRightTextLine3:
  1319         case EKeypadRightTextLine3:
  1318             {
  1320             {
  1319             if ( IsChineseGlobalLanguage())
  1321             if ( IsChineseSpellMode())
  1320                 {
  1322                 {
  1321                 return IsThai() ? &iVkAlphaText3ForThai : &iVkAlphaText3;
  1323                 return IsThai() ? &iVkAlphaText3ForThai : &iVkAlphaText3;
  1322                 }
  1324                 }
  1323             else
  1325             else
  1324                 {
  1326                 {
  1485             {
  1487             {
  1486             return &iOptionInnerRectForPrtWest;
  1488             return &iOptionInnerRectForPrtWest;
  1487             }         
  1489             }         
  1488         case EItutPosOk:
  1490         case EItutPosOk:
  1489             {
  1491             {
  1490             if ( IsChineseGlobalLanguage())
  1492             if ( IsChineseSpellMode())
  1491                 {
  1493                 {
  1492                 return &iOkRect;
  1494                 return &iOkRect;
  1493                 }
  1495                 }
  1494             else
  1496             else
  1495                 {
  1497                 {
  1496                 return &iOKRectForPrtWest;
  1498                 return &iOKRectForPrtWest;
  1497                 }
  1499                 }
  1498             }
  1500             }
  1499         case EItutPosCancel:
  1501         case EItutPosCancel:
  1500             {
  1502             {
  1501             if ( IsChineseGlobalLanguage())
  1503             if ( IsChineseSpellMode())
  1502                 {
  1504                 {
  1503                 return &iCancelRect;
  1505                 return &iCancelRect;
  1504                 }
  1506                 }
  1505             else
  1507             else
  1506                 {
  1508                 {
  1507                 return &iCancelRectForPrtWest;
  1509                 return &iCancelRectForPrtWest;
  1508                 }
  1510                 }
  1509             }
  1511             }
  1510         case EBtnTextLine:
  1512         case EBtnTextLine:
  1511             {
  1513             {
  1512             if ( IsChineseGlobalLanguage())
  1514             if ( IsChineseSpellMode())
  1513                 {
  1515                 {
  1514                 return &iBtnTextFormat;
  1516                 return &iBtnTextFormat;
  1515                 }
  1517                 }
  1516             else
  1518             else
  1517                 {
  1519                 {
  1518                 return &iBtnOKTextForPrtWest;
  1520                 return &iBtnOKTextForPrtWest;
  1519                 }
  1521                 }
  1520             }
  1522             }
  1521         case ESpellTextCancle:
  1523         case ESpellTextCancle:
  1522             {
  1524             {
  1523             if ( IsChineseGlobalLanguage())
  1525             if ( IsChineseSpellMode())
  1524                 {
  1526                 {
  1525                 return &iBtnTextFormat1;
  1527                 return &iBtnTextFormat1;
  1526                 }
  1528                 }
  1527             else
  1529             else
  1528                 {
  1530                 {
  1529                 return &iBtnCancelTextForPrtWest;
  1531                 return &iBtnCancelTextForPrtWest;
  1530                 }
  1532                 }
  1531             }
  1533             }
  1532         case ESpellICFRect:
  1534         case ESpellICFRect:
  1533             {
  1535             {
  1534             if ( IsChineseGlobalLanguage())
  1536             if ( IsChineseSpellMode())
  1535                 {
  1537                 {
  1536                 return &iSpellICFRect;
  1538                 return &iSpellICFRect;
  1537                 }
  1539                 }
  1538             else
  1540             else
  1539                 {
  1541                 {
  1540                 return &iSpellICFRectForPrtWest;
  1542                 return &iSpellICFRectForPrtWest;
  1541                 }
  1543                 }
  1542             }
  1544             }
  1543         case ESpellClrRect:
  1545         case ESpellClrRect:
  1544             {
  1546             {
  1545             if ( IsChineseGlobalLanguage())
  1547             if ( IsChineseSpellMode())
  1546                 {
  1548                 {
  1547                 return &iSpellClrRect;
  1549                 return &iSpellClrRect;
  1548                 }
  1550                 }
  1549             else
  1551             else
  1550                 {
  1552                 {
  1551                 return &iSpellICFBtnRectForPrtWest;
  1553                 return &iSpellICFBtnRectForPrtWest;
  1552                 }
  1554                 }
  1553             }
  1555             }
  1554         case ESpellClrInnerRect:
  1556         case ESpellClrInnerRect:
  1555             {
  1557             {
  1556             if ( IsChineseGlobalLanguage())
  1558             if ( IsChineseSpellMode())
  1557                 {
  1559                 {
  1558                 return &iSpellClrInnerRect;
  1560                 return &iSpellClrInnerRect;
  1559                 }
  1561                 }
  1560             else
  1562             else
  1561                 {
  1563                 {
  1566             {
  1568             {
  1567             return &iSpellEditIndicator;
  1569             return &iSpellEditIndicator;
  1568             }
  1570             }
  1569         case ESpellQueryPaneRect:
  1571         case ESpellQueryPaneRect:
  1570             {
  1572             {
  1571             if ( IsChineseGlobalLanguage())
  1573             if ( IsChineseSpellMode())
  1572                 {
  1574                 {
  1573                 return &iSpellQueryPaneRect;
  1575                 return &iSpellQueryPaneRect;
  1574                 }
  1576                 }
  1575             else
  1577             else
  1576                 {
  1578                 {
  1663     }
  1665     }
  1664 TAny* CGenericItutDataMgr::RequestData(TInt aDataType)
  1666 TAny* CGenericItutDataMgr::RequestData(TInt aDataType)
  1665     {
  1667     {
  1666     if ( IsPortraitWest())
  1668     if ( IsPortraitWest())
  1667         {
  1669         {
  1668         return RequestDataForPortraitWest( aDataType );
  1670         return RequestDataForPortraitWestUIAndChineseSpellUI( aDataType );
  1669         }
  1671         }
  1670     switch ( aDataType )
  1672     switch ( aDataType )
  1671         {
  1673         {
  1672         case EScreenSize:
  1674         case EScreenSize:
  1673             return &iScreenSize;
  1675             return &iScreenSize;
  1859                                         :
  1861                                         :
  1860                                          iPtiEngine( aPtiEngine ),
  1862                                          iPtiEngine( aPtiEngine ),
  1861                                          iLanguage(ELangNone),
  1863                                          iLanguage(ELangNone),
  1862                                          iInputMode(KInvalidImMode),
  1864                                          iInputMode(KInvalidImMode),
  1863                                          iCase(EAknEditorUpperCase),
  1865                                          iCase(EAknEditorUpperCase),
       
  1866                                          iIsChineseSpell( EFalse ),
  1864                                          iConfigResId(0),
  1867                                          iConfigResId(0),
  1865                                          iLayoutContext(aLayoutContext),
  1868                                          iLayoutContext(aLayoutContext),
  1866                                          iCurrentScriptIdx(KInvalidIndex),
  1869                                          iCurrentScriptIdx(KInvalidIndex),
  1867                                          iLandScape(EFalse),
  1870                                          iLandScape(EFalse),
  1868                                          iSpellMode(EFalse)
  1871                                          iSpellMode(EFalse)