diff -r f1bdd6b078d1 -r 2cb9bae34d17 fep/aknfep/UiPlugins/AknFepUiInterface/AvkonImpl/src/AknFepUiAvkonCtrlContainerChinese.cpp --- a/fep/aknfep/UiPlugins/AknFepUiInterface/AvkonImpl/src/AknFepUiAvkonCtrlContainerChinese.cpp Tue Jul 06 14:38:41 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,692 +0,0 @@ -/* -* Copyright (c) 2002-2004 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 CAknFepUICtrlContainerChinese methods. -* -*/ - - - - - - - - - - - - -#include -#include -#include -#ifdef SYMBIAN_ENABLE_SPLIT_HEADERS -#include -#endif - - -#include -#include -#include -#include -#include -#include -#include - -#include "AknFepUiInterfacePanic.h" -#include "AknFepUIAvkonCtrlContainerChinese.h" -#include "AknFepUIAvkonCtrlCandidatePane.h" -#include "AknFepUIAvkonCtrlInputPane.h" -#include "AknFepUIAvkonCtrlPinyinPopup.h" -#include "aknfepuictrlpinyineep.h" -#include "AknFepManager.h" -#include "aknfepchineseuidataconv.h" -#include "aknfepuilayoutdatamgr.h" - -MAknFepUICtrlContainerChinese::~MAknFepUICtrlContainerChinese() - { - } - -CAknFepUICtrlContainerChinese::CAknFepUICtrlContainerChinese() - : - iPaneLayout(ELayoutInput), - iContainerPosition(TPoint(0,0)), - isPCLPosed(EFalse) - { - - } - -CAknFepUICtrlContainerChinese* CAknFepUICtrlContainerChinese::NewL() - { - CAknFepUICtrlContainerChinese* self = new(ELeave) CAknFepUICtrlContainerChinese; - CleanupStack::PushL(self); - self->ConstructL(); - CleanupStack::Pop(); - return self; - } - -MAknFepUICtrlInputPane* CAknFepUICtrlContainerChinese::InputPane() const - { - return iInputPane; - } - -MAknFepUICtrlCandidatePane* CAknFepUICtrlContainerChinese::CandidatePane() const - { - return iCandidatePane; - } - -MAknFepUICtrlPinyinPopup* CAknFepUICtrlContainerChinese::PinyinPopupWindow() const - { - return iPinyinPopupWindow; - } - -MAknFepUICtrlEditPane* CAknFepUICtrlContainerChinese::EditPaneWindow() const - { - return iEditPane; - } - -TBool CAknFepUICtrlContainerChinese::IsEnabled() const - { - return iEnabled; - } - -void CAknFepUICtrlContainerChinese::Enable(TBool aEnable) - { - if(!COMPARE_BOOLS(iEnabled, aEnable)) - { - iEnabled = aEnable; - if(aEnable) - { - Window().SetOrdinalPosition(0, ECoeWinPriorityFep); // right at the front - // make sure we are not faded even if a query has appeared - Window().SetFaded(EFalse, RWindowTreeNode::EFadeIncludeChildren); - } - else - { - // make sure that the popup window is disabled as well - iInputPane->MakeVisible(aEnable); - iPinyinPopupWindow->Enable(aEnable); - iEditPane->Enable(aEnable); - iCandidatePane->Enable(aEnable); - } - MakeVisible(aEnable); - } - if ( aEnable == EFalse ) - { - if ( iFepMan ) - { - iFepMan->PinyinPhraseCreation( EFalse ); - iFepMan->EntryPhrase( EFalse ); - iFepMan->EnableKeyStar( ETrue ); - iFepMan->PhraseCreation( EFalse ); - } - PinyinPopupWindow()->ResetStrokeArray(); - PinyinPopupWindow()->SetLastResouce( 0 ); - iPinyinPopupWindow->ResetInputLayoutMiniQwertyZhuyin(); -#ifdef RD_INTELLIGENT_TEXT_INPUT - iEditPane->ResetAllArray(); - iEditPane->SetEffictiveLength( 0 ); - iEditPane->SetChangeState( EFalse ); -#endif - } - } - -void CAknFepUICtrlContainerChinese::ConstructL() - { - CreateWindowL(); - SetNonFocusing(); - RWindow& window=Window(); - window.SetOrdinalPosition(0, ECoeWinPriorityFep); // right at the front - MakeVisible(EFalse); - - iEikonEnv->EikAppUi()->AddToStackL(this, ECoeStackPriorityDefault, ECoeStackFlagRefusesFocus); - - iLafDataMgr = CAknFepUiLayoutDataMgr::NewL(); - iInputPane = CAknFepUICtrlInputPane::NewL(window, CAknFepUICtrlInputPane::ELayoutPhraseInputPane, iLafDataMgr); - iCandidatePane = CAknFepUICtrlCandidatePane::NewL(window, iLafDataMgr); - iPinyinPopupWindow = CAknFepUICtrlPinyinPopup::NewL(window , iLafDataMgr); - iEditPane = CAknFepUICtrlPinyinEEP::NewL( window, iLafDataMgr ); - iInputPane->SetMopParent(this); - iCandidatePane->SetMopParent(this); - iEditPane->SetMopParent(this); - - iInputPane->SetSizeChangedObserver(this); - iPinyinPopupWindow->SetSizeChangedObserver(this); - iPinyinPopupWindow->MakeVisible(EFalse); - iEditPane->Enable(EFalse); - - iCandidatePane->SetPaneLayout(iPaneLayout); // set pane layout - iCandidatePane->SetVisibleCandidateCount(iPaneLayout); - iHorizLine = - CAknFepChineseUIDataConv::AnyToLayoutRect(iLafDataMgr->RequestData(EHorizLine)); - iEEPFirstHorizLine = - CAknFepChineseUIDataConv::AnyToLayoutRect(iLafDataMgr->RequestData(EEEPFirstHorizLine)); - iEEPSecondHorizLine = - CAknFepChineseUIDataConv::AnyToLayoutRect(iLafDataMgr->RequestData(EEEPSecondHorizLine)); - TInt index = ConvertLayoutToIndex(); - if ( index == 2 || index == 3 ) - { - index = 0; - } - iInputPane->SetLayoutIndex(index); - TRect outerRect = TRect(); - TRect innerRect = TRect(); - CalculateFrameRects(outerRect, innerRect); - - iBgContext = CAknsFrameBackgroundControlContext::NewL(KAknsIIDQsnFrPopup, outerRect, innerRect, ETrue); - LayoutContainer(); - ActivateL(); - } - -CAknFepUICtrlContainerChinese::~CAknFepUICtrlContainerChinese() - { - iEikonEnv->EikAppUi()->RemoveFromStack(this); - delete iLafDataMgr; - delete iInputPane; - delete iCandidatePane; - delete iPinyinPopupWindow; - delete iEditPane; - delete iBgContext; - } - -CCoeControl* CAknFepUICtrlContainerChinese::ComponentControl(TInt aIndex) const - { - CCoeControl* controls[] = - { - iInputPane, - iCandidatePane, - iEditPane, - iPinyinPopupWindow - } ; - - for (TUint ii = 0; (ii < sizeof(controls) / sizeof(CCoeControl*)) ; ii++) - { - if (controls[ii] && aIndex-- == 0) - { - return controls[ii] ; - } - } - // shouldn't be called while no components. - return NULL ; - } - -TInt CAknFepUICtrlContainerChinese::CountComponentControls() const - { - CCoeControl* controls[] = - { - iInputPane, - iCandidatePane, - iEditPane, - iPinyinPopupWindow - } ; - - TInt count = 0 ; - for (TUint ii = 0 ; ii < (sizeof(controls) / sizeof(CCoeControl*)) ; ii++) - { - if(controls[ii]) - { - count++ ; - } - } - return count ; - } - -TInt CAknFepUICtrlContainerChinese::ConvertLayoutToIndex() const - { - TInt layout = -1; - // switch on the cases in reverse order, and count our way through - // the possible layouts to determine the index into the layout - // this means that it is easier to add another layout in between - switch(iPaneLayout) - { - case ELayoutKeystroke: //index 3 - layout++; - case ELayoutPhraseCreation: //index 2 - layout++; - case ELayoutCandidate: //index 1 - layout++; - case ELayoutInput: //index 0 - layout++; - default: - break; - } - return layout; - } - -void CAknFepUICtrlContainerChinese::LayoutFrames() - { - TRect outerRect; - TRect innerRect; - CalculateFrameRects(outerRect, innerRect); - iBgContext->SetFrameRects(outerRect, innerRect); - iBgContext->SetParentPos(PositionRelativeToScreen()); - } - -void CAknFepUICtrlContainerChinese::CalculateFrameRects(TRect& aOuterRect, TRect& aInnerRect) const - { - TRect windowRect = Rect(); - TPoint lPoint(0,0); - TPoint rPoint(0,0); - TAknLayoutRect topLeft; - topLeft.LayoutRect(windowRect, SkinLayout::Submenu_skin_placing_Line_2()); - - TAknLayoutRect bottomRight; - bottomRight.LayoutRect(windowRect, SkinLayout::Submenu_skin_placing_Line_5()); - lPoint.iX = bottomRight.Rect().iTl.iX; - lPoint.iY = bottomRight.Rect().iTl.iY; - rPoint.iX = bottomRight.Rect().iBr.iX; - rPoint.iY = bottomRight.Rect().iBr.iY; - - aOuterRect = TRect(topLeft.Rect().iTl, bottomRight.Rect().iBr); - aInnerRect = TRect(topLeft.Rect().iBr, bottomRight.Rect().iTl); - } - -void CAknFepUICtrlContainerChinese::Draw(const TRect& /*aRect*/) const - { - CWindowGc& gc = SystemGc(); - TBool skinnedDraw = EFalse; - MAknsSkinInstance* skin = AknsUtils::SkinInstance(); - - TRect outerRect; - TRect innerRect; - CalculateFrameRects(outerRect, innerRect); - gc.Clear(Rect()); - - skinnedDraw = AknsDrawUtils::DrawFrame( - skin, gc, - outerRect, innerRect, - KAknsIIDQsnFrPopupSub, KAknsIIDQsnFrPopupCenterSubmenu); - - TRgb separatorColor = iHorizLine.Color(); - AknsUtils::GetCachedColor( skin, separatorColor, - KAknsIIDQsnLineColors, EAknsCIQsnLineColorsCG8 ); - gc.SetBrushStyle( CGraphicsContext::ESolidBrush ); - gc.SetBrushColor( separatorColor ); - - if(!skinnedDraw) - { - iRectCoverMainPaneInput.DrawRect(gc); - iRectFirstShadowInput.DrawRect(gc); - iRectOutlineFrameInput.DrawRect(gc); - iRectInsideAreaInput.DrawRect(gc); - } - - TInt index = ConvertLayoutToIndex(); - if ( iInputPane->IsVisible( ) || iPinyinPopupWindow->IsVisible() || - iPhraseCreationLaf) - { - if ( index == 0 || index == 1 ) - { - iHorizLine.DrawRect(gc); - } - } - if ( index == 2 ) - { - iEEPFirstHorizLine.DrawRect(gc); - iEEPSecondHorizLine.DrawRect(gc); - } - else if ( index == 3 ) - { - iEEPFirstHorizLine.DrawRect(gc); - } - - } - -void CAknFepUICtrlContainerChinese::SizeChanged() - { - iLafDataMgr->ReadLafInfo(); - LayoutRects(); - LayoutContainedControls(); - LayoutFrames(); - } - -void CAknFepUICtrlContainerChinese::SetLayout(TPaneLayout aPaneLayout) - { - if(iPaneLayout != aPaneLayout) - { - iPaneLayout = aPaneLayout; - SetControlVisibility(); - // set visible candidate length - iCandidatePane->SetPaneLayout(aPaneLayout); - TInt index = ConvertLayoutToIndex(); - if ( index == 2 || index == 3) - { - index = 0; - } - iCandidatePane->SetVisibleCandidateCount(aPaneLayout - index); - iInputPane->SetLayoutIndex( index ); - LayoutContainer(); - DrawDeferred(); - } - } - -void CAknFepUICtrlContainerChinese::FocusCandidatePane(TBool aValue) - { - iInputPane->SetHighlighted(!aValue); - iCandidatePane->SetHighlighted(aValue); - } - -void CAknFepUICtrlContainerChinese::SelectionPopupEnabled(TBool /*aEnabled*/) - { - // ensure that the input pane is only visible if the popup is not enabled - SetControlVisibility(); - } - -TTypeUid::Ptr CAknFepUICtrlContainerChinese::MopSupplyObject(TTypeUid aId) - { - if (aId.iUid == MAknsControlContext::ETypeId) - return ( MAknsControlContext::SupplyMopObject(aId, iBgContext)); - return CCoeControl::MopSupplyObject(aId); - } - -void CAknFepUICtrlContainerChinese::SelectionPopupSizeChanged(TInt /*aNumLines*/) - { - LayoutContainer(); - DrawDeferred(); - } - -void CAknFepUICtrlContainerChinese::LayoutPinyinPopupWindow() - { - TRect popupRect(Position(), Size()); - TRect pinyinRect = popupRect; - TAknWindowLineLayout entryHorizLine = - CAknFepChineseUIDataConv::AnyToWindowLine( iLafDataMgr->RequestData( EEntryHorizLineWindow )); - TAknWindowLineLayout entryPaneLine = - CAknFepChineseUIDataConv::AnyToWindowLine( iLafDataMgr->RequestData( EEntryPaneWindowLine )); - TAknWindowLineLayout eepFirstHorizLine = - CAknFepChineseUIDataConv::AnyToWindowLine( iLafDataMgr->RequestData( EEEPFirstHorizLineWindow )); - TAknWindowLineLayout eepSecondHorizLine = - CAknFepChineseUIDataConv::AnyToWindowLine( iLafDataMgr->RequestData( EEEPSecondHorizLineWindow )); - TAknLayoutRect layoutLineEntry, layoutLineEntryPane, layoutLineFirstHorizEEP, layoutLineSecondHorizEEP; - TRect layoutLineRectEntry, layoutLineRectEntryPane, layoutLineRectFirstHorizEEP, layoutLineRectSecondHorizEEP; - TInt index = ConvertLayoutToIndex(); - if ( 2 == index ) - { - layoutLineFirstHorizEEP.LayoutRect( popupRect, eepFirstHorizLine ); - layoutLineRectFirstHorizEEP = layoutLineFirstHorizEEP.Rect(); - layoutLineSecondHorizEEP.LayoutRect( popupRect, eepSecondHorizLine ); - layoutLineRectSecondHorizEEP = layoutLineSecondHorizEEP.Rect(); - - pinyinRect.iTl.iY = layoutLineRectFirstHorizEEP.iBr.iY; - pinyinRect.iBr.iY = layoutLineRectSecondHorizEEP.iTl.iY; - } - else - { - layoutLineEntry.LayoutRect( popupRect, entryHorizLine ); - layoutLineRectEntry = layoutLineEntry.Rect(); - layoutLineEntryPane.LayoutRect( popupRect, entryPaneLine ); - layoutLineRectEntryPane = layoutLineEntryPane.Rect(); - pinyinRect.iTl.iY = layoutLineRectEntryPane.iTl.iY; - pinyinRect.SetHeight(layoutLineRectEntry.iTl.iY - pinyinRect.iTl.iY); - } - iPinyinPopupWindow->SetRect(pinyinRect); - } - -void CAknFepUICtrlContainerChinese::LayoutPinyinEEPWindow() - { - TRect rect = Rect(); - TAknWindowLineLayout EEPWindowLayout; - if ( iPaneLayout == ELayoutPhraseCreation ) - { - EEPWindowLayout = - CAknFepChineseUIDataConv::AnyToWindowLine(iLafDataMgr->RequestData(EEEPWindowLayout)); - } - else - { - EEPWindowLayout = - CAknFepChineseUIDataConv::AnyToWindowLine(iLafDataMgr->RequestData(EEntryPaneWindowLine)); - } - AknLayoutUtils::LayoutControl(iEditPane, rect, EEPWindowLayout); - } - -void CAknFepUICtrlContainerChinese::SetControlVisibility() - { - TBool popupEnabled = iPinyinPopupWindow->IsEnabled(); - - switch(iPaneLayout) - { - case ELayoutCandidate: - // predicative candidate state - iInputPane->MakeVisible(EFalse); - iPhraseCreationLaf = EFalse; - break; - case ELayoutInput: - // input state - iInputPane->MakeVisible(!popupEnabled); - iPhraseCreationLaf = EFalse; - break; - case ELayoutPhraseCreation: - if ( !iPhraseCreationLaf ) - { - // input state - iInputPane->MakeVisible( !popupEnabled ); - } - else - { - iPhraseCreationLaf= EFalse; - } - default: - break; - } - } - -void CAknFepUICtrlContainerChinese::SetIsShownWithPopupWindows(TBool aValue) - { - if(!COMPARE_BOOLS(iIsShownWithPopupWindows,aValue)) - { - iIsShownWithPopupWindows = aValue; - // need to layout container first, so that the parent rect is the right size... - LayoutContainer(); - // ... now we can layout the rects relative to the resized parent - LayoutRects(); - // don't need to layout controls, only the rects are affected - DrawDeferred(); - } - } - -void CAknFepUICtrlContainerChinese::SetContainerPosition(TPoint aCurPos, TInt aHeight) - { - TRect parentRect; - AknLayoutUtils::LayoutMetricsRect(AknLayoutUtils::EMainPane, parentRect); - TInt windowHeight = 0; - TInt index = ConvertLayoutToIndex(); - - if ( index != 2 ) - { - windowHeight = - CAknFepChineseUIDataConv::AnyToInt( iLafDataMgr->RequestData( EPopupHeightEntry )); - isPCLPosed = EFalse; - } - else - { - windowHeight = CAknFepChineseUIDataConv::AnyToInt( iLafDataMgr->RequestData( EPopupHeightEEP )); - isPCLPosed = ETrue; - } - // Laf comments: In case there is enough space on the main pane to show the window under the entry, - // the window is placed 3 pixels below the text baseline of the entry. In case there is no space on - // the main pane to show the window fully under the entry, the window is placed 17(16 pixel font) or - // 13(12 pixel font) pixels above the baseline of the entry. - if(aCurPos.iY + 3 + windowHeight < parentRect.iBr.iY) - { - iContainerPosition.iY = aCurPos.iY + 3; - } - else - { - iContainerPosition.iY = aCurPos.iY - windowHeight - (aHeight + 1); - } - if ((( iContainerPosition.iY + windowHeight ) > parentRect.iBr.iY ) || - ( iContainerPosition.iY < parentRect.iTl.iY )) - { - iContainerPosition.iY = parentRect.iBr.iY - ( parentRect.iBr.iY - - parentRect.iTl.iY ) / 2 - windowHeight / 2; - } - LayoutContainer(); - } - -void CAknFepUICtrlContainerChinese::ShowHorizontalScrollArrows(TBool aValue) - { - iCandidatePane->ShowHorizontalScrollArrows(aValue); - } - -void CAknFepUICtrlContainerChinese::ShowVerticalScrollArrows(TBool aValue) - { - iCandidatePane->ShowVerticalScrollArrows(aValue); - } - -void CAknFepUICtrlContainerChinese::LayoutInputPane() - { - TRect rect = Rect(); - TAknWindowLineLayout entryPaneWindowLine = - CAknFepChineseUIDataConv::AnyToWindowLine( iLafDataMgr->RequestData( EEntryPaneWindowLine )); - TInt index = ConvertLayoutToIndex(); - if ( index == 2) - { - TInt eepPopupHeight = CAknFepChineseUIDataConv::AnyToInt( iLafDataMgr->RequestData( EPopupHeightEEP )); - TInt entryPopupHeight = CAknFepChineseUIDataConv::AnyToInt( iLafDataMgr->RequestData( EPopupHeightEntry )); - rect.iTl.iY = rect.iTl.iY + eepPopupHeight - entryPopupHeight; - } - AknLayoutUtils::LayoutControl(iInputPane, rect, entryPaneWindowLine); - } - -void CAknFepUICtrlContainerChinese::LayoutContainedControls() - { - LayoutInputPane(); - // layout candidate pane - TAknWindowLineLayout candidatePaneWindowLine = - CAknFepChineseUIDataConv::AnyToWindowLine( iLafDataMgr->RequestData( ECandidatePaneWindowLine )); - TInt index = ConvertLayoutToIndex(); - if (index == 2) - { - if ( isPCLPosed ) - { - iEditPane->Enable( ETrue ); - AknLayoutUtils::LayoutControl( iCandidatePane, Rect(), candidatePaneWindowLine ); - LayoutPinyinPopupWindow(); - LayoutPinyinEEPWindow(); - } - } - else if ( index == 0 || index == 1 ) - { - TRect rect = Rect(); - iEditPane->Enable(EFalse); - AknLayoutUtils::LayoutControl(iCandidatePane, rect, candidatePaneWindowLine); - LayoutPinyinPopupWindow(); - } - else - { - iEditPane->Enable(ETrue); - iPinyinPopupWindow->Enable(EFalse); - AknLayoutUtils::LayoutControl(iCandidatePane, Rect(), candidatePaneWindowLine); - LayoutPinyinEEPWindow(); - } - } - -void CAknFepUICtrlContainerChinese::LayoutContainer() - { - TInt layoutIndex = ConvertLayoutToIndex(); // 0 : input state layout, 1 : candidate state layout - TRect rect; - switch ( layoutIndex ) - { - case 2: - rect = CAknFepChineseUIDataConv::AnyToRect( iLafDataMgr->RequestData( EPopupRectEEP )); - break; - case 1: - rect = CAknFepChineseUIDataConv::AnyToRect( iLafDataMgr->RequestData( EPopupRectCandatate )); - break; - default: - rect = CAknFepChineseUIDataConv::AnyToRect( iLafDataMgr->RequestData( EPopupRectEntry )); - break; - } - TInt rectHeight = rect.iBr.iY - rect.iTl.iY; - rect.iTl.iY = iContainerPosition.iY; - rect.iBr.iY = iContainerPosition.iY + rectHeight; - SetRect(rect); - } - -void CAknFepUICtrlContainerChinese::LayoutRects() - { - TInt index = ConvertLayoutToIndex(); - TRect rect = Rect(); - - if ( index == 3 ) - { - index = 0; - } - - switch (index) // 0 : input state, 1: predicative candidate state - { - case 0: - iRectCoverMainPaneInput = CAknFepChineseUIDataConv::AnyToLayoutRect( iLafDataMgr->RequestData( ERectCoverMainPaneInputEntry )); - iRectFirstShadowInput= CAknFepChineseUIDataConv::AnyToLayoutRect( iLafDataMgr->RequestData( ERectFirstShadowInputEntry )); - iRectOutlineFrameInput= CAknFepChineseUIDataConv::AnyToLayoutRect( iLafDataMgr->RequestData( ERectOutlineFrameInputEntry )); - iRectInsideAreaInput= CAknFepChineseUIDataConv::AnyToLayoutRect( iLafDataMgr->RequestData( ERectInsideAreaInputEntry )); - break; - case 1: - iRectCoverMainPaneInput = CAknFepChineseUIDataConv::AnyToLayoutRect( iLafDataMgr->RequestData( ERectCoverMainPaneInputCandidate )); - iRectFirstShadowInput= CAknFepChineseUIDataConv::AnyToLayoutRect( iLafDataMgr->RequestData( ERectFirstShadowInputCandidate )); - iRectOutlineFrameInput= CAknFepChineseUIDataConv::AnyToLayoutRect( iLafDataMgr->RequestData( ERectOutlineFrameInputCandidate )); - iRectInsideAreaInput= CAknFepChineseUIDataConv::AnyToLayoutRect( iLafDataMgr->RequestData( ERectInsideAreaInputCandidate )); - break; - case 2: - iRectCoverMainPaneInput = CAknFepChineseUIDataConv::AnyToLayoutRect( iLafDataMgr->RequestData( ERectCoverMainPaneInputEEP)); - iRectFirstShadowInput= CAknFepChineseUIDataConv::AnyToLayoutRect( iLafDataMgr->RequestData( ERectFirstShadowInputEEP )); - iRectOutlineFrameInput= CAknFepChineseUIDataConv::AnyToLayoutRect( iLafDataMgr->RequestData( ERectOutlineFrameInputEEP )); - iRectInsideAreaInput= CAknFepChineseUIDataConv::AnyToLayoutRect( iLafDataMgr->RequestData( ERectInsideAreaInputEEP )); - break; - default: - break; - } - } - -void CAknFepUICtrlContainerChinese::HandleResourceChange(TInt aType) - { - // maybe should be KEikDynamicLayoutVariantSwitch_APAC, need to have a try after it's ready. - if(aType == KEikDynamicLayoutVariantSwitch) - { - LayoutContainer(); - } - else - { - CCoeControl::HandleResourceChange(aType); - } - } -void CAknFepUICtrlContainerChinese::SetControlInVisible( TBool aVisible ) - { - ShowVerticalScrollArrows( EFalse ); - if ( aVisible == EFalse ) - { - iCandidatePane->SetInVisiable(); - } - iPinyinPopupWindow->MakeVisible( EFalse ); - iInputPane->MakeVisible( EFalse ); - iPhraseCreationLaf= ETrue; - } - - -TInt& CAknFepUICtrlContainerChinese::IsPhraseCreation() - { - return iPhraseCreation; - } - -void CAknFepUICtrlContainerChinese::PhraseCreation( TBool aPhraseCreation ) - { - if ( iPhraseCreation != aPhraseCreation ) - { - iPhraseCreation = aPhraseCreation; - } - } - -void CAknFepUICtrlContainerChinese::SetFepMan( MAknFepManagerUIInterface* aFepMan ) - { - iFepMan = aFepMan; - }