textinput/peninputgenericitut/src/peninputgenericitutlayout.cpp
branchRCL_3
changeset 15 6c2c2d3ab788
parent 7 6defe5d1bd39
child 19 ac7e4d1d9209
equal deleted inserted replaced
12:5e18d8c489d6 15:6c2c2d3ab788
   168     switch(aCmd)
   168     switch(aCmd)
   169         {
   169         {
   170         case ECmdPenInputLanguage:
   170         case ECmdPenInputLanguage:
   171             {
   171             {
   172             TRAP_IGNORE(SetInputLanguageL(*data));
   172             TRAP_IGNORE(SetInputLanguageL(*data));
   173             
       
   174             }
   173             }
   175             break;
   174             break;
   176         case ECmdPenInputRange:
   175         case ECmdPenInputRange:
   177         	{
   176         	{
   178         	iDataMgr->SetLatinOnly( *data );
   177         	iDataMgr->SetLatinOnly( *data );
   204             }
   203             }
   205             break;
   204             break;
   206         case ECmdPenInputFingerSpelling:
   205         case ECmdPenInputFingerSpelling:
   207             {
   206             {
   208 
   207 
   209             if (UiMgr())
   208             if ( iWesternUiMgr )
   210                 {
   209                 {
   211                 TInt handled = KErrNone;
   210                 TInt handled = KErrNone;
   212                 TRAP_IGNORE(handled = UiMgr()->HandleCommandL(aCmd, aData));
   211                 TRAP_IGNORE( handled = iWesternUiMgr->HandleCommandL( aCmd, aData ));
   213                 return handled;
   212                 return handled;
   214                 }
   213                 }
   215             }
   214             }
   216             break;
   215             break;
   217         case ECmdPenInputFingerMatchList:
   216         case ECmdPenInputFingerMatchList:
   383     return iCurrentUiMgr;        
   382     return iCurrentUiMgr;        
   384     }
   383     }
   385     
   384     
   386 void CGenericItutUiLayout::SetInputModeL(TInt aMode)
   385 void CGenericItutUiLayout::SetInputModeL(TInt aMode)
   387     {
   386     {
   388 		TBool numericOnlyChanged = iDataMgr->IsCharFlagChanged() ? ETrue : EFalse;
   387 	// Input mode can not be set to EnativeNumber in Thai
   389 		//only number mode need judge it
   388     TInt inputLanguage = iDataMgr->InputLanguage();
   390 
   389     if ( aMode ==  ENativeNumber && inputLanguage == ELangThai )
   391 		//  both EStrokeFind and EStroke will be stored as Estroke  ///// 
   390         {
   392 		if ( aMode != iDataMgr->InputMode() || 
   391         aMode = ENumber;
   393 			 aMode == EStroke || aMode == EStrokeFind || 
   392         }
   394 			 aMode == EZhuyin || aMode == EZhuyinFind || 
   393     
   395 			 numericOnlyChanged )
   394     TBool numericOnlyChanged = iDataMgr->IsCharFlagChanged() ? ETrue : EFalse;
       
   395     //only number mode need judge it
       
   396 
       
   397     //  both EStrokeFind and EStroke will be stored as Estroke  ///// 
       
   398     if ( aMode != iDataMgr->InputMode() || 
       
   399         aMode == EStroke || aMode == EStrokeFind || 
       
   400         aMode == EZhuyin || aMode == EZhuyinFind || 
       
   401         numericOnlyChanged )
   396         {
   402         {
   397         // deactivate original uimgr first
   403         // deactivate original uimgr first
   398         if (iCurrentUiMgr 
   404         if (iCurrentUiMgr 
   399             && iCurrentUiMgr->CurrentState()
   405             && iCurrentUiMgr->CurrentState()
   400             && iCurrentUiMgr->CurrentState()->StateType() != CGenericItutUiMgrBase::EStateSpelling)
   406             && iCurrentUiMgr->CurrentState()->StateType() != CGenericItutUiMgrBase::EStateSpelling)