--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/uiservicetab/vimpstdetailsviewplugin/inc/cvimpstdetailsviewbrandhandler.h Wed Sep 01 12:33:36 2010 +0100
@@ -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 <e32base.h>
+#include <AknIconArray.h>
+#include <gulicon.h>
+#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