--- a/textinput/peninputcommonlayout/src/peninputdatamgr.cpp Wed Jun 23 04:57:58 2010 +0800
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,488 +0,0 @@
-/*
-* Copyright (c) 2002-2005 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: Implementation of the common layout data manager
-*
-*/
-
-
-// System includes
-#include <aknfeppeninputenums.h>
-#include <PtiEngine.h>
-#include <peninputpluginutils.h> // Use resource utils,laf env,rep notifier
-#include <centralrepository.h>
-#include <AknFepInternalCRKeys.h>
-#include <settingsinternalcrkeys.h>
-
-// User includes
-#include "peninputdatamgr.h"
-#include "peninputdataprovider.h"
-#include "peninputlayoutcontext.h"
-
-
-// ======== MEMBER FUNCTIONS ========
-
-// --------------------------------------------------------------------------
-// CPeninputDataMgr::NewL
-// (other items were commented in a header)
-// --------------------------------------------------------------------------
-//
-EXPORT_C CPeninputDataMgr* CPeninputDataMgr::NewL(
- MPeninputLayoutContext* aContext )
- {
- CPeninputDataMgr* self = NewLC( aContext );
- CleanupStack::Pop( self );
-
- return self;
- }
-
-// --------------------------------------------------------------------------
-// CPeninputDataMgr::NewLC
-// (other items were commented in a header)
-// --------------------------------------------------------------------------
-//
-EXPORT_C CPeninputDataMgr* CPeninputDataMgr::NewLC(
- MPeninputLayoutContext* aContext )
- {
- CPeninputDataMgr* self = new ( ELeave ) CPeninputDataMgr( aContext );
- CleanupStack::PushL( self );
- self->ConstructL();
-
- return self;
- }
-
-// --------------------------------------------------------------------------
-// CPeninputDataMgr::~CPeninputDataMgr
-// (other items were commented in a header)
-// --------------------------------------------------------------------------
-//
-EXPORT_C CPeninputDataMgr::~CPeninputDataMgr()
- {
- delete iGSRepositoryWatcher;
- delete iGSRepository;
- delete iAknFepRepository;
- delete iUserDefinedResource;
- }
-
-// --------------------------------------------------------------------------
-// CPeninputDataMgr::CPeninputDataMgr
-// (other items were commented in a header).
-// --------------------------------------------------------------------------
-//
-EXPORT_C CPeninputDataMgr::CPeninputDataMgr(
- MPeninputLayoutContext* aContext )
- : iContext(aContext),
- iUnitWidthSet(EFalse),
- iUnitHeightSet(EFalse)
- {
- }
-
-// --------------------------------------------------------------------------
-// CPeninputDataMgr::ConstructL
-// (other items were commented in a header)
-// --------------------------------------------------------------------------
-//
-EXPORT_C void CPeninputDataMgr::ConstructL()
- {
- TInt ret = 0;
-
- // Construct aknfep CenRep
- TRAP( ret, iAknFepRepository = CRepository::NewL( KCRUidAknFep ) );
-
- // Construct GS CenRep
- TRAP( ret, iGSRepository =
- CRepository::NewL( KCRUidPersonalizationSettings ) );
-
- if ( iGSRepository )
- {
- // Read Language
- iGSRepository->Get( KSettingsPenInputLang, iInputLanguage );
- }
-
- // Add GS Watcher
- if ( ret == KErrNone )
- {
- iGSRepositoryWatcher = CAknFepRepositoryWatcher::NewL(
- KCRUidPersonalizationSettings,
- TCallBack( HandleGSRepositoryCallBack, this ),
- iGSRepository );
- }
-
- // Call init function, which is virutal function
- InitMore();
- }
-
-// ---------------------------------------------------------------------------
-// CPeninputDataMgr::IsShiftPermitted
-// (other items were commented in a header).
-// ---------------------------------------------------------------------------
-//
-EXPORT_C TBool CPeninputDataMgr::IsShiftPermitted()
- {
- if( !iAllowCaseChange && iCurrentRange == ERangeNative )
- {
- return EFalse;
- }
-
- return (iPermittedCase & ECaseText) ||
- (iPermittedCase & ECaseInverseText);
- }
-
-// ---------------------------------------------------------------------------
-// CPeninputDataMgr::IsCapsLockPermitted
-// (other items were commented in a header).
-// ---------------------------------------------------------------------------
-//
-EXPORT_C TBool CPeninputDataMgr::IsCapsLockPermitted()
- {
- if( !iAllowCaseChange && iCurrentRange == ERangeNative )
- {
- return EFalse;
- }
-
- return iPermittedCase & ECaseUpper;
- }
-
-// --------------------------------------------------------------------------
-// CPeninputDataMgr::SetData
-// (other items were commented in a header)
-// --------------------------------------------------------------------------
-//
-EXPORT_C void CPeninputDataMgr::SetData( TPeninputDataType aDataType,
- TAny* aData )
- {
- switch ( aDataType )
- {
- case EPeninputDataTypeCase:
- {
- iCase = *( ( TInt* ) aData );
- }
- break;
- case EPeninputDataTypeInputLanguage:
- {
- iInputLanguage = *( ( TInt* ) aData );
- }
- break;
- case EPeninputDataTypePermittedRange:
- {
- iPermittedRange = *( ( TInt* ) aData );
- }
- break;
- case EAkninputDataTypeAllowCaseChange:
- {
- iAllowCaseChange = *((TBool*)aData);
- }
- break;
- case EPeninputDataTypePermittedCase:
- {
- iPermittedCase = *( (TInt* ) aData );
- }
- break;
- case EPeninputDataTypeCurrentRange:
- {
- iCurrentRange = *( ( TInt* ) aData );
- }
- break;
- case EPeninputDataTypeClientLayout:
- {
- iClientLayout = *( ( TInt* ) aData );
- }
- break;
- case EPeninputDataTypeVkbLayout:
- {
- iVkbLayoutId = *( ( TInt* ) aData );
- }
- break;
- case EPeninputDataTypeNumericKeymap:
- {
- iEditorNumericKeymap = *( ( TInt* ) aData );
- }
- break;
- case EPeninputDataTypeShiftDown:
- {
- iShiftDown = *( ( TInt* ) aData );
- }
- break;
- case EPeninputDataTypeCapslockDown:
- {
- iCapslockDown = *( ( TInt* ) aData );
- }
- break;
- case EPeninputDataTypeCurrentAccent:
- {
- iCurrentAccent = *( ( TInt* ) aData );
- }
- break;
- case EPeninputDataTypeScreenMode:
- {
- SetScreenMode( *( ( TPixelsTwipsAndRotation* ) aData ) );
- }
- break;
- case EPeninputDataTypeScreenSize:
- {
- iScreenSize = *( ( TSize* ) aData );
- }
- break;
- case EPeninputDataTypeWindowPosition:
- {
- iWindowPosition = *( ( TInt* ) aData );
- }
- break;
- case EPeninputDataTypeUnitWidth:
- {
- iUnitWidth = *( ( TInt* ) aData );
- iUnitWidthSet = ETrue;
- }
- break;
- case EPeninputDataTypeUnitHeight:
- {
- iUnitHeight = *( ( TInt* ) aData );
- iUnitHeightSet = ETrue;
- }
- break;
- case EPeninputDataTypeDataQueryDlgRect:
- {
- iDataQueryDlgRect = *( ( TRect* ) aData );
- }
- break;
- case EAknFepDataTypeUseDefinedResource:
- {
- delete iUserDefinedResource;
- TInt* len = (TInt*)((TUint8*)aData - 4);
- TPtrC16 keymapRes((const TUint16*)aData, *len/2);
- iUserDefinedResource = keymapRes.Alloc();
- }
- break;
- case EPeninputDataTypeReserve_1:
- {
- iReserve_1 = aData;
- }
- break;
- case EAkninputDataTypeSizeChanging:
- {
- iLayoutSizeChanging = *((TBool*)aData);
- }
- break;
- case EAkninputDataTypeLatchedSet:
- {
- iLatched = *((TBool*)aData);
- }
- break;
- default:
- break;
- }
-
- NotifyEngine( aDataType, aData ) ;
- }
-
-
-// --------------------------------------------------------------------------
-// CPeninputDataMgr::RequestData
-// (other items were commented in a header)
-// --------------------------------------------------------------------------
-//
-EXPORT_C TAny* CPeninputDataMgr::RequestData( TPeninputDataType aDataType )
- {
- switch ( aDataType )
- {
- case EPeninputDataTypeCase:
- return &iCase;
- case EPeninputDataTypeInputLanguage:
- return &iInputLanguage;
- case EPeninputDataTypePermittedRange:
- return &iPermittedRange;
- case EPeninputDataTypePermittedCase:
- return &iPermittedCase;
- case EPeninputDataTypeCurrentRange:
- return &iCurrentRange;
- case EPeninputDataTypeClientLayout:
- return &iClientLayout;
- case EPeninputDataTypeVkbLayout:
- return &iVkbLayoutId;
- case EPeninputDataTypeNumericKeymap:
- return &iEditorNumericKeymap;
- case EPeninputDataTypeShiftDown:
- return &iShiftDown;
- case EPeninputDataTypeCapslockDown:
- return &iCapslockDown;
- case EPeninputDataTypeCurrentAccent:
- return &iCurrentAccent;
- case EPeninputDataTypeScreenMode:
- return &iScreenMode;
- case EPeninputDataTypeScreenSize:
- return &iScreenSize;
- case EPeninputDataTypeWindowPosition:
- return &iWindowPosition;
- case EPeninputDataTypePositionSettingId:
- return &iPositionSettingId;
- case EPeninputDataTypeUnitWidth:
- return &iUnitWidth;
- case EPeninputDataTypeUnitHeight:
- return &iUnitHeight;
- case EPeninputDataTypeDataQueryDlgRect:
- return &iDataQueryDlgRect;
- case EAknFepDataTypeUseDefinedResource:
- return iUserDefinedResource;
- case EPeninputDataTypeReserve_1:
- return iReserve_1;
- case EAkninputDataTypeGuideLineTop:
- return &iGuideLineTop;
- case EAkninputDataTypeGuideLineBottom:
- return &iGuideLineBottom;
- case EAkninputDataTypeSizeChanging:
- return &iLayoutSizeChanging;
- case EAkninputDataTypeLatchedSet:
- return &iLatched;
- case EAkninputDataTypeUnitSizeSet:
- {
- iUnitSizeSet = (iUnitWidthSet & iUnitHeightSet);
- return &iUnitSizeSet;
- }
- default:
- break;
- }
-
- return NULL;
- }
-
-// --------------------------------------------------------------------------
-// CPeninputDataMgr::Reset
-// (other items were commented in a header)
-// --------------------------------------------------------------------------
-//
-EXPORT_C void CPeninputDataMgr::Reset()
- {
- }
-
-// --------------------------------------------------------------------------
-// CPeninputDataMgr::HandleGSRepositoryCallBack
-// (other items were commented in a header)
-// --------------------------------------------------------------------------
-//
-EXPORT_C TInt CPeninputDataMgr::HandleGSRepositoryCallBack( TAny* aPtr )
- {
- CPeninputDataMgr* self = static_cast<CPeninputDataMgr*>( aPtr );
-
- CAknFepRepositoryWatcher* watcher = self->iGSRepositoryWatcher;
- if ( watcher )
- {
- self->HandleGSRepositoryChange( watcher->ChangedKey() );
- }
-
- return KErrNone;
- }
-
-// --------------------------------------------------------------------------
-// CPeninputDataMgr::SaveKey
-// (other items were commented in a header)
-// --------------------------------------------------------------------------
-//
-EXPORT_C void CPeninputDataMgr::SaveKey( TInt aKey, TInt aValue )
- {
- if ( iAknFepRepository )
- {
- iAknFepRepository->Set( aKey, aValue );
- }
- }
-
-// --------------------------------------------------------------------------
-// CPeninputDataMgr::SetScreenMode
-// (other items were commented in a header).
-// --------------------------------------------------------------------------
-//
-void CPeninputDataMgr::SetScreenMode(
- const TPixelsTwipsAndRotation& aScreenMode )
- {
- switch ( aScreenMode.iRotation )
- {
- case CFbsBitGc::EGraphicsOrientationNormal:
- {
- iPositionSettingId = KAknFepHwrWindowPosition0;
- }
- break;
- case CFbsBitGc::EGraphicsOrientationRotated90:
- {
- iPositionSettingId = KAknFepHwrWindowPosition1;
- }
- break;
- case CFbsBitGc::EGraphicsOrientationRotated180:
- {
- iPositionSettingId = KAknFepHwrWindowPosition2;
- }
- break;
- case CFbsBitGc::EGraphicsOrientationRotated270:
- {
- iPositionSettingId = KAknFepHwrWindowPosition3;
- }
- break;
- default:
- break;
- }
-
- iScreenSize = aScreenMode.iPixelSize;
- iScreenMode = aScreenMode;
- if ( iAknFepRepository )
- {
- iAknFepRepository->Get( iPositionSettingId, iWindowPosition );
- }
- }
-
-// --------------------------------------------------------------------------
-// CPeninputDataMgr::InitMore
-// (other items were commented in a header)
-// --------------------------------------------------------------------------
-//
-EXPORT_C void CPeninputDataMgr::InitMore()
- {
- }
-
-// --------------------------------------------------------------------------
-// CPeninputDataMgr::HandleGSRepositoryChange
-// (other items were commented in a header)
-// --------------------------------------------------------------------------
-//
-EXPORT_C void CPeninputDataMgr::HandleGSRepositoryChange( TInt /*aChangedKey*/ )
- {
- }
-
-// --------------------------------------------------------------------------
-// CPeninputDataMgr::NotifyEngine
-// (other items were commented in a header).
-// --------------------------------------------------------------------------
-//
-EXPORT_C void CPeninputDataMgr::NotifyEngine( TPeninputDataType aType,
- TAny* aData )
- {
- TInt data = *( (TInt*) aData );
- switch ( aType )
- {
- case EPeninputDataTypeCurrentRange:
- if (iAknFepRepository)
- {
- if ( ( data == ERangeEnglish ) || ( data == ERangeNative ) )
- {
- iAknFepRepository->Set(KAknFepLastUsedRange, data );
- }
- }
- break;
- case EPeninputDataTypeWindowPosition:
- if (iAknFepRepository)
- {
- iAknFepRepository->Set(iPositionSettingId, data );
- }
- break;
- default:
- break;
- }
- }
-