diff -r 6369bfd1b60d -r 08b5eae9f9ff upnpsharing/applicationengine/src/upnpiconconfigurator.cpp --- a/upnpsharing/applicationengine/src/upnpiconconfigurator.cpp Mon Nov 01 13:44:24 2010 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,376 +0,0 @@ -/* -* Copyright (c) 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: Configurator class for mediaserver icons - * -*/ - - - - - - -// INCLUDE FILES -// System -#include - -// upnp stack -#include - -// upnp framework internal API's -#include "upnpfileutilitytypes.h" // utilities / mime type definitions - -// app.engine internal -#include "upnpapplicationcrkeys.h" //KUPnPAppMediaServerIcon -#include "upnpfilesharingengineao.h" -#include "upnpiconconfigurator.h" - - -// constants -_LIT( KIcon1Path, "\\system\\apps\\upnp\\upnp_ms_jpeg_sm.jpg"); -const TInt KIcon1Width( 48 ); -const TInt KIcon1Height( 48 ); -const TInt KIcon1Depth( 24 ); - -_LIT( KIcon2Path, "\\system\\apps\\upnp\\upnp_ms_jpeg_lrg.jpg"); -const TInt KIcon2Width( 120 ); -const TInt KIcon2Height( 120 ); -const TInt KIcon2Depth( 24 ); - -_LIT( KIcon3Path, "\\system\\apps\\upnp\\upnp_ms_png_sm.png"); -const TInt KIcon3Width( 48 ); -const TInt KIcon3Height( 48 ); -const TInt KIcon3Depth( 24 ); - -_LIT( KIcon4Path, "\\system\\apps\\upnp\\upnp_ms_png_lrg.png"); -const TInt KIcon4Width( 120 ); -const TInt KIcon4Height( 120 ); -const TInt KIcon4Depth( 24 ); - -_LIT(KComponentLogfile, "applicationengine.txt"); -#include "upnplog.h" - -// ============================ MEMBER FUNCTIONS ============================ - -// -------------------------------------------------------------------------- -// CUPnPIconConfigurator::CUPnPIconConfigurator -// -------------------------------------------------------------------------- -// -CUPnPIconConfigurator::CUPnPIconConfigurator( - RUpnpMediaServerClient& aMediaServer, - CUPnPFileSharingEngineAO& aFileShareingAO ) - : CActive(CActive::EPriorityStandard), - iMediaServer( aMediaServer ), - iFileShareEngineAO( aFileShareingAO ) - { - __LOG( "[UPNP_ENGINE] CUPnPIconConfigurator::CUPnPIconConfigurator" ); - CActiveScheduler::Add( this ); - } - - -// -------------------------------------------------------------------------- -// CUPnPIconConfigurator::~CUPnPIconConfigurator() -// -------------------------------------------------------------------------- -// -CUPnPIconConfigurator::~CUPnPIconConfigurator() - { - - if ( IsActive() ) - { - iState = EStateIdle; - TRequestStatus* stat = &iStatus; - User::RequestComplete( stat, KErrNone ); - } - Cancel(); - } - -// -------------------------------------------------------------------------- -// CUPnPIconConfigurator::NeedToConfigureIcons() -// -------------------------------------------------------------------------- -// -TBool CUPnPIconConfigurator::NeedToConfigureIcons() - { -#ifdef _DEBUG - // in debug mode ALWAYS add new icons - return ETrue; -#else - // in normal mode only add icons if they DO NOT exist - TBool iconsExist = EFalse; - TRAP_IGNORE( iconsExist = CheckIconsAddedL() ); - __LOG1( "[UPNP_ENGINE] CUPnPIconConfigurator: iconsExist %d", - iconsExist ); - return !iconsExist; -#endif - } - -// -------------------------------------------------------------------------- -// CUPnPIconConfigurator::ConfigureIconsL() -// -------------------------------------------------------------------------- -// -void CUPnPIconConfigurator::ConfigureIconsL() - { - RemoveIcons(); - } - -// -------------------------------------------------------------------------- -// CUPnPFileSharingEngineAO::RunL -// Called when asyncronous request is ready -// -------------------------------------------------------------------------- -// -void CUPnPIconConfigurator::RunL() - { - __LOG( "[UPNP_ENGINE] CUPnPIconConfigurator::RunL" ); - - TInt err( iStatus.Int() ); - - if ( ( err != KErrNone ) && ( err != KErrNotFound ) ) - { - iFileShareEngineAO.SetIconComplete( err ); - } - else - { - switch ( iState ) - { - case EStateRemoving: - { - AddIcon1L(); - iState = EStateAdding1; - } - break; - case EStateAdding1: - { - delete iIcon1; - iIcon1 = NULL; - AddIcon2L(); - iState = EStateAdding2; - } - break; - case EStateAdding2: - { - delete iIcon2; - iIcon2 = NULL; - AddIcon3L(); - iState = EStateAdding3; - } - break; - case EStateAdding3: - { - delete iIcon3; - iIcon3 = NULL; - AddIcon4L(); - iState = EStateAdding4; - } - break; - case EStateAdding4: - { - delete iIcon4; - iIcon4 = NULL; - // operation complete. - MarkIconsAddedL( ETrue ); - Cancel(); - iFileShareEngineAO.SetIconComplete( KErrNone ); - } - break; - default: - { - __PANICD( __FILE__, __LINE__ ); - } - break; - } - } - } - -// -------------------------------------------------------------------------- -// CUPnPIconConfigurator::RunError -// RunL error handler -// -------------------------------------------------------------------------- -// -TInt CUPnPIconConfigurator::RunError( TInt aError ) - { - __LOG( "[UPNP_ENGINE] CUPnPIconConfigurator::RunError begin" ); - - iFileShareEngineAO.SetIconComplete( aError ); - return KErrNone; - } - -// -------------------------------------------------------------------------- -// CUPnPIconConfigurator::DoCancel -// Cancels active object -// -------------------------------------------------------------------------- -// -void CUPnPIconConfigurator::DoCancel() - { - __LOG( "[UPNP_ENGINE] CUPnPIconConfigurator::DoCancel" ); - } - -// -------------------------------------------------------------------------- -// CUPnPIconConfigurator::RemoveIconsL -// -------------------------------------------------------------------------- -// -void CUPnPIconConfigurator::RemoveIcons() - { - __LOG( "[UPNP_ENGINE]\t CUPnPIconConfigurator::RemoveIconsL" ); - iState = EStateRemoving; - iMediaServer.RemoveIcons( iStatus ); - if ( !IsActive() ) - { - SetActive(); - } - else - { - __LOG("[UPNP_ENGINE]\t CUPnPIconConfigurator::RemoveIconsL Error :\ - Already active"); - } - } - -// -------------------------------------------------------------------------- -// CUPnPIconConfigurator::AddIcon1 -// -------------------------------------------------------------------------- -// -void CUPnPIconConfigurator::AddIcon1L() - { - __LOG( "[UPNP_ENGINE]\t CUPnPIconConfigurator::AddIcon1" ); - TFileName iconPath; - ResolveIconPath( KIcon1Path, iconPath ); - iIcon1 = CUpnpIcon::NewL( iconPath, - KIcon1Width, KIcon1Height, KIcon1Depth, KJpegMime ); - iMediaServer.AddIcon( iIcon1, iStatus ); - if ( !IsActive() ) - { - SetActive(); - } - else - { - __LOG("[UPNP_ENGINE]\t CUPnPIconConfigurator::AddIcon1L Error :\ - Already active"); - } - } - -// -------------------------------------------------------------------------- -// CUPnPIconConfigurator::AddIcon2 -// -------------------------------------------------------------------------- -// -void CUPnPIconConfigurator::AddIcon2L() - { - __LOG( "[UPNP_ENGINE]\t CUPnPIconConfigurator::AddIcon2" ); - TFileName iconPath; - ResolveIconPath( KIcon2Path, iconPath ); - iIcon2 = CUpnpIcon::NewL( iconPath, - KIcon2Width, KIcon2Height, KIcon2Depth, KJpegMime ); - iMediaServer.AddIcon( iIcon2, iStatus ); - if ( !IsActive() ) - { - SetActive(); - } - else - { - __LOG("[UPNP_ENGINE]\t CUPnPIconConfigurator::AddIcon2L Error :\ - Already active"); - } - } - -// -------------------------------------------------------------------------- -// CUPnPIconConfigurator::AddIcon3 -// -------------------------------------------------------------------------- -// -void CUPnPIconConfigurator::AddIcon3L() - { - __LOG( "[UPNP_ENGINE]\t CUPnPIconConfigurator::AddIcon3" ); - TFileName iconPath; - ResolveIconPath( KIcon3Path, iconPath ); - iIcon3 = CUpnpIcon::NewL( iconPath, - KIcon3Width, KIcon3Height, KIcon3Depth, KPngMime ); - iMediaServer.AddIcon( iIcon3, iStatus ); - if ( !IsActive() ) - { - SetActive(); - } - else - { - __LOG("[UPNP_ENGINE]\t CUPnPIconConfigurator::AddIcon3L Error :\ - Already active"); - } - } - -// -------------------------------------------------------------------------- -// CUPnPIconConfigurator::AddIcon4 -// -------------------------------------------------------------------------- -// -void CUPnPIconConfigurator::AddIcon4L() - { - __LOG( "[UPNP_ENGINE]\t CUPnPIconConfigurator::AddIcon4" ); - TFileName iconPath; - ResolveIconPath( KIcon4Path, iconPath ); - iIcon4 = CUpnpIcon::NewL( iconPath, - KIcon4Width, KIcon4Height, KIcon4Depth, KPngMime ); - iMediaServer.AddIcon( iIcon4, iStatus ); - if ( !IsActive() ) - { - SetActive(); - } - else - { - __LOG("[UPNP_ENGINE]\t CUPnPIconConfigurator::AddIcon4L Error :\ - Already active"); - } - } - -// -------------------------------------------------------------------------- -// CUPnPIconConfigurator::ResolveIconPath -// Resolves absolute icon path -// -------------------------------------------------------------------------- -// -void CUPnPIconConfigurator::ResolveIconPath( - const TDesC& relativePath, TFileName& iconPath ) - { - iconPath = relativePath; - TFileName dllName; - Dll::FileName( dllName ); - TBuf<2> drive = dllName.Left(2); // Drive letter followed by ':' - iconPath.Insert( 0, drive ); - } - -// -------------------------------------------------------------------------- -// CUPnPIconConfigurator::CheckIconsAddedL -// Set the mediaserver icon if it is needed -// -------------------------------------------------------------------------- -// -TBool CUPnPIconConfigurator::CheckIconsAddedL() - { - __LOG( "[UPNP_ENGINE] CUPnPIconConfigurator::CheckIconsAddedL" ); - - TInt iconSet ( EFalse ); - CRepository *repository = CRepository::NewL( KCRUidUPnPApplication ); - repository->Get( KUPnPAppMediaServerIcon, iconSet ); - delete repository; - repository = NULL; - return iconSet; - } - -// -------------------------------------------------------------------------- -// CUPnPIconConfigurator::MarkIconsAddedL -// store the cenrep value -// -------------------------------------------------------------------------- -// -void CUPnPIconConfigurator::MarkIconsAddedL( TBool aMark ) - { - __LOG( "[UPNP_ENGINE] CUPnPIconConfigurator::MarkIconsAddedL" ); - - CRepository *repository = CRepository::NewL( KCRUidUPnPApplication ); - repository->Set( KUPnPAppMediaServerIcon, aMark ); - delete repository; - repository = NULL; - } - - -// End of file