diff -r 890b5dd735f8 -r f15ac8e65a02 vtuis/videotelui/src/features/cvtuifeaturemanager.cpp --- a/vtuis/videotelui/src/features/cvtuifeaturemanager.cpp Thu Aug 19 09:57:36 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,280 +0,0 @@ -/* -* Copyright (c) 2006 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: Feature manager for Video Telephone application. -* -*/ - - - -// INCLUDE FILES -#include "cvtuifeaturemanager.h" -#include "CVtUiAppUi.h" -#include "cvtuifixedtoolbar.h" -#include "cvtuifloatingtoolbar.h" -#include "cvtuimenus.h" -#include "cvtuifeaturebase.h" -#include "tvtuistates.h" -#include -#include "cvtuicommandpolicymanager.h" -#include "cvtuisoftkeys.h" -#include "cvtuinumberentry.h" -#include "cvtuivideoquality.h" -#include "cvtuiwhitebalance.h" -#include "cvtuicolortone.h" -#include "cvtuidialer.h" -#include "cvtuibrightness.h" -#include "cvtuicontrast.h" -#include "cvtuivolume.h" -#include "cvtuizoom.h" - -#include - -// CONSTANTS -const TInt KFeatureCount = 9; - -// ======== LOCAL FUNCTIONS ======== - -// --------------------------------------------------------------------------- -// Used in Attach() method to compare two instances of MVtUiFeature. -// --------------------------------------------------------------------------- -// -TInt FeatureCmpFunc( const CVtUiFeatureBase& aV1, const CVtUiFeatureBase& aV2 ) - { - return ( aV1.Id() - aV2.Id() ); - } - -// --------------------------------------------------------------------------- -// Used in GetFeature() method to search feature by id. -// --------------------------------------------------------------------------- -// -TInt FeatureIdCmpFunc( const TInt* aId, const CVtUiFeatureBase& aFeature ) - { - return ( *aId - aFeature.Id() ); - } - - -// ============================ MEMBER FUNCTIONS =============================== - -// ----------------------------------------------------------------------------- -// CVtUiFeatureManager::NewL -// Two-phased constructor. -// ----------------------------------------------------------------------------- -// -CVtUiFeatureManager* CVtUiFeatureManager::NewL( CVtUiAppUi& aAppUi, - TVtUiStates& aUiStates, MVtUiCommandManager& aCommandManager, - MVtUiComponentManager& aComponentManager ) - { - CVtUiFeatureManager* self = new( ELeave ) CVtUiFeatureManager( aAppUi, - aUiStates, aCommandManager, aComponentManager ); - CleanupStack::PushL( self ); - self->ConstructL(); - CleanupStack::Pop(); - return self; - } - -// ----------------------------------------------------------------------------- -// CVtUiFeatureManager::CVtUiFeatureManager -// C++ constructor can NOT contain any code, that -// might leave. -// ----------------------------------------------------------------------------- -// -CVtUiFeatureManager::CVtUiFeatureManager( CVtUiAppUi& aAppUi, - TVtUiStates& aUiStates, MVtUiCommandManager& aCommandManager, - MVtUiComponentManager& aComponentManager ) - : iAppUi( aAppUi ), iUiStates( aUiStates ), - iCommandManager( aCommandManager ), iComponentManager( aComponentManager ) - { - __VTPRINTENTER( "CVtUiFeatureManager.CVtUiFeatureManager" ) - __VTPRINTEXIT( "CVtUiFeatureManager.CVtUiFeatureManager" ) - } - - -// ----------------------------------------------------------------------------- -//CVtUiFeatureManager::~CVtUiFeatureManager() -// ----------------------------------------------------------------------------- -// -CVtUiFeatureManager::~CVtUiFeatureManager() - { - __VTPRINTENTER( "CVtUiFeatureManager.~" ) - iFeatures.ResetAndDestroy(); - __VTPRINTEXIT( "CVtUiFeatureManager.~" ) - } - -// ----------------------------------------------------------------------------- -// CVtUiFeatureManager::ConstructL -// Symbian 2nd phase constructor can leave. -// ----------------------------------------------------------------------------- -// -void CVtUiFeatureManager::ConstructL() - { - __VTPRINTENTER( "CVtUiFeatureManager.ConstructL" ) - iFeatures.ReserveL( KFeatureCount ); - CreateFeaturesL(); - __VTPRINTEXIT( "CVtUiFeatureManager.ConstructL" ) - } - -// ----------------------------------------------------------------------------- -// CVtUiFeatureManager::CreateFeaturesL -// ----------------------------------------------------------------------------- -// -void CVtUiFeatureManager::CreateFeaturesL() - { - __VTPRINTENTER( "CVtUiFeatureManager.CreateFeaturesL" ) - CVtUiFeatureBase* feature = NULL; - TLinearOrder< CVtUiFeatureBase > - linOrder( ::FeatureCmpFunc ); - - if ( AknLayoutUtils::PenEnabled() ) - { - feature = CVtUiFixedToolbar::NewL( *this ); - } - else - { - feature = CVtUiFloatingToolbar::NewL( *this ); - } - - if ( feature ) - { - iFeatures.InsertInOrderL( feature, linOrder ); - } - - feature = CVtUiMenus::NewL( *this ); - iFeatures.InsertInOrderL( feature, linOrder ); - - feature = CVtUiSoftkeys::NewL( *this, *iAppUi.GetCba() ); - iFeatures.InsertInOrderL( feature, linOrder ); - - feature = CVtUiNumberEntry::NewL( *this ); - iFeatures.InsertInOrderL( feature, linOrder ); - - if ( FeatureManager::FeatureSupported( KFeatureIdOnScreenDialer ) ) - { - feature = CVtUiDialer::NewL( *this ); - if ( feature ) - { - iFeatures.InsertInOrderL( feature, linOrder ); - } - } - - feature = CVtUiVideoQuality::NewL( *this ); - if ( feature ) - { - iFeatures.InsertInOrderL( feature, linOrder ); - } - - feature = CVtUiWhiteBalance::NewL( *this ); - if ( feature ) - { - iFeatures.InsertInOrderL( feature, linOrder ); - } - - feature = CVtUiColorTone::NewL( *this ); - if ( feature ) - { - iFeatures.InsertInOrderL( feature, linOrder ); - } - - feature = CVtUiBrightness::NewL( *this ); - if ( feature ) - { - iFeatures.InsertInOrderL( feature, linOrder ); - } - - feature = CVtUiContrast::NewL( *this ); - if ( feature ) - { - iFeatures.InsertInOrderL( feature, linOrder ); - } - - feature = CVtUiVolume::NewL( *this ); - if ( feature ) - { - iFeatures.InsertInOrderL( feature, linOrder ); - } - - feature = CVtUiZoom::NewL( *this ); - if ( feature ) - { - iFeatures.InsertInOrderL( feature, linOrder ); - } - - __VTPRINTEXIT( "CVtUiFeatureManager.CreateFeaturesL" ) - } - -// ----------------------------------------------------------------------------- -// CVtUiFeatureManager::AppUi -// ----------------------------------------------------------------------------- -// -CVtUiAppUi& CVtUiFeatureManager::AppUi() - { - __VTPRINTENTER( "CVtUiFeatureManager.AppUi" ) - __VTPRINTEXIT( "CVtUiFeatureManager.AppUi" ) - return iAppUi; - } - -// ----------------------------------------------------------------------------- -// CVtUiFeatureManager::GetFeatureById -// ----------------------------------------------------------------------------- -// -MVtUiFeature* CVtUiFeatureManager::GetFeatureById( TInt aId ) - { - __VTPRINTENTER( "CVtUiFeatureManager.GetFeatureById" ) - CVtUiFeatureBase* result = NULL; - - TInt index( iFeatures.FindInOrder( aId, ::FeatureIdCmpFunc ) ); - if ( index != KErrNotFound ) - { - result = iFeatures[ index ]; - } - __VTPRINTEXITR( "CVtUiFeatureManager.GetFeatureById %d", (TInt)result ) - return result; - - } - -// ----------------------------------------------------------------------------- -// CVtUiFeatureManager::UiStates -// ----------------------------------------------------------------------------- -// - -TVtUiStates& CVtUiFeatureManager::UiStates() - { - return iUiStates; - } - -// ----------------------------------------------------------------------------- -// CVtUiFeatureManager::CommandManager -// ----------------------------------------------------------------------------- -// -MVtUiCommandManager& CVtUiFeatureManager::CommandManager() - { - return iCommandManager; - } - -// ----------------------------------------------------------------------------- -// CVtUiFeatureManager::ComponentManager -// ----------------------------------------------------------------------------- -// -MVtUiComponentManager& CVtUiFeatureManager::ComponentManager() - { - return iComponentManager; - } - -// ----------------------------------------------------------------------------- -// CVtUiFeatureManager::Model -// ----------------------------------------------------------------------------- -// -CVtEngModel& CVtUiFeatureManager::Model() - { - return iAppUi.Model(); - }