textinput/peninputcommonctrls/src/peninputvkbctrl/peninputvkbctrlext.cpp
changeset 40 2cb9bae34d17
parent 31 f1bdd6b078d1
child 49 37f5d84451bd
--- a/textinput/peninputcommonctrls/src/peninputvkbctrl/peninputvkbctrlext.cpp	Tue Jul 06 14:38:41 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,393 +0,0 @@
-/*
-* Copyright (c) 2005-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:  vkb control extension
-*
-*/
-
-
-// System includes
-#include <barsread.h>
-#include <peninputlayout.h>
-#include <AknIconUtils.h>
-#include <AknsUtils.h>
-#include <coemain.h>
-
-// User includes
-#include "peninputvkbctrlext.h"
-#include "peninputvkbctrllayout.h"
-
-// Constants
-const TUint32 KDefaultTextColor = 0x000000;
-const TInt32 KInvalidResId = -1;
-const TInt KInvalidImg = -1 ;
-// ======== MEMBER FUNCTIONS ========
-
-
-
-// --------------------------------------------------------------------------
-// CPeninputVkbCtrlExt::CPeninputVkbCtrlExt
-// (other items were commented in a header)
-// --------------------------------------------------------------------------
-//
-EXPORT_C CPeninputVkbCtrlExt::CPeninputVkbCtrlExt( const TRect& aRect,
-    CFepUiLayout* aUiLayout, TInt aControlId, const TFontSpec& aFontSpec,TBool aIrregular )
-    : CVirtualKeyboard( aRect, aUiLayout, aControlId, aFontSpec, aIrregular )
-    {
-    }
-
-// --------------------------------------------------------------------------
-// CPeninputVkbCtrlExt::NewL
-// (other items were commented in a header)
-// --------------------------------------------------------------------------
-//
-EXPORT_C CPeninputVkbCtrlExt* CPeninputVkbCtrlExt::NewL( const TRect& aRect,
-    CFepUiLayout* aUiLayout, TInt aControlId, const CFont* aFont,TBool aIrregular)
-    {
-    TFontSpec fontSpec;
-    
-    CPeninputVkbCtrlExt* vkb = new (ELeave)  
-        CPeninputVkbCtrlExt( aRect, aUiLayout, aControlId, fontSpec,aIrregular );
-    CleanupStack::PushL( vkb );
-    vkb->ConstructL();
-    vkb->SetFont( aFont );
-    CleanupStack::Pop( vkb );
-    
-    return vkb;
-    }
-            
-// --------------------------------------------------------------------------
-// CPeninputVkbCtrlExt::~CPeninputVkbCtrlExt
-// (other items were commented in a header)
-// --------------------------------------------------------------------------
-//
-EXPORT_C CPeninputVkbCtrlExt::~CPeninputVkbCtrlExt()
-    {
-    Reset();
-    if( iResourceId == KInvalidImg )
-    	{
-		SetBackgroundBmp( NULL );
-		SetBackgroundMaskBmp( NULL );    		
-    	}
-    }
-
-// --------------------------------------------------------------------------
-// CPeninputVkbCtrlExt::SizeChanged
-// (other items were commented in a header)
-// --------------------------------------------------------------------------
-//
-EXPORT_C void CPeninputVkbCtrlExt::SizeChanged( const TInt aUnitWidth,
-                                                const TInt aUnitHeight,
-                                                const TPoint& aLeftTopPoint )
-    {
-    iUnitWidth = aUnitWidth;
-    iUnitHeight = aUnitHeight;
-    iLeftTopPoint = aLeftTopPoint;
-    
-    if ( iVkbLayoutInfo )
-        {        
-        // 1.Reset the size and position of Vkb ctrl and keys
-        TRect rect = TRect( iLeftTopPoint, TSize( iUnitWidth * iVkbLayoutInfo->Columns(),
-                                                  iUnitHeight * iVkbLayoutInfo->Rows() ) );
-        SetRect( rect );
-            
-        // 2.Move all keys(Needn't change size, because it has been 
-        }
-    }
-    
-// --------------------------------------------------------------------------
-// CPeninputVkbCtrlExt::SizeChanged
-// (other items were commented in a header)
-// --------------------------------------------------------------------------
-//
-EXPORT_C void CPeninputVkbCtrlExt::SizeChanged( const TRect& aRect )
-    {
-    SetRect( aRect );
-    }
-    
-    
-// CPeninputVkbCtrlExt::ReorganizeVkbKeys
-// (other items were commented in a header)
-// --------------------------------------------------------------------------
-//
-EXPORT_C void CPeninputVkbCtrlExt::ReorganizeVkbKeys(
-    CPeninputVkbLayoutInfo* aVkbLayoutInfo )
-    {           
-    Reset();
-
-    iVkbLayoutInfo = aVkbLayoutInfo;
-
-    TRect rect = TRect( iLeftTopPoint, TSize( iUnitWidth * iVkbLayoutInfo->Columns(),
-                                              iUnitHeight * iVkbLayoutInfo->Rows() ) );
-	if( iResourceId != KInvalidImg )
-		{
-		if( BackgroundBmp() && BackgroundBmp()->SizeInPixels() != Rect().Size() )                                              
-			AknIconUtils::SetSize(BackgroundBmp(), Rect().Size(), EAspectRatioNotPreserved);
-		if( BkMaskBmp() && BkMaskBmp()->SizeInPixels() != Rect().Size() ) 
-			AknIconUtils::SetSize(BkMaskBmp(), Rect().Size(), EAspectRatioNotPreserved);
-		}
-	else
-		{		
-	    if ( iVkbLayoutInfo->BgBmp() )
-	        {	        
-	        SetBackgroundBmp( iVkbLayoutInfo->BgBmp() ) ;
-	        }
-	    
-	    if ( iVkbLayoutInfo->BgMaskBmp() )
-	        {
-	        SetBackgroundMaskBmp( iVkbLayoutInfo->BgMaskBmp() );
-	        }			
-		}	                                       
-//    SetRect( rect );
-            
-    // According the information in vkbLayout to construct all keys and
-    // then add into the keys.
-/*    
-    if ( iVkbLayoutInfo->BgBmp() )
-        {
-        TRAP_IGNORE( SetBackgroundBitmapL( iVkbLayoutInfo->BgBmp() ) );
-        }
-    
-    if ( iVkbLayoutInfo->BgMaskBmp() )
-        {
-        TRAP_IGNORE( SetBackgroundMaskBitmapL( iVkbLayoutInfo->BgMaskBmp() ) );
-        }
-*/
-    if ( iVkbLayoutInfo->DimBmp() )
-        {
-        SetDimKeyBmp( iVkbLayoutInfo->DimBmp() );
-        }
-    
-    if ( iVkbLayoutInfo->DimMaskBmp() )
-        {
-        SetDimKeyMaskBmp( iVkbLayoutInfo->DimMaskBmp() );
-        }
-
-    TInt count = iVkbLayoutInfo->HighlightBmps().Count();
-    
-    TRAP_IGNORE(
-    for ( TInt i = 0; i < count; i++ )
-        {
-        AddKeyHighLightBitmapL(iVkbLayoutInfo->HighlightBmps()[i]);
-        }
-        );
-        
-    count = iVkbLayoutInfo->HighlightMaskBmps().Count();
-
-    TRAP_IGNORE(
-        for ( TInt i = 0; i < count; i++ )
-            {
-            AddKeyHighLightMaskBitmapL(iVkbLayoutInfo->HighlightMaskBmps()[i]);
-            }
-        );
-    
-    count = iVkbLayoutInfo->KeyInfoList().Count();
-    TRAP_IGNORE(
-    for ( TInt i = 0; i < count; i++ )
-        {
-        iVkbLayoutInfo->KeyInfoList()[i]->Key()->SetDimmed( EFalse );
-        AddKeyL( iVkbLayoutInfo->KeyInfoList()[i]->Key() );
-        }
-    );
-   
-    TRgb textColor;
-    TInt error = AknsUtils::GetCachedColor(AknsUtils::SkinInstance(),
-                                           textColor,
-                                           KAknsIIDQsnTextColors,
-                                           EAknsCIQsnTextColorsCG59);
-    if (error != KErrNone)
-        {
-    	textColor = TRgb( KDefaultTextColor );
-        }  
-    SetFontColor( textColor );
-    
-    Draw();
-    }
-
-// --------------------------------------------------------------------------
-// CPeninputVkbCtrlExt::Reset
-// (other items were commented in a header)
-// --------------------------------------------------------------------------
-//
-EXPORT_C void CPeninputVkbCtrlExt::Reset()
-    {
-    const RPointerArray<CVirtualKey>& keys = KeyArray();
-    for(TInt i = keys.Count() - 1 ; i >= 0 ; --i)    
-        {
-        RemoveKey(keys[i]);
-        }
-    
-    const RPointerArray<CFbsBitmap>& bmps = KeyHighlightBmpList();
-    for(TInt i = bmps.Count() - 1 ; i >= 0 ; --i)
-        {
-        RemoveKeyHighLightBitmap(i);
-        }
-
-    const RPointerArray<CFbsBitmap>& maskbmps = KeyHighlightMaskBmpList();    
-    for(TInt i = maskbmps.Count() - 1 ; i >= 0 ; --i)
-        {
-        RemoveKeyHighLightMaskBitmap(i);
-        }    
-            
-    SetDimKeyBmp( NULL );
-    SetDimKeyMaskBmp( NULL );    
-    
-    iVkbLayoutInfo = NULL;
-    }
-
-// --------------------------------------------------------------------------
-// CPeninputVkbCtrlExt::Move
-// (other items were commented in a header)
-// --------------------------------------------------------------------------
-//
-EXPORT_C void CPeninputVkbCtrlExt::Move( const TPoint& aOffset )
-    {
-    TRect rect = Rect();
-    rect.Move( aOffset );
-    SetRect( rect );     
-    }
-    
-// --------------------------------------------------------------------------
-// CPeninputVkbCtrlExt::DimKeys
-// (other items were commented in a header)
-// --------------------------------------------------------------------------
-//
-EXPORT_C void CPeninputVkbCtrlExt::DimKeys( const HBufC* aPermitted )
-    {
-    TInt count = iVkbLayoutInfo->KeyInfoList().Count();
-    
-    for ( TInt i = 0; i < count ; i++ )
-        {
-        TChar ch = TChar( (TUint)( KeyArray()[i]->KeyCode() ) );
-        TInt index = aPermitted->Locate( ch ) ;
-        
-        if ( index == KErrNotFound )
-            {
-            DimKey( KeyArray()[i], ETrue );
-            }     
-        }
-    }
-
-// --------------------------------------------------------------------------
-// CPeninputVkbCtrlExt::DimKeySet
-// (other items were commented in a header)
-// --------------------------------------------------------------------------
-//
-EXPORT_C void CPeninputVkbCtrlExt::DimKeySet( const HBufC* aSet, TBool aDim )
-    {
-    TInt keyCount = iVkbLayoutInfo->KeyInfoList().Count();
-    TInt setCount = const_cast<HBufC*>(aSet)->Des().Length();
-    TInt findNum = 0;
-    
-    for ( TInt i = 0; i < keyCount ; i++ )
-        {
-        TChar ch = TChar( (TUint)( KeyArray()[i]->KeyCode() ) );
-        TInt index = aSet->Locate( ch ) ;
-        
-        if ( index != KErrNotFound )
-            {
-            findNum++;
-            DimKey( KeyArray()[i], aDim );
-            }     
-        
-        if ( findNum == setCount )
-            {
-            break;
-            }
-        }
-    }
-
-// --------------------------------------------------------------------------
-// CPeninputVkbCtrlExt::CancelDims
-// (other items were commented in a header)
-// --------------------------------------------------------------------------
-//
-EXPORT_C void CPeninputVkbCtrlExt::CancelDims()
-    {
-    TInt count = iVkbLayoutInfo->KeyInfoList().Count();
-    
-    for ( TInt i = 0; i < count ; i++ )
-        {
-        DimKey( KeyArray()[i], EFalse );
-        }
-    }
-
-// --------------------------------------------------------------------------
-// CPeninputVkbCtrlExt::ConstructFromResourceL
-// (other items were commented in a header)
-// --------------------------------------------------------------------------
-//
-EXPORT_C void CPeninputVkbCtrlExt::ConstructFromResourceL()
-	{
-	if (iResourceId == KInvalidResId)
-		{
-	    return;
-		}
-	
-	// Release original resource
-    if( BackgroundBmp() )
-    	{
-    	CFbsBitmap* bkBmp = BackgroundBmp();
-    	delete bkBmp;	
-    	SetBackgroundBmp( NULL );
-    	}
-    if( BkMaskBmp() )
-    	{
-    	CFbsBitmap* bkMaskBmp = BkMaskBmp();
-    	delete bkMaskBmp;
-		SetBackgroundMaskBmp( NULL );
-    	}    
-    		
-    TResourceReader resReader;
-    CCoeEnv::Static()->CreateResourceReaderLC( resReader, iResourceId );                                             
-     
-    TPtrC bmpFileName = resReader.ReadTPtrC();
-    TInt32 imgMajorSkinId = resReader.ReadInt32();
-
-    TAknsItemID id;
-    TInt skinitemid;
-    
-    MAknsSkinInstance* skininstance = AknsUtils::SkinInstance();
-    const TInt16 bmpId = resReader.ReadInt16();
-    const TInt16 bmpMskId = resReader.ReadInt16();
-    skinitemid = resReader.ReadInt16();   
-    id.Set(TInt(imgMajorSkinId), skinitemid);
-	
-    if (bmpId != KInvalidImg)
-    	{
-    	CFbsBitmap* backgroundImg = NULL;
-    	CFbsBitmap* backgroundMaskImg = NULL;
-        if (bmpMskId != KInvalidImg)
-            {
-            AknsUtils::CreateIconL(skininstance, 
-                                   id,
-                                   backgroundImg,
-                                   backgroundMaskImg,
-                                   bmpFileName,
-                                   bmpId,
-                                   bmpMskId);
-            }
-        else
-            {
-            AknsUtils::CreateIconL(skininstance,
-                                   id,
-                                   backgroundImg,
-                                   bmpFileName,
-                                   bmpId);
-            }
-       
-        SetBackgroundBmp( backgroundImg );
-        SetBackgroundMaskBmp( backgroundMaskImg );           
-    	}
-    CleanupStack::PopAndDestroy( 1 );		
-	}