fep/aknfep/src/AknFepUIInputStateEntryMiniQwertyPinyinPhrase.cpp
changeset 36 a7632c26d895
parent 35 0f326f2e628e
child 42 b3eaa440ab06
--- a/fep/aknfep/src/AknFepUIInputStateEntryMiniQwertyPinyinPhrase.cpp	Fri Jul 23 16:49:01 2010 +0800
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,358 +0,0 @@
-/*
-* Copyright (c) 2007 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0""
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:           
-*       Provides the  TAknFepInputStateEntryMiniQwertyPinyinPhrase methods.
-*
-*/
-
-
-
-
-
-
-
-
-
-
-
-#include "AknFepUIManagerStateInterface.h"  //MAknFepUIManagerStateInterface
-#include "AknFepUiCtrlContainerChinese.h"
-#include "AknFepManagerUIInterface.h"       //MAknFepManagerUIInterface
-#include "AknFepUICtrlCandidatePane.h"
-#include "AknFepUICtrlPinyinPopup.h"
-#include "AknFepUIInputStateEntryMiniQwertyPinyinPhrase.h"
-#include "aknfepuictrleditpane.h"           //pinyin phrase creation
-
-#include "AknFepManager.h"                  //FepMan flag
-#include "AknFepUICtrlInputPane.h"
-#include "AknFepUiCtrlContainerChinese.h"
-#include <aknfep.rsg>
-#include <PtiEngine.h>      //CPtiEngine
-#include <e32keys.h>        //keys  
-#include <avkon.rsg>
-
-const TInt KManualChangeState = 0; 
-//const TUint16 KSegment = 0x0020;
-// ---------------------------------------------------------------------------
-// TAknFepInputStateEntryMiniQwertyPinyinPhrase::TAknFepInputStateEntryMiniQwertyPinyinPhrase
-// C++ default constructor
-// ---------------------------------------------------------------------------
-//
-TAknFepInputStateEntryMiniQwertyPinyinPhrase::TAknFepInputStateEntryMiniQwertyPinyinPhrase(
-     MAknFepUIManagerStateInterface* aOwner,MAknFepUICtrlContainerChinese* aUIContainer ):
-     TAknFepInputMiniQwertyPinyinPhraseBase( aOwner, aUIContainer)
-    {
-    iState = EEntry;
-    iOwner->PtiEngine()->SetInputMode( EPtiEnginePinyinPhraseQwerty );
-    iOwner->PtiEngine()->SetCase( EPtiCaseLower );
-    UIContainer()->SetLayout( MAknFepUICtrlContainerChinese::ELayoutKeystroke );
-    UIContainer()->FocusCandidatePane( ETrue );
-    UIContainer()->CandidatePane()->SelectFirstPhrase();
-    UIContainer()->CandidatePane()->ShowCandidateOrdinals( EFalse );
-    UIContainer()->EditPaneWindow()->DeactiveCursor();
-    UIContainer()->SetFepMan( iOwner->FepMan() );
-    // so that it could handle EKeyCBA1
-    iOwner->FepMan()->EntryPhrase( ETrue );
-    RefreshUI( ETrue );
-    }
-// ---------------------------------------------------------------------------
-// TAknFepInputStateEntryMiniQwertyPinyinPhrase::HandleKeyL
-// Handle system key press event.
-// ---------------------------------------------------------------------------
-//     
-TBool TAknFepInputStateEntryMiniQwertyPinyinPhrase::HandleKeyL( TInt aKey,
-    TKeyPressLength aLength )
-    {
-    TBool ret = ETrue;
-    MAknFepUICtrlCandidatePane* candidatePane = UIContainer()->CandidatePane();
-    switch ( aKey )
-        {
-        case EStdKeyLeftFunc: //chr key
-        case EStdKeySpace:
-        case EStdKeyBackspace:
-        case EStdKeyEnter:
-            {
-            ret = TAknFepInputMiniQwertyPinyinPhraseBase::HandleKeyL( aKey,
-                aLength );
-            break;
-            }
-        case EKeyLeftShift:
-        case EKeyRightShift:
-        case EKeyLeftCtrl:
-        case EKeyRightCtrl:
-        case EKeyRightFunc://fn 
-        case EKeyLeftFunc: // fn 
-            {
-            iOwner->FepMan()->TryCloseUiL();
-            ret =EFalse;
-            break;
-            }
-        case EStdKeyUpArrow:
-            {
-            if ( candidatePane->IsFirstPage() )
-                {
-                UIContainer()->EditPaneWindow()->SetAutoChangeStateFlag( KManualChangeState );
-                iOwner->ChangeState( EMiniQwertyEdit );
-                ret = ETrue;
-                }
-            else 
-                {
-                candidatePane->PreviousCandidatePage();
-                candidatePane->SetCandidateBuffer();
-                candidatePane->SelectFirst();
-                UpdateIndicator();
-                }
-            break;
-            }
-        case EStdKeyDownArrow:
-            {
-            ret = TAknFepInputStateCandidateQwertyBaseChinesePhrase::HandleKeyL( aKey, aLength );
-            break;
-            }
-        case EStdKeyRightArrow:
-            {
-            if ( candidatePane->VisibleCandidateCount()!= 1 )
-                {
-                iOwner->ChangeState( ECandidate );
-                candidatePane->SelectNext();
-                UpdateIndicator();
-                }
-            break;
-            }
-        case EStdKeyLeftArrow:
-            {
-            if ( candidatePane->VisibleCandidateCount()!= 1 )
-                {
-                iOwner->ChangeState( ECandidate );
-                TInt numbertotal = UIContainer()->CandidatePane()->VisibleCandidateCount();
-                UIContainer()->CandidatePane()->SelectIndex( numbertotal - 1 );
-                UpdateIndicator();
-                }
-            break;
-            }
-        case EStdKeyDevice0: //select key 
-        case EStdKeyDevice3: // msk 
-            {
-            ret = TAknFepInputMiniQwertyPinyinPhraseBase::HandleKeyL(
-               aKey, aLength );
-            break;
-            }
-        case EStdKeyDevice1:
-            {
-            iOwner->FepMan()->TryCloseUiL();
-            break;
-            }
-        case EStdKeySingleQuote:
-            {
-            iOwner->FepMan()->PlaySound( EAvkonSIDStandardKeyClick );
-            break;
-            }
-        default:
-               // chr + character 
-            if ( iOwner->FepMan()->IsFlagSet( CAknFepManager::EFlagShiftKeyDepressed )
-                    || iOwner->FepMan()->IsFlagSet( CAknFepManager::EFlagQwertyChrKeyDepressed ) )
-                {
-                iOwner->FepMan()->TryCloseUiL();
-                ret = EFalse;
-                }
-            else if ( CAknFepFnKeyManager::EFnKeyNext == iOwner->FepMan()->FnKeyState() 
-                    || CAknFepFnKeyManager::EFnKeyLock == iOwner->FepMan()->FnKeyState()
-                    || CAknFepFnKeyManager::EFnKeyDown == iOwner->FepMan()->FnKeyState()
-                    ||!iOwner->IsValidChineseInputKeyQwerty( aKey ) ) //fn play error tone
-                    {
-                    iOwner->FepMan()->PlaySound( EAvkonSIDErrorTone );
-                    }
-            else
-                 {
-                  ret = TAknFepInputMiniQwertyPinyinPhraseBase::HandleKeyL(
-                     aKey, aLength );
-                 }
-            break;
-        }
-    return ret;
-    };
-// ---------------------------------------------------------------------------
-// TAknFepInputStateEditinigMiniQwertyPinyinPhrase::TAknFepInputStateEditinigMiniQwertyPinyinPhrase
-// C++ default constructor
-// ---------------------------------------------------------------------------
-//
-TAknFepInputStateEditinigMiniQwertyPinyinPhrase::TAknFepInputStateEditinigMiniQwertyPinyinPhrase( 
-    MAknFepUIManagerStateInterface* aOwner,MAknFepUICtrlContainerChinese* aUIContainer ):
-    TAknFepInputMiniQwertyPinyinPhraseBase( aOwner,aUIContainer )                           
-    {
-    iState = EMiniQwertyEdit;
-    iOwner->PtiEngine()->SetInputMode( EPtiEnginePinyinPhraseQwerty );
-    iOwner->PtiEngine()->SetCase( EPtiCaseLower );
-    RefreshUI( ETrue );
-    UIContainer()->FocusCandidatePane( EFalse );
-    UIContainer()->CandidatePane()->ShowCandidateOrdinals( EFalse );
-    UIContainer()->EditPaneWindow()->ActiveCursor();
-    }
-// ---------------------------------------------------------------------------
-// TAknFepInputStateEditinigMiniQwertyPinyinPhrase::HandleKeyL
-// Handle system key press event.
-// ---------------------------------------------------------------------------
-// 
-TBool TAknFepInputStateEditinigMiniQwertyPinyinPhrase::HandleKeyL( TInt aKey ,TKeyPressLength aLength )
-    {
-    TBool ret = ETrue;
-    MAknFepUICtrlContainerChinese* uiContainer = UIContainer();
-    MAknFepUICtrlCandidatePane* candidatePane = UIContainer()->CandidatePane();
-    if ( iOwner->FepMan()->GetComposChrFlag() && aKey == EStdKeyLeftFunc )
-        {
-        iOwner->FepMan()->SetComposChrFlag(EFalse);
-        return ETrue;
-        }
-    switch ( aKey )
-        {
-        //the following key is handled by the base class 
-        case EStdKeyLeftFunc: //chr key
-        case EStdKeySpace:
-        case EStdKeyBackspace:
-        case EStdKeyEnter:
-        case EStdKeyRightArrow:
-        case EStdKeyLeftArrow:
-            {
-            ret = TAknFepInputMiniQwertyPinyinPhraseBase::HandleKeyL(
-                aKey, aLength);
-            break;
-            }
-        case EKeyLeftShift:
-        case EKeyRightShift:
-        case EKeyLeftCtrl:
-        case EKeyRightCtrl:
-        case EKeyRightFunc://fn 
-        case EKeyLeftFunc: // fn 
-            {
-            if ( !uiContainer->EditPaneWindow()->GetAutoChangeStateFlag()
-                 || uiContainer->EditPaneWindow()->PhraseArray()->Count() != 0)
-                {
-                iOwner->FepMan()->PlaySound( EAvkonSIDStandardKeyClick );
-                ret = ETrue;
-                }
-            else
-                {
-                iOwner->FepMan()->TryCloseUiL();
-                ret = EFalse;
-                }
-            break;
-            }
-    // inactive 
-        case EStdKeyUpArrow:
-            {
-            break;
-            }
-            //if the canidate is empty ,inactive;else candiniate selecting state
-        case EStdKeyDownArrow:
-            {
-            if ( 0 != candidatePane->VisibleCandidateCount() )
-                {
-                uiContainer->EditPaneWindow()->SetChangeState( ETrue );
-                iOwner->ChangeState( ECandidate );
-                }
-            break;
-            }
-        case EStdKeyDevice0:
-        case EStdKeyDevice3:
-            {
-            ret = TAknFepInputMiniQwertyPinyinPhraseBase::HandleKeyL(
-                aKey, aLength);
-            break;
-            }
-          
-        case EStdKeyDevice1:
-            {
-            iOwner->FepMan()->TryCloseUiL();
-            break;
-            }
-        case EStdKeySingleQuote:
-            {
-            iOwner->FepMan()->PlaySound( EAvkonSIDStandardKeyClick );
-            break;
-            }
-        default:
-            // chr + character 
-            if ( iOwner->FepMan()->IsFlagSet( CAknFepManager::EFlagShiftKeyDepressed )
-                || iOwner->FepMan()->IsFlagSet( CAknFepManager::EFlagQwertyChrKeyDepressed ) )
-                {
-                iOwner->FepMan()->SetComposChrFlag( ETrue );
-                if ( !uiContainer->EditPaneWindow()->GetAutoChangeStateFlag()
-                      || uiContainer->EditPaneWindow()->PhraseArray()->Count() != 0)
-                    {
-                    iOwner->FepMan()->PlaySound(EAvkonSIDStandardKeyClick);
-                    return  ETrue;
-                    }
-                else
-                    {
-                    iOwner->FepMan()->TryCloseUiL();
-                    return EFalse;
-                    }
-                }
-            else
-                {
-                ret = TAknFepInputMiniQwertyPinyinPhraseBase::HandleKeyL(
-                    aKey, aLength);
-                break;
-                }
-        }
-    return ret;
-    }
-// ---------------------------------------------------------------------------
-// TAknFepInputStateEntryMiniQwertyPinyinPhrase::HandleCommandL
-// Handling Command
-// ---------------------------------------------------------------------------
-//
-void TAknFepInputStateEntryMiniQwertyPinyinPhrase::HandleCommandL(
-    TInt aCommandId )
-    {
-    TPtrC text = UIContainer()->CandidatePane()->CurrentPhraseCandidate( );
-    MAknFepManagerUIInterface* fepMan = iOwner->FepMan( );
-    switch ( aCommandId )
-        {
-        // Handle the event frome command.
-        case EAknSoftkeySelect:
-    //    case (TUint16)EAknSoftkeySelect: //the Selected in soft CBA
-            if ( text.Length( ) )
-                {
-                fepMan->NewTextL( text );
-                fepMan->CommitInlineEditL( );
-                iOwner->PtiEngine()->SetPredictiveChineseChar( text );
-                if ( fepMan->IsFlagSet( CAknFepManager::EFlagEditorFull ) )
-                    {
-                    fepMan->ClearFlag( CAknFepManager::EFlagEditorFull );
-                    iOwner->FepMan()->TryCloseUiL( );
-                    }
-                else
-                    {
-                    iOwner->ChangeState( EPredictiveCandidate );
-                    }
-                }
-            break;
-        default:
-            TAknFepInputStateChineseBase::HandleCommandL( aCommandId );
-            break;
-        }
-    }
-// ---------------------------------------------------------------------------
-// TAknFepInputStateEditinigMiniQwertyPinyinPhrase::HandleCommandL
-// Handling Command
-// ---------------------------------------------------------------------------
-//
-void TAknFepInputStateEditinigMiniQwertyPinyinPhrase::HandleCommandL(
-    TInt aCommandId )
-    {
-    TAknFepInputMiniQwertyPinyinPhraseBase::HandleCommandL( aCommandId );
-    }
-// End Of File
-