diff -r 000000000000 -r 5e5d6b214f4f uiservicetab/vimpstdetailsviewplugin/inc/cvimpstdetailsviewbrandhandler.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/uiservicetab/vimpstdetailsviewplugin/inc/cvimpstdetailsviewbrandhandler.h Tue Feb 02 10:12:18 2010 +0200 @@ -0,0 +1,216 @@ +/* +* 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: Implementation of detailsview contact brand data + * +*/ + + + +#ifndef CVIMPSTDETAILSVIEWBRANDHANDLER_H +#define CVIMPSTDETAILSVIEWBRANDHANDLER_H + +// INCLUDES +#include +#include +#include +#include "spdefinitions.h" +//Forward Declarations +class CBSFactory; +class MBSAccess; +class CSPSettings; +// CLASS DECLARATION + +/** + * Brand handler implemenation class + * + * @lib vimpstdetailsviewplugin.dll + * @since 5.0 + */ +class CVIMPSTDetailsViewBrandHandler : public CBase + { + public: // Constructors and destructor + + + /** + * Two-phased constructor. + * @param aServiceId , service Id + * @return a pointer to this class + * @since s60 v5.0 + **/ + static CVIMPSTDetailsViewBrandHandler* NewL(TInt aServiceId); + + + /** + * Destructor. + * @since s60 v5.0 + **/ + virtual ~CVIMPSTDetailsViewBrandHandler(); + public: // New Functions + + /** + * Loads necessary icons for this decorator + * @return Icon array. Ownership is transferred. + * @since s60 v5.0 + **/ + CAknIconArray* LoadIconsLC( ); + + /** + * Loads necessary icons for this decorator + * @param aBitmap ,bitmap + * @param aMask , mask + * @param aBitmapId bitmap Id + * @param aMaskId : mask Id + * @since s60 v5.0 + **/ + void LoadBitMapLC(CFbsBitmap*& aBitmap, + CFbsBitmap*& aMask, + TInt aBitmapId, + TInt aMaskId ); + + /** + * read the service name from settings + * @param aServiceName , reference to service name + * @since s60 v5.0 + **/ + void GetServiceNameL( TDes& aServiceName ); + + /** + * read the service store name from settings + * @return aServiceStoreUri , reference to service store uri with cnt path + * @since s60 v5.0 + **/ + const TDesC& ServiceStoreUriL(); + + /** + * read if service supported from cch + * @return ETrue if service supported + * @since s60 v5.0 + **/ + TBool ServiceSupportedL( ); + + /** + * constructs branded icons for this decorator + * @param aId id of the bitmap to be fetchec from the Branding server. + * @return Icon. + * @since s60 v5.0 + **/ + CGulIcon* LoadBrandBitmapL( const TDesC8& aId ); + + private: + + + /** + * Loads brand icons for this decorator + * @return Icon array. Ownership is transferred. + * @since s60 v5.0 + **/ + CAknIconArray* LoadBrandIconsLC( ); + + + /** + * Loads default icons for this decorator + * @param aMbmFile Bitmap file + * @return Icon array. Ownership is transferred. + * @since s60 v5.0 + **/ + CAknIconArray* LoadDefaultIconsLC(const TDesC& aMbmFile ); + + + + /** + * constructs necessary icons for this decorator + * @param aBitmapId bitmapId + * @param aMaskId maskId + * @param aFullPath Bitmap path + * @return Icon. + * @since s60 v5.0 + **/ + CGulIcon* LoadDefaultBitmapL( TInt aBitmapId, + TInt aMaskId, + const TDesC& aFullPath ); + + + /** + * C++ default constructor. + * @param aContacts Pointer to contacts-API + * @since s60 v5.0 + */ + CVIMPSTDetailsViewBrandHandler(TInt aServiceId); + + /** + * By default Symbian OS constructor is private. + * @since s60 v5.0 + */ + void ConstructL(); + + /** + * Prepares branding access + * @return KErrNone if sucessfull, else the Error. + * @since S60 5.0 + */ + TInt PrepareBrandingAccess(); + + /** + * get the brand info from settings + * @return KErrNone if sucessfull, else the Error. + * @since S60 5.0 + */ + TInt GetBrandInfoL(TLanguage& aBrandLanguage, + TInt &aBrandVersion, TDes8& aBrandId); + /** + * get the brand version from settings + * @param aServiceId service id + * @param aBrand , Brand to get + * @param aPropertyName , property name + * @return KErrNone if sucessfull, else the Error. + * @since S60 5.0 + */ + void PropertyReadBrandL( TUint32 aServiceId ,TInt &aBrand, + TServicePropertyName aPropertyName ); + + private: // Data + + // Not own. Settings id of the service.. + const TDesC8& iAppId; + + // Not own. Settings id of the service.. + HBufC8* iBrandId; + + // Not own. Settings id of the service.. + TLanguage iLanguageId; + + //Owns, handle to brnadingfactory. + CBSFactory* iBrandingFactory; + + //Owns, handle to brandaccessor + MBSAccess* iBrandingAccess; + + //stores the default MBM path + TFileName iDefaultMbmPath; + + // owns : service id + TInt iServiceId; + + // owns : settings + CSPSettings* iSettings ; + + // owns : service store uri + HBufC* iServiceStoreUri; + + + }; + +#endif // CVIMPSTDETAILSVIEWBRANDHANDLER_H + +// End of File