diff -r 8b2d6d0384b0 -r d9aefe59d544 camerauis/activepalette/Src/CActivePalettePluginBase.cpp --- a/camerauis/activepalette/Src/CActivePalettePluginBase.cpp Tue Feb 02 00:01:39 2010 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,335 +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: Active Palette Base plugin class* -*/ - - -/** - * @file CActivePalettePluginBase.cpp - * Active Palette Base plugin class - */ - -// INCLUDE FILES - -#include "CActivePalettePluginBase.h" -#include "ActivePalette2Logger.h" - -#include "ActivePalette2Utils.h" - -#include -#include - -#include "ActivePalette2Cfg.h" - - -// CONSTANTS - -const TInt KAnimPhase1 = 0; -const TInt KAnimPhase2 = 1; -const TInt KAnimPhaseMax = KAnimPhase2; -const TInt KAnimNofPhases = 2; - -const TInt KAnimDeviatinFactorMul = 1; -const TInt KAnimDeviatinFactorDiv = 5; - - -// ================= MEMBER FUNCTIONS ======================= - -// ----------------------------------------------------------------------------- -// CAnimationHelper::CAnimationHelper() -// C++ constructor -// ----------------------------------------------------------------------------- -// -CAnimationHelper::CAnimationHelper() - { - // empty - } - -// ----------------------------------------------------------------------------- -// CAnimationHelper::ConstructL() -// 2nd phase construction -// ----------------------------------------------------------------------------- -// -void CAnimationHelper::ConstructL(const TSize aSize, const TBool aMaskNeeded) - { - ActivePalette2Utils::CreateDrawingObjectsL(aSize,&iFrame,&iFrameDevice,&iFrameGc); - if (aMaskNeeded) - { - ActivePalette2Utils::CreateDrawingObjectsL(EGray256, - aSize,&iFrameMask,&iFrameMaskDevice,&iFrameMaskGc); - } - } - -// ----------------------------------------------------------------------------- -// CAnimationHelper::~CAnimationHelper() -// Destructor -// ----------------------------------------------------------------------------- -// -CAnimationHelper::~CAnimationHelper() - { - // DeleteDrawingObjects checks passed pointers to ensure they are not null - ActivePalette2Utils::DeleteDrawingObjects(&iFrame,&iFrameDevice,&iFrameGc); - ActivePalette2Utils::DeleteDrawingObjects(&iFrameMask,&iFrameMaskDevice,&iFrameMaskGc); - } - -// ----------------------------------------------------------------------------- -// CAnimationHelper::NewL() -// Symbian 2 phase construction -// ----------------------------------------------------------------------------- -// -CAnimationHelper * CAnimationHelper::NewL(const TSize aSize, const TBool aMaskNeeded) - { - CAnimationHelper * self = new (ELeave) CAnimationHelper(); - - CleanupStack::PushL(self); - self->ConstructL(aSize, aMaskNeeded); - CleanupStack::Pop(self); - - return self; - } - -// ----------------------------------------------------------------------------- -// NActivePalettePluginFactory::TPluginCreationParams::PluginObserver() -// ----------------------------------------------------------------------------- -// -EXPORT_C MActivePalettePluginObserver& NActivePalettePluginFactory::TPluginCreationParams::PluginObserver(void) const - { - return iObserver; - } - -// ----------------------------------------------------------------------------- -// NActivePalettePluginFactory::TPluginCreationParams::Dimensions(void) -// ----------------------------------------------------------------------------- -// -EXPORT_C TSize NActivePalettePluginFactory::TPluginCreationParams::Dimensions(void) const - { - return iDimensions; - } - -// ----------------------------------------------------------------------------- -// NActivePalettePluginFactory::TPluginCreationParams::TPluginCreationParams() -// ----------------------------------------------------------------------------- -// -EXPORT_C NActivePalettePluginFactory::TPluginCreationParams::TPluginCreationParams(MActivePalettePluginObserver & aObserver, - const TSize& aDimensions) -: iObserver(aObserver), - iDimensions(aDimensions) - { - } - -// ----------------------------------------------------------------------------- -// CActivePalettePluginBase::CActivePalettePluginBase() -// C++ constructor -// ----------------------------------------------------------------------------- -// -EXPORT_C CActivePalettePluginBase::CActivePalettePluginBase(const NActivePalettePluginFactory::TPluginCreationParams & aCreationParams) -: iPluginObserver(aCreationParams.PluginObserver()) - { - LOGTEXT( _L( "CActivePalettePluginBase::CActivePalettePluginBase" ) ); - PluginObserver().NotifyPluginCreated(this); - } - -// ----------------------------------------------------------------------------- -// CActivePalettePluginBase::~CActivePalettePluginBase() -// Destructor -// ----------------------------------------------------------------------------- -// -EXPORT_C CActivePalettePluginBase::~CActivePalettePluginBase(void) - { - LOGTEXT( _L( "CActivePalettePluginBase::~CActivePalettePluginBase" ) ); - CBase::Delete(iAnimationHelper); - iAnimationHelper = NULL; - PluginObserver().NotifyPluginDestroyed(this); - } - -// ----------------------------------------------------------------------------- -// CActivePalettePluginBase::ConstructL() -// 2nd phase constructor -// ----------------------------------------------------------------------------- -// -EXPORT_C void CActivePalettePluginBase::ConstructL(const NActivePalettePluginFactory::TPluginCreationParams& /*aCreationParams*/, - const TDesC8 & /*aCustomDataDes*/, - const TInt /*aCustomDataInt*/) - { - LOGTEXT( _L( "CActivePalettePluginBase::ConstructL" ) ); - // empty - } - -// ----------------------------------------------------------------------------- -// CActivePalettePluginBase::Shutdown() -// ----------------------------------------------------------------------------- -// -EXPORT_C void CActivePalettePluginBase::Shutdown(void) - { - LOGTEXT( _L( "CActivePalettePluginBase::Shutdown" ) ); - // empty - } - -// ----------------------------------------------------------------------------- -// CActivePalettePluginBase::HandleMessageL() -// ----------------------------------------------------------------------------- -// -EXPORT_C void CActivePalettePluginBase::HandleMessageL(const TInt aMessageID, - const TDesC8& /*aDataDes*/, - const TInt /*aDataInt*/) - { - LOGTEXT1( _L( "CActivePalettePluginBase::HandleMessageL, message ID: %d" ), aMessageID ); - // empty - if (aMessageID) - { - // no compiler warning - } - } - -// ----------------------------------------------------------------------------- -// CActivePalettePluginBase::PrepareAniFramesL() -// ----------------------------------------------------------------------------- -// -EXPORT_C void CActivePalettePluginBase::PrepareAniFramesL(const TInt aAniType, - TPluginAnimationInfo& aAniInfo, - const TPluginAnimationInfo& aDefaultAniInfo, - const CFbsBitmap& aItemIcon, - const CFbsBitmap* aItemIconMask) - { - LOGTEXT1( _L( "CActivePalettePluginBase::PrepareAniFramesL, AniType ID: %d" ), aAniType); - - // use default animation info - aAniInfo = aDefaultAniInfo; - - // create data for icon and mask frames - iAnimationHelper = CAnimationHelper::NewL(aDefaultAniInfo.iFrameSize, - (NULL != aItemIconMask)); - - if (aAniType) - { - // no compiler warning - } - if (aItemIcon.Handle()) - { - // no compiler warning - } - } - -// ----------------------------------------------------------------------------- -// CActivePalettePluginBase::ReleaseAniFrames() -// ----------------------------------------------------------------------------- -// -EXPORT_C void CActivePalettePluginBase::ReleaseAniFrames(const TInt aAniType) - { - LOGTEXT1( _L( "CActivePalettePluginBase::ReleaseAniFrames, AniType ID: %d" ), aAniType); - - CBase::Delete(iAnimationHelper); - iAnimationHelper = NULL; - - if (aAniType) - { - // no compiler warning - } - } - -// ----------------------------------------------------------------------------- -// CActivePalettePluginBase::ProduceAniFrame( -// ----------------------------------------------------------------------------- -// -EXPORT_C void CActivePalettePluginBase::ProduceAniFrame( - TInt aAniType, - TInt aFrameNo, - const TPluginAnimationInfo& aAniInfo, - const CFbsBitmap& aItemIcon, - const CFbsBitmap* aItemIconMask, - CFbsBitmap** aFrame, - CFbsBitmap** aFrameMask, - TBool& aOwnershipTransferForFrame, - TBool& aOwnershipTransferForMask) - { - LOGTEXT2( - _L( "CActivePalettePluginBase::ProduceAniFrame, AniType ID: %d, frame no : %d" ), - aAniType, - aFrameNo); - - CAnimationHelper* ani = static_cast(iAnimationHelper); - - aOwnershipTransferForFrame = EFalse; - aOwnershipTransferForMask = EFalse; - - *aFrame = ani->iFrame; - *aFrameMask = ani->iFrameMask; - - // empty mask, transparent - if (NULL != ani->iFrameMaskGc) - { - ani->iFrameMaskGc->Reset(); - ani->iFrameMaskGc->SetBrushColor(KRgbBlack); - ani->iFrameMaskGc->SetBrushStyle(CGraphicsContext::ESolidBrush); - ani->iFrameMaskGc->Clear(); - } - - // empty frame - ani->iFrameGc->Reset(); - ani->iFrameGc->SetBrushColor(KRgbWhite); - ani->iFrameGc->SetBrushStyle(CGraphicsContext::ESolidBrush); - ani->iFrameGc->Clear(); - - // ani frame - TInt phase = Min(KAnimPhaseMax, - KAnimNofPhases * aFrameNo / aAniInfo.iNofFrames); - - TInt inPhaseMax = aAniInfo.iNofFrames / KAnimNofPhases; - - TInt inPhaseOfs = Min(inPhaseMax, aFrameNo - (phase * KAnimPhaseMax)); - - TInt lenX = aAniInfo.iFrameSize.iWidth; - TInt lenY = aAniInfo.iFrameSize.iHeight; - - TInt devX = lenX * KAnimDeviatinFactorMul / KAnimDeviatinFactorDiv; - TInt devY = lenY * KAnimDeviatinFactorMul / KAnimDeviatinFactorDiv; - - TInt szx(0); - TInt szy(0); - - TInt addX = devX * inPhaseOfs / inPhaseMax; - TInt addY = devY * inPhaseOfs / inPhaseMax; - - switch (phase) - { - case KAnimPhase1: - szx = lenX - addX; - szy = lenY - addY; - break; - - case KAnimPhase2: - default: - szx = lenX - devX + addX; - szy = lenY - devY + addY; - break; - } - - TRect frameRect(TPoint( (lenX - szx) / 2, (lenY - szy) / 2), - TSize(szx, szy)); - TRect iconRect(TPoint(0,0), aItemIcon.SizeInPixels()); - - if (NULL != aItemIconMask && NULL != ani->iFrameMaskGc) - { - ani->iFrameMaskGc->DrawBitmap(frameRect,aItemIconMask,iconRect); - } - - ani->iFrameGc->DrawBitmap(frameRect,&aItemIcon,iconRect); - - if (aAniType) - { - // no compiler warning - } - } - -// End of File