textinput/peninputgenericitut/src/peninputgenericitutwindowmanager.cpp
branchRCL_3
changeset 7 a47de9135b21
parent 0 eb1f2e154e89
child 8 6ceef9a83b1a
equal deleted inserted replaced
3:f5a1e66df979 7:a47de9135b21
    43 #include "peninputgenericitutdatamgr.h"
    43 #include "peninputgenericitutdatamgr.h"
    44 #include "peninputgenericitutuimgrbase.h"
    44 #include "peninputgenericitutuimgrbase.h"
    45 #include "peninputgenericitutuistatebase.h"
    45 #include "peninputgenericitutuistatebase.h"
    46 #include "peninputgenericitutconverter.h"
    46 #include "peninputgenericitutconverter.h"
    47 
    47 
       
    48 _LIT(KEmptyString, "");
    48 const TInt KPeriodicTimerIntervalSec(2500000);
    49 const TInt KPeriodicTimerIntervalSec(2500000);
    49 /* Teleca change end, 18.05.2009 ssal */
    50 /* Teleca change end, 18.05.2009 ssal */
    50 CGenericItutWindowManager* CGenericItutWindowManager::NewL(CGenericItutUiLayout* aLayoutOwner,
    51 CGenericItutWindowManager* CGenericItutWindowManager::NewL(CGenericItutUiLayout* aLayoutOwner,
    51                                                            CGenericItutDataMgr* aDataMgr)
    52                                                            CGenericItutDataMgr* aDataMgr)
    52     {
    53     {
   281     switch (aCmd)
   282     switch (aCmd)
   282         {
   283         {
   283         case ECmdPenInputIsSecretText:
   284         case ECmdPenInputIsSecretText:
   284             {
   285             {
   285             iWindow->Icf()->SetTextIsSecret(*aData);
   286             iWindow->Icf()->SetTextIsSecret(*aData);
   286             iWindow->InputModeSwitch()->SetSecretEditor(*aData);
   287             CPeninputLayoutInputmodelChoice* choice = 
       
   288                 iWindow->InputModeSwitch();
       
   289             if ( choice )
       
   290                 {
       
   291                 choice->SetSecretEditor(*aData);
       
   292                 }
   287             }
   293             }
   288             break;
   294             break;
   289         case ECmdPenInputIsNumberGrouping:
   295         case ECmdPenInputIsNumberGrouping:
   290             {
   296             {
   291             iWindow->Icf()->SetNumberGrouping(*aData);
   297             iWindow->Icf()->SetNumberGrouping(*aData);
   297             DimArrowKeys( IsDimArrowKeys );
   303             DimArrowKeys( IsDimArrowKeys );
   298             }
   304             }
   299             break;
   305             break;
   300         case ECmdPenInputFingerMatchIndicator:
   306         case ECmdPenInputFingerMatchIndicator:
   301             {
   307             {
   302             UpdateIndicatorL(aData);
   308             if ( IsPortraitWest() && ( !iDataMgr->IsChineseGlobalLanguage()))
       
   309                 {
       
   310                 iWindow->UpdateIndiBubbleL( aData );
       
   311                 }
       
   312             else
       
   313                 {
       
   314                 UpdateIndicatorL( aData );
       
   315                 }
   303             handle = ETrue;
   316             handle = ETrue;
   304             }
   317             }
   305             break;
   318             break;
   306         case ECmdPenInputSetPromptText:
   319         case ECmdPenInputSetPromptText:
   307             {
   320             {
   335             break;
   348             break;
   336             }
   349             }
   337 
   350 
   338         case ECmdPenInputEnableIndicatorButton:
   351         case ECmdPenInputEnableIndicatorButton:
   339             {
   352             {
   340             if (*data)
   353             if ( NULL != static_cast<CAknFepCtrlCommonButton*>(Control(ECtrlIdIndicator)))
   341                 {
   354                 {
   342                 static_cast<CAknFepCtrlCommonButton*>(
   355                 if (*data)
   343                                               Control(ECtrlIdIndicator))->SetDimmed(EFalse);
   356                     {
   344                 }
   357                     static_cast<CAknFepCtrlCommonButton*>(
   345             else
   358                                                   Control(ECtrlIdIndicator))->SetDimmed(EFalse);
   346                 {
   359                     }
   347                 static_cast<CAknFepCtrlCommonButton*>(
   360                 else
   348                                               Control(ECtrlIdIndicator))->SetDimmed(ETrue);
   361                     {
       
   362                     static_cast<CAknFepCtrlCommonButton*>(
       
   363                                                   Control(ECtrlIdIndicator))->SetDimmed(ETrue);
       
   364                     }
   349                 }
   365                 }
   350             }
   366             }
   351         break;
   367         break;
   352         case ECmdPenInputSymbolOfHardKeyOne:
   368         case ECmdPenInputSymbolOfHardKeyOne:
   353             {
   369             {
   414 CFepUiLayout* CGenericItutWindowManager::UiLayout()
   430 CFepUiLayout* CGenericItutWindowManager::UiLayout()
   415     {
   431     {
   416     return iLayoutOwner;
   432     return iLayoutOwner;
   417     }
   433     }
   418     
   434     
       
   435 TBool CGenericItutWindowManager::IsPortraitWest()
       
   436     {
       
   437     return !iDataMgr->IsChinese() && !iDataMgr->IsLandScape();
       
   438     }
   419 void CGenericItutWindowManager::HandleAppInfoChangeL(const TDesC& aInfo)
   439 void CGenericItutWindowManager::HandleAppInfoChangeL(const TDesC& aInfo)
   420     {
   440     {
   421     CGenericItutUiLayout * itutLayoutOwner;
   441     CGenericItutUiLayout * itutLayoutOwner;
   422     itutLayoutOwner = static_cast<CGenericItutUiLayout *>(UiLayout());
   442     itutLayoutOwner = static_cast<CGenericItutUiLayout *>(UiLayout());
   423     if ( aInfo.Length() > 0 && 
   443     if ( aInfo.Length() > 0 && 
   424          itutLayoutOwner->UiMgr()->CurrentState() &&
   444          itutLayoutOwner->UiMgr()->CurrentState() &&
   425          itutLayoutOwner->UiMgr()->CurrentState()->StateType() !=
   445          itutLayoutOwner->UiMgr()->CurrentState()->StateType() !=
   426             CGenericItutUiMgrBase::EStateSpelling && 
   446             CGenericItutUiMgrBase::EStateSpelling && 
   427          !iInEditWordQueryDlg)
   447          !iInEditWordQueryDlg)
   428         {
   448         {
       
   449         if ( IsPortraitWest() && (!iDataMgr->IsChineseGlobalLanguage()))
       
   450             {
       
   451 			iWindow->Icf()->HideBubble();
       
   452             iWindow->SetIndiWithTextFlag( ETrue );
       
   453             iWindow->IndiBubbleWithText();
       
   454             
       
   455             if ( iDataMgr->IndicatorData().iIndicatorImgID != 0 &&
       
   456                  iDataMgr->IndicatorData().iIndicatorMaskID != 0 && 
       
   457                  iDataMgr->IndicatorData().iIndicatorTextImgID != 0 &&
       
   458                  iDataMgr->IndicatorData().iIndicatorTextMaskID != 0 )
       
   459                 {
       
   460                 iWindow->SetIndiBubbleImageL( 
       
   461                         iDataMgr->IndicatorData().iIndicatorImgID,
       
   462                         iDataMgr->IndicatorData().iIndicatorMaskID,
       
   463                         iDataMgr->IndicatorData().iIndicatorTextImgID,
       
   464                         iDataMgr->IndicatorData().iIndicatorTextMaskID);
       
   465                 }
       
   466             }
   429         iWindow->Icf()->ShowBubble(aInfo,iWindow->Icf()->MsgBubbleCtrl()->Rect());
   467         iWindow->Icf()->ShowBubble(aInfo,iWindow->Icf()->MsgBubbleCtrl()->Rect());
   430         }
   468         }
   431     else
   469     else
   432         {
   470         {
   433         iWindow->Icf()->HideBubble();
   471         if ((!IsPortraitWest()) || iDataMgr->IsChineseGlobalLanguage())
       
   472             {
       
   473             iWindow->Icf()->HideBubble();
       
   474             }
       
   475         else
       
   476             {
       
   477 			if ( itutLayoutOwner->UiMgr()->CurrentState() &&
       
   478 			     itutLayoutOwner->UiMgr()->CurrentState()->StateType() !=
       
   479 			            CGenericItutUiMgrBase::EStateSpelling )
       
   480 				{
       
   481 				iWindow->Icf()->HideBubble();
       
   482 				iWindow->SetIndiWithTextFlag( EFalse );
       
   483 				iWindow->IndiBubbleWithoutText();
       
   484 				}
       
   485 				
       
   486 				if ( iDataMgr->IndicatorData().iIndicatorImgID != 0 &&
       
   487 					 iDataMgr->IndicatorData().iIndicatorMaskID != 0 && 
       
   488 					 iDataMgr->IndicatorData().iIndicatorTextImgID != 0 &&
       
   489 					 iDataMgr->IndicatorData().iIndicatorTextMaskID != 0 )
       
   490 					{
       
   491 					iWindow->SetIndiBubbleImageL( 
       
   492 							iDataMgr->IndicatorData().iIndicatorImgID,
       
   493 							iDataMgr->IndicatorData().iIndicatorMaskID,
       
   494 							iDataMgr->IndicatorData().iIndicatorTextImgID,
       
   495 							iDataMgr->IndicatorData().iIndicatorTextMaskID);
       
   496 					}
       
   497             
       
   498             iWindow->Icf()->ShowBubble( KEmptyString, 
       
   499                     iWindow->Icf()->MsgBubbleCtrl()->Rect());
       
   500             }
   434         }
   501         }
   435     }
   502     }
   436 
   503 
   437 /* Teleca change begin, 19.05.2009 ssal */
   504 /* Teleca change begin, 19.05.2009 ssal */
   438 void CGenericItutWindowManager::DisplayWarningNote(const TDesC& aInfo)
   505 void CGenericItutWindowManager::DisplayWarningNote(const TDesC& aInfo)