diff -r 61bc0f252b2b -r bac7acad7cb3 camera_plat/active_palette_2_api/tsrc/src/ActivePaletteContainer.cpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/camera_plat/active_palette_2_api/tsrc/src/ActivePaletteContainer.cpp Wed Sep 01 12:30:54 2010 +0100 @@ -0,0 +1,393 @@ +/* +* Copyright (c) 2009 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: CCActivePaletteContainer implementation. +* +*/ + +#include +#include +#include +//#include +//#include +//#include + + +#include + +#include +#include +#include +#include +#include +#include + +#include + +#include "activepalette2apitest.h" +#include "ActivePaletteContainer.h" + + +#define LOG(text) iTest->Log()->Log(_L(text)) +#define LOG1(text, param) iTest->Log()->Log(_L(text), param) +#define LOG2(text, param1, param2) iTest->Log()->Log(_L(text), param1, param2) +#define LOG3(text, param1, param2, param3) iTest->Log()->Log(_L(text), param1, param2, param3) + +namespace + { + _LIT( KTrueString, "true" ); + _LIT( KFalseString, "false" ); + } + + +// ----------------------------------------------------------------------------- +// CActivePaletteContainer::~CActivePaletteContainer +// Destructor. +// (other items were commented in a header). +// ----------------------------------------------------------------------------- +// +CActivePaletteContainer::~CActivePaletteContainer() + { + if( iActivePalette != NULL ) + { + iActivePalette->SetPaletteVisibility(ETrue, EFalse); + delete iActivePalette; + iActivePalette = NULL; + } + } + +// ----------------------------------------------------------------------------- +// CActivePaletteContainer::ConstructL +// Second phase constructor. +// (other items were commented in a header). +// ----------------------------------------------------------------------------- +// +void +CActivePaletteContainer::ConstructL(CActivePalette2ApiTest* aTest) + { + iTest = aTest; + + LOG("=> CActivePaletteContainer::ConstructL"); + CreateWindowL(); + + TVwsViewId viewId; + CCoeEnv::Static()->AppUi()->GetDefaultViewId(viewId); + iAppUid = viewId.iAppUid; + LOG1("<> CActivePalette2ApiTest::ConstructL: GetDefaultViewId() appuid: %d", iAppUid.iUid ); + LOG("<> CActivePaletteContainer::ConstructL 1"); + SetRect(CCoeEnv::Static()->ScreenDevice()->SizeInPixels()); + LOG("<> CActivePaletteContainer::ConstructL 2"); + CreateActivePaletteL(); + LOG("<> CActivePaletteContainer::ConstructL 3"); + ActivateL(); + LOG("<= CActivePaletteContainer::ConstructL"); + } + +// ----------------------------------------------------------------------------- +// CActivePaletteContainer::CountComponentControls +// From CCoeControl. +// (other items were commented in a header). +// ----------------------------------------------------------------------------- +// +TInt +CActivePaletteContainer::CountComponentControls() const + { + if( iActivePalette != NULL ) + return 1; + else + return 0; + } + +// ----------------------------------------------------------------------------- +// CActivePaletteContainer::ComponentControl +// From CCoeControl. +// (other items were commented in a header). +// ----------------------------------------------------------------------------- +// +CCoeControl* +CActivePaletteContainer::ComponentControl(TInt aIndex) const + { + if( aIndex == 0 ) + return iActivePalette != NULL ? iActivePalette->CoeControl() : NULL; + else + return NULL; + } + +// ----------------------------------------------------------------------------- +// CActivePaletteContainer::Draw +// From CCoeControl. +// (other items were commented in a header). +// ----------------------------------------------------------------------------- +// +void +CActivePaletteContainer::Draw(const TRect &aRect) const + { + LOG("=> CActivePaletteContainer::Draw"); + + CWindowGc& gc = SystemGc(); + gc.Reset(); + gc.SetBrushStyle(CGraphicsContext::ESolidBrush); + gc.SetBrushColor(TRgb(0xE0,0xE0,0xFF)); + gc.Clear(aRect); + + LOG("<> CActivePaletteContainer::Draw 1"); + + //iActivePalette->RenderActivePalette( TRect(iPosition,iSize) ); + + LOG("<= CActivePaletteContainer::Draw"); + } + +// ----------------------------------------------------------------------------- +// CActivePaletteContainer::OfferKeyEventL +// From CCoeControl. +// (other items were commented in a header). +// ----------------------------------------------------------------------------- +// +TKeyResponse +CActivePaletteContainer::OfferKeyEventL(const TKeyEvent& aKeyEvent, TEventCode aType) + { + LOG3("=> CActivePaletteContainer::OfferKeyEventL - keycode[%d] scancode[%d] type[%d]", + aKeyEvent.iCode, aKeyEvent.iScanCode, aType); + + TKeyResponse response = EKeyWasNotConsumed; + if( iActivePalette + && iActivePalette->CoeControl() ) + { + response = iActivePalette->CoeControl()->OfferKeyEventL(aKeyEvent,aType); + LOG1("<> CActivePaletteContainer::OfferKeyEventL - Active Palette consumed ? %S", + response == EKeyWasConsumed ? &KTrueString : &KFalseString ); + } + if( EKeyWasNotConsumed == response ) + { + response = CCoeControl::OfferKeyEventL(aKeyEvent, aType); + } + + LOG("<= CActivePaletteContainer::OfferKeyEventL"); + return response; + } + +// ----------------------------------------------------------------------------- +// CActivePaletteContainer::SizeChanged +// From CCoeControl. +// (other items were commented in a header). +// ----------------------------------------------------------------------------- +// +void +CActivePaletteContainer::SizeChanged() + { + LOG("=> CActivePaletteContainer::SizeChanged"); + CCoeControl::SizeChanged(); + LOG("<= CActivePaletteContainer::SizeChanged"); + } + + +// ----------------------------------------------------------------------------- +// CActivePaletteContainer::ViewId +// From MCoeView. +// (other items were commented in a header). +// ----------------------------------------------------------------------------- +// +TVwsViewId +CActivePaletteContainer::ViewId() const + { + LOG("=> CActivePaletteContainer::ViewId"); + TVwsViewId id; + id.iAppUid = iAppUid; + id.iViewUid = TUid::Uid(1234567890); + LOG("<= CActivePaletteContainer::ViewId"); + return id; + } + +// ----------------------------------------------------------------------------- +// CActivePaletteContainer::ViewActivatedL +// From MCoeView. +// (other items were commented in a header). +// ----------------------------------------------------------------------------- +// +void +CActivePaletteContainer::ViewActivatedL( + const TVwsViewId& /*aPrevViewId*/, + TUid /*aCustomMessageId*/, + const TDesC8& /*aCustomMessage*/ ) + { + LOG("=><= CActivePaletteContainer::ViewActivatedL"); + } + +// ----------------------------------------------------------------------------- +// CActivePaletteContainer::ViewDeactivated +// From MCoeView. +// (other items were commented in a header). +// ----------------------------------------------------------------------------- +// +void +CActivePaletteContainer::ViewDeactivated() + { + LOG("=><= CActivePaletteContainer::ViewDeactivated"); + } + + +// ----------------------------------------------------------------------------- +// CActivePaletteContainer::NotifyItemFocused +// From MActivePalette2Observer. +// (other items were commented in a header). +// ----------------------------------------------------------------------------- +// +void +CActivePaletteContainer::NotifyItemFocused(TInt /*aPrevItem*/, TInt /*aFocusedItem*/) + { + LOG("=><= CActivePaletteContainer::NotifyItemFocused"); + } + +// ----------------------------------------------------------------------------- +// CActivePaletteContainer::NotifyItemSelected +// From MActivePalette2Observer. +// (other items were commented in a header). +// ----------------------------------------------------------------------------- +// +void +CActivePaletteContainer::NotifyItemSelected(const TActivePalette2EventData& aEvent) + { + LOG("=> CActivePaletteContainer::NotifyItemSelected"); + CheckActivePaletteEvent(aEvent); + LOG("<= CActivePaletteContainer::NotifyItemSelected"); + } + +// ----------------------------------------------------------------------------- +// CActivePaletteContainer::NotifyItemComplete +// From MActivePalette2Observer. +// (other items were commented in a header). +// ----------------------------------------------------------------------------- +// +void +CActivePaletteContainer::NotifyItemComplete(const TActivePalette2EventData& aEvent, + const TDesC8& aDataDes, + TInt aDataInt) + { + LOG ("=> CActivePaletteContainer::NotifyItemComplete"); + CheckActivePaletteEvent(aEvent); + LOG1("<> CActivePaletteContainer::NotifyItemComplete - data descr: %S", &aDataDes); + LOG1("<> CActivePaletteContainer::NotifyItemComplete - data int: %d", aDataInt); + LOG ("<= CActivePaletteContainer::NotifyItemComplete"); + } + +// ----------------------------------------------------------------------------- +// CActivePaletteContainer::NotifyMessage +// From MActivePalette2Observer. +// (other items were commented in a header). +// ----------------------------------------------------------------------------- +// +void +CActivePaletteContainer::NotifyMessage(const TActivePalette2EventData& aEvent, + TInt aMessageID, + const TDesC8& aDataDes, + TInt aDataInt) + { + LOG ("=> CActivePaletteContainer::NotifyMessage"); + CheckActivePaletteEvent(aEvent); + LOG1("<> CActivePaletteContainer::NotifyMessage - message id: %d", aMessageID); + LOG1("<> CActivePaletteContainer::NotifyMessage - data descr: %S", &aDataDes); + LOG1("<> CActivePaletteContainer::NotifyMessage - data int: %d", aDataInt); + LOG ("<= CActivePaletteContainer::NotifyMessage"); + } + +// ----------------------------------------------------------------------------- +// CActivePaletteContainer::Redraw +// From MActivePalette2Observer. +// (other items were commented in a header). +// ----------------------------------------------------------------------------- +// +void +CActivePaletteContainer::Redraw(const TRect& aArea) + { + LOG("=> CActivePaletteContainer::Redraw"); + /* + CWindowGc& gc = SystemGc(); + gc.SetBrushStyle(CGraphicsContext::ESolidBrush); + gc.SetBrushColor(TRgb(0x00,0x00,0xFF)); + gc.Clear(aArea); + */ + Draw(aArea); + LOG("<= CActivePaletteContainer::Redraw"); + } + +// ----------------------------------------------------------------------------- +// CActivePaletteContainer::ActivePaletteUpdated +// From MActivePalette2Observer. +// (other items were commented in a header). +// ----------------------------------------------------------------------------- +// +void +CActivePaletteContainer::ActivePaletteUpdated(void) + { + LOG("=> CActivePaletteContainer::ActivePaletteUpdated"); + DrawDeferred(); + LOG("<= CActivePaletteContainer::ActivePaletteUpdated"); + } + + + +// ----------------------------------------------------------------------------- +// CActivePaletteContainer::CreateActivePaletteL +// Helper method for creating ActivePalette. +// (other items were commented in a header). +// ----------------------------------------------------------------------------- +// +void +CActivePaletteContainer::CreateActivePaletteL() + { + delete iActivePalette; + iActivePalette = NULL; + + iActivePalette = ActivePalette2Factory::CreateActivePaletteUIL( EAP2DrawModeSemiTransparent ); + + iActivePalette->SetObserver( this ); + iActivePalette->CoeControl()->SetContainerWindowL( *this ); + iActivePalette->CoeControl()->SetMopParent( this ); + iActivePalette->SetPaletteVisibility(ETrue, EFalse); + TRect rect( Rect() ); + iActivePalette->LocateTo( TPoint(rect.Width()/4, rect.Height()/4) ); + } + +// ----------------------------------------------------------------------------- +// CActivePaletteContainer::ActivePalette +// Get the Active Palette instance. +// (other items were commented in a header). +// ----------------------------------------------------------------------------- +// +MActivePalette2UI* +CActivePaletteContainer::ActivePalette() const + { + return iActivePalette; + } + + +// ----------------------------------------------------------------------------- +// CActivePaletteContainer::CheckActivePaletteEvent +// (other items were commented in a header). +// ----------------------------------------------------------------------------- +// +void +CActivePaletteContainer::CheckActivePaletteEvent( const TActivePalette2EventData& aEvent ) + { + TInt resultCode( aEvent.Result() ); + TInt currentItem( aEvent.CurItem() ); + TInt previousItem( aEvent.PrevItem() ); + TInt servingItem( aEvent.ServingItem() ); + TUid servingPluginUid( aEvent.ServingPlugin() ); + + iTest->Log()->Log( _L("=><= CActivePaletteContainer::CheckActivePaletteEvent - got: code[%d] items[current:%d previous:%d serving:%d] plugin[%d]"), + resultCode, currentItem, previousItem, servingItem, servingPluginUid.iUid); + } + + +