diff -r 890b5dd735f8 -r f15ac8e65a02 vtuis/videotelui/src/features/prefs/cvtuicolortone.cpp --- a/vtuis/videotelui/src/features/prefs/cvtuicolortone.cpp Thu Aug 19 09:57:36 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,383 +0,0 @@ -/* -* Copyright (c) 2006 - 2008 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: Color tone UI feature implementation. -* -*/ - - -#include -#include -#include -#include -#include "cvtuicolortone.h" -#include "tvtuifeatureids.h" -#include -#include "mvtuicomponentmanager.h" -#include "cvtuifeaturemanager.h" -#include "CVtUiAppUi.h" -#include "tvtuilocalvariation.h" -#include "cvtuifeaturemanager.h" -#include "tvtuistates.h" -#include "cvtuicommandmanager.h" - -// Implementation of TVtUiColorToneComponentState - -// --------------------------------------------------------------------------- -// TVtUiColorToneComponentState::TVtUiColorToneComponentState -// --------------------------------------------------------------------------- -// -TVtUiColorToneComponentState::TVtUiColorToneComponentState( - MVtUiComponent& aComponent ) : - TVtUiComponentState( aComponent, - TVtUiBlockListBitField( - MVtUiComponent::EComponentIdDialer | - MVtUiComponent::EComponentIdToolbar | - MVtUiComponent::EComponentIdNumberEntry ) ) - { - } - -// --------------------------------------------------------------------------- -// CVtUiColorTone::NewL -// --------------------------------------------------------------------------- -// -CVtUiColorTone* CVtUiColorTone::NewL( CVtUiFeatureManager& - aFeatureManager ) - { - __VTPRINTENTER( "UiColorTone.NewL" ) - CVtUiColorTone* self = - new ( ELeave ) CVtUiColorTone( aFeatureManager ); - CleanupStack::PushL( self ); - self->ConstructL(); - CleanupStack::Pop(); - __VTPRINTEXIT( "UiColorTone.NewL" ) - return self; - } - -// --------------------------------------------------------------------------- -// CVtUiColorTone::~CVtUiColorTone -// --------------------------------------------------------------------------- -// -CVtUiColorTone::~CVtUiColorTone() - { - __VTPRINTENTER( "UiColorTone.~" ) - // unregister layout change - iFeatureManager.ComponentManager().ChangeLayoutChangeRegistration( - *this, MVtUiComponentManager::EUnregister ); - // unregister component - iFeatureManager.ComponentManager().ChangeComponentRegistration( - iComponentState, MVtUiComponentManager::EUnregister ); - __VTPRINTEXIT( "UiColorTone.~" ) - } - -// --------------------------------------------------------------------------- -// CVtUiColorTone::StartL -// --------------------------------------------------------------------------- -// -void CVtUiColorTone::StartL() - { - __VTPRINTENTER( "UiColorTone.StartL" ) - if ( iFeatureState == MVtUiFeature::EReady ) - { - iFeatureManager.AppUi().EnableCommandActivatingAndCleanupPushL(); - iFeatureManager.UiStates().SetIsFixedToolbarVisible( EFalse ); - iFeatureManager.ComponentManager(). - RequestActivationL ( MVtUiComponent::EComponentIdColorTone ); - CleanupStack::Pop(); // EnableCommandActivatingAndCleanupPushL - // set state - iFeatureState = MVtUiFeature::EActive; - } - __VTPRINTEXIT( "UiColorTone.StartL" ) - } - -// --------------------------------------------------------------------------- -// CVtUiColorTone::Stop -// --------------------------------------------------------------------------- -// -void CVtUiColorTone::Stop() - { - __VTPRINTENTER( "UiColorTone.Stop" ) - iAsyncCallback->Cancel(); - iAsyncCallback->Set( TCallBack( &DoStopL, this ) ); - iAsyncCallback->CallBack(); - __VTPRINTEXIT( "UiColorTone.Stop" ) - } - -// --------------------------------------------------------------------------- -// CVtUiColorTone::InitFeatureL -// --------------------------------------------------------------------------- -// -void CVtUiColorTone::InitFeatureL() - { - __VTPRINTENTER( "UiColorTone.InitFeatureL" ) - CVtUiPrefSettingListBase::InitFeatureL(); - User::LeaveIfError( - iFeatureManager.ComponentManager().ChangeComponentRegistration( - iComponentState, MVtUiComponentManager::ERegister ) ); - User::LeaveIfError( - iFeatureManager.ComponentManager().ChangeLayoutChangeRegistration( - *this, MVtUiComponentManager::ERegister ) ); - iFeatureState = EReady; - __VTPRINTEXIT( "UiColorTone.InitFeatureL" ) - } - -// --------------------------------------------------------------------------- -// CVtUiColorTone::ComponentId -// --------------------------------------------------------------------------- -// -MVtUiComponent::TComponentId CVtUiColorTone::ComponentId() const - { - __VTPRINTENTER( "UiColorTone.ComponentId" ) - __VTPRINTEXIT( "UiColorTone.ComponentId" ) - return MVtUiComponent::EComponentIdColorTone; - } - -// --------------------------------------------------------------------------- -// CVtUiColorTone::ComponentAsControl -// --------------------------------------------------------------------------- -// -CCoeControl* CVtUiColorTone::ComponentAsControl() - { - __VTPRINTENTER( "UiColorTone.ComponentAsControl" ) - __VTPRINTEXIT( "UiColorTone.ComponentAsControl" ) - return NULL; - } - -// --------------------------------------------------------------------------- -// CVtUiColorTone::DoActivateL -// --------------------------------------------------------------------------- -// -void CVtUiColorTone::DoActivateL() - { - __VTPRINTENTER( "UiColorTone.DoActivateL" ) - // get supported color tone modes - iCameraPref->GetSupportedColorTones( iSupportedModes ); - __VTPRINT2( DEBUG_GEN, "UiColorTone.ConstructL=%d", iSupportedModes ) - iFeatureManager.UiStates().SetColorToneModeOn( ETrue ); - iAsyncCallback->Cancel(); - iAsyncCallback->Set( TCallBack( &DoStartL, this ) ); - iAsyncCallback->CallBack(); - __VTPRINTEXIT( "UiColorTone.DoActivateL" ) - } - -// --------------------------------------------------------------------------- -// CVtUiColorTone::DoDeactivateL -// --------------------------------------------------------------------------- -// -void CVtUiColorTone::DoDeactivateL() - { - __VTPRINTENTER( "UiColorTone.DoDeactivateL" ) - iFeatureManager.UiStates().SetColorToneModeOn( EFalse ); - CVtUiPrefSettingListBase::StopSettingPageL(); - __VTPRINTEXIT( "UiColorTone.DoDeactivateL" ) - } - -// --------------------------------------------------------------------------- -// CVtUiColorTone::HandleLayoutChangeL -// --------------------------------------------------------------------------- -// -void CVtUiColorTone::HandleLayoutChangeL() - { - __VTPRINTENTER( "UiColorTone.HandleLayoutChangeL" ) - if ( iFeatureState == MVtUiFeature::EActive ) - { - SizeChanged(); - } - __VTPRINTEXIT( "UiColorTone.HandleLayoutChangeL" ) - } - -// --------------------------------------------------------------------------- -// CVtUiColorTone::CurrentSelection -// --------------------------------------------------------------------------- -// -TInt CVtUiColorTone::CurrentSelection() - { - __VTPRINTENTER( "UiColorTone.CurrentSelection" ) - // ask from engine which item is currently active - MVtEngCameraPreferences::TColorTone wb; - if ( iCameraPref->GetColorTone( wb ) ) - { - __VTPRINTEXIT( "UiColorTone.CurrentSelectionERR" ) - // if error occured return 0 i.e. first list item - return 0; - } - __VTPRINTEXIT( "UiColorTone.CurrentSelection" ) - return MapCTEnumToArrayIndex( wb ); - } - -// --------------------------------------------------------------------------- -// CVtUiColorTone::SetItemsL -// --------------------------------------------------------------------------- -// -void CVtUiColorTone::SetItemsL( CDesCArray& aArray ) - { - __VTPRINTENTER( "UiColorTone.SetItemsL<" ) - __VTPRINT2( DEBUG_GEN, "UiColorTone.SetItemsL=%d", iSupportedModes ) - // Normal mode allways supported - ReadAndAppendItemL( aArray, R_VIDEOTELUI_QTN_INCAL_CT_NORMAL_OPTION ); - iActiveItems.Append( MVtEngCameraPreferences::ENormal ); - - if( iSupportedModes & MVtEngCameraPreferences::ESepia ) - { - ReadAndAppendItemL( aArray, R_VIDEOTELUI_QTN_INCAL_SEPIA_OPTION ); - iActiveItems.Append( MVtEngCameraPreferences::ESepia ); - } - if( iSupportedModes & MVtEngCameraPreferences::EGrayscale ) - { - ReadAndAppendItemL( aArray, R_VIDEOTELUI_QTN_INCAL_B_AND_W_OPTION ); - iActiveItems.Append( MVtEngCameraPreferences::EGrayscale ); - } - if( iSupportedModes & MVtEngCameraPreferences::ENegative ) - { - ReadAndAppendItemL( aArray, R_VIDEOTELUI_QTN_INCAL_NEGATIVE_OPTION ); - iActiveItems.Append( MVtEngCameraPreferences::ENegative ); - } - __VTPRINTEXIT( "UiColorTone.SetItemsL" ) - } - -// --------------------------------------------------------------------------- -// CVtUiColorTone::SettingPageResId -// --------------------------------------------------------------------------- -// -TInt CVtUiColorTone::SettingPageResId() const - { - __VTPRINTENTER( "UiColorTone.SettingPageResId" ) - __VTPRINTEXIT( "UiColorTone.SettingPageResId" ) - return R_VIDEOTELUI_COLOR_TONE_SETTING_PAGE; - } - -// --------------------------------------------------------------------------- -// CVtUiColorTone::SettingPageItemChanged -// --------------------------------------------------------------------------- -// -void CVtUiColorTone::SettingPageItemChangedL( TInt aIndex ) - { - __VTPRINTENTER( "CVtUiColorTone.SettingPageItemChangedL" ) - __VTPRINT2( DEBUG_GEN, "CVtUiColorTone.index=%d", aIndex ) - if ( iFeatureManager.UiStates().ExecState() == TVtUiStates::EExecStateResetting ) - { - __VTPRINTEXIT( "CVtUiColorTone.SettingPageItemChangedL" ) - return; - } - // Map index to right color tone value - MVtEngCameraPreferences::TColorTone ct = MapArrayIndexToCTEnum( aIndex ); - - // cast the parameter - TPtrC8 params( reinterpret_cast< TUint8* >( &ct ), - sizeof( MVtEngCameraPreferences::TColorTone ) ); - - // Adjust color tone - MVtEngMedia::TCameraId currentCamId; - iFeatureManager.AppUi().Model().Media().GetCurrentCameraId( currentCamId ); - if( currentCamId == MVtEngMedia::ESecondaryCamera ) - { - iFeatureManager.AppUi().DoExecuteCmdL( KVtEngSetColorTone, ¶ms ); - iPendingSettingChangeCmd = EFalse; - } - else - iPendingSettingChangeCmd = ETrue; - __VTPRINTEXIT( "CVtUiColorTone.SettingPageItemChangedL" ) - } - - -// --------------------------------------------------------------------------- -// CVtUiColorTone::CVtUiColorTone -// --------------------------------------------------------------------------- -// -CVtUiColorTone::CVtUiColorTone( CVtUiFeatureManager& aFeatureManager ) - : CVtUiPrefSettingListBase( aFeatureManager, EVtUiFeatureIdColourTone ), - iComponentState( *this ) - { - __VTPRINTENTER( "UiColorTone.UiColorTone" ) - __VTPRINTEXIT( "UiColorTone.UiColorTone" ) - } - -// --------------------------------------------------------------------------- -// CVtUiColorTone::MapCTEnumToArrayIndex -// --------------------------------------------------------------------------- -// -TInt CVtUiColorTone::MapCTEnumToArrayIndex( MVtEngCameraPreferences:: - TColorTone& aColorTone ) const - { - __VTPRINTENTER( "CVtUiColorTone.MapCTEnumToArrayIndex" ) - __VTPRINT2( DEBUG_GEN, "CVtUiColorTone.cpunt=%d", iActiveItems.Count() ) - for ( TInt i = 0; i < iActiveItems.Count(); ++i ) - { - if ( iActiveItems [ i ] == aColorTone ) - { - __VTPRINT2( DEBUG_GEN, "CVtUiColorTone.index=%d", i ) - __VTPRINTEXIT( "CVtUiColorTone.MapCTEnumToArrayIndex" ) - return i; - } - } - __VTPRINTEXIT( "CVtUiColorTone.MapCTEnumToArrayIndex" ) - // not found - return KErrNotFound; - } -// --------------------------------------------------------------------------- -// CVtUiColorTone::MapArrayIndexToCTEnum -// --------------------------------------------------------------------------- -// -MVtEngCameraPreferences::TColorTone CVtUiColorTone::MapArrayIndexToCTEnum( - TInt aIndex) const - { - __VTPRINTENTER( "TColorTone.MapArrayIndexToCTEnum" ) - __VTPRINT2( DEBUG_GEN, "TColorTone.index=%d", aIndex ) - __VTPRINT2( DEBUG_GEN, "TColorTone.count=%d", iActiveItems.Count() ) - const TInt count = iActiveItems.Count(); - if ( count > 0 && aIndex < count && aIndex >= 0 ) - { - __VTPRINTEXIT( "TColorTone.MapArrayIndexToCTEnum" ) - return static_cast< MVtEngCameraPreferences::TColorTone > - ( iActiveItems[ aIndex ] ); - } - else // not valid index return first item in the list - { - __VTPRINTEXIT( "TColorTone.MapArrayIndexToCTEnum_ERROR_INDEX" ) - return static_cast< MVtEngCameraPreferences::TColorTone > - ( iActiveItems[ 0 ] ); - } - } - -// --------------------------------------------------------------------------- -// CVtUiColorTone::DoStop -// --------------------------------------------------------------------------- -// -TInt CVtUiColorTone::DoStopL( TAny* aAny ) - { - __VTPRINTENTER( "CVtUiColorTone.DoStopL" ) - CVtUiColorTone* self = static_cast< CVtUiColorTone* >( aAny ); - if ( self->iFeatureState == MVtUiFeature::EActive ) - { - self->iFeatureManager.ComponentManager(). - DeActivateComponentL ( MVtUiComponent::EComponentIdColorTone ); - // set state - self->iFeatureState = MVtUiFeature::EReady; - } - __VTPRINTEXIT( "CVtUiColorTone.DoStopL" ) - return KErrNone; - } - -// --------------------------------------------------------------------------- -// CVtUiColorTone::DoStart -// --------------------------------------------------------------------------- -// -TInt CVtUiColorTone::DoStartL( TAny* aAny ) - { - __VTPRINTENTER( "CVtUiColorTone.DoStart" ) - CVtUiColorTone* self = static_cast< CVtUiColorTone* >( aAny ); - self->CVtUiPrefSettingListBase::StartSettingPageL(); - self->iFeatureManager.UiStates().SetIsCommandActivating( EFalse ); - __VTPRINTEXIT( "CVtUiColorTone.DoStart" ) - return KErrNone; - }