diff -r 000000000000 -r 72b543305e3a messagingappbase/mcesettings/src/MceSettingsUtils.cpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/messagingappbase/mcesettings/src/MceSettingsUtils.cpp Thu Dec 17 08:44:11 2009 +0200 @@ -0,0 +1,204 @@ +/* +* Copyright (c) 2002 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: +* Offers utility functions. +* +*/ + + + +// INCLUDE FILES +#include +#include +#include // AknTextUtils +#include "MceSettingsUtils.h" +#include + +#include +#include + +#include +#include + +#include +#include + +#include + +// CONSTANTS + + +// ================= MEMBER FUNCTIONS ======================= + + +// --------------------------------------------------------- +// MceSettingsUtils::MemoryInUseOptionL +// This is static function +// Returns ETrue if 'Memory in use' option is enabled in +// mce/settings +// --------------------------------------------------------- +// +TBool MceSettingsUtils::MemoryInUseOptionL( ) + { + TBool memoryInUse = ETrue; + if ( FeatureManager::FeatureSupported( KFeatureIdMmc ) ) + { + if ( FeatureManager::FeatureSupported( KFeatureIdMmcHotswap ) ) + { + // if not hotswap phone, then Memory in use is enabled + // if hotswap phone, check from shared data, if + // Memory in use is enabled + + CRepository* repository = NULL; + TRAPD( ret, repository = CRepository::NewL( KCRUidMuiuVariation ) ); + CleanupStack::PushL( repository ); + + TInt featureBitmask = 0; + + if ( ret == KErrNone ) + { + if ( repository->Get( KMuiuMceFeatures,featureBitmask ) != KErrNone ) + { + memoryInUse = ETrue; + } + else + { + if ( !( featureBitmask & KMceFeatureIdHotswap ) ) + { + memoryInUse = EFalse; + } + } + } + CleanupStack::Pop( repository ); + delete repository; + } + } + else + { + //no mmc support + memoryInUse = EFalse; + } + return memoryInUse; + } + + +// --------------------------------------------------------- +// MceSettingsUtils::NewMailIndicatorL +// This is static function +// Returns ETrue if new mail indicator setting is supported +// --------------------------------------------------------- +// +TBool MceSettingsUtils::NewMailIndicatorL() + { + TBool newMailIndicator = EFalse; + + CRepository* repository = NULL; + TRAPD( ret, repository = CRepository::NewL( KCRUidMuiuVariation ) ); + CleanupStack::PushL( repository ); + + TInt featureBitmask = 0; + + if ( ret == KErrNone ) + { + if ( repository->Get( KMuiuMceFeatures,featureBitmask ) != KErrNone ) + { + newMailIndicator = EFalse; + } + else + { + newMailIndicator = featureBitmask & KMceFeatureIdNewMailIndicator; + } + } + + CleanupStack::Pop( repository ); + delete repository; + + return newMailIndicator; + } + +// --------------------------------------------------------- +// MceSettingsUtils::CspBitsL +// Returns ETrue if csp bits is supported +// --------------------------------------------------------- +// +TBool MceSettingsUtils::CspBitsL( ) + { + TBool csp = EFalse; + + CRepository* repository = NULL; + TRAPD( ret, repository = CRepository::NewL( KCRUidMuiuVariation ) ); + CleanupStack::PushL( repository ); + + TInt featureBitmask = 0; + + if ( ret == KErrNone ) + { + if ( repository->Get( KMuiuMceFeatures,featureBitmask ) != KErrNone ) + { + csp = EFalse; + } + else + { + csp = featureBitmask & KMceFeatureIdCSPSupport; + } + } + + CleanupStack::Pop( repository ); + delete repository; + + return csp; + } + +// --------------------------------------------------------- +// MceUtils::GetHealthyMailboxList +// This is static function +// (other items were commented in a header). +// --------------------------------------------------------- +// +TInt MceSettingsUtils::GetHealthyMailboxListL( + const MImumInHealthServices& aHealthServices, + MImumInHealthServices::RMailboxIdArray& aMailboxIdArray, + TBool aGetImap4, + TBool aGetPop3, + TBool aGetSyncML, + TBool aGetOther ) + { + TInt64 mailboxFlags = MImumInHealthServices::EFlagGetHealthy; + + if ( aGetImap4 ) + { + mailboxFlags |= MImumInHealthServices::EFlagIncludeImap4; + } + if ( aGetPop3 ) + { + mailboxFlags |= MImumInHealthServices::EFlagIncludePop3; + } + if ( aGetSyncML ) + { + mailboxFlags |= MImumInHealthServices::EFlagIncludeSyncMl; + } + if ( aGetOther ) + { + mailboxFlags |= MImumInHealthServices::EFlagIncludeOther; + } + + TInt error = aHealthServices.GetMailboxList( + aMailboxIdArray, + mailboxFlags ); + + return error; + } + + +// End of File