diff -r 2b7283837edb -r 3104fc151679 uiservicetab/vimpstdetailsviewplugin/inc/cvimpstdetailsheadercontrol.h --- a/uiservicetab/vimpstdetailsviewplugin/inc/cvimpstdetailsheadercontrol.h Thu Aug 19 09:41:53 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,198 +0,0 @@ -/* -* Copyright (c) 2008-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 the header part control(s) of the details view layout -* -*/ - - -#ifndef CVIMPSTDETAILSHEADERCONTROL_H -#define CVIMPSTDETAILSHEADERCONTROL_H - -// INCLUDES -#include -#include - -// FORWARD DECLARATIONS -class CEikImage; -class CEikLabel; -class CVIMPSTDetailsViewBrandHandler; -class MVPbkStoreContact; -class MVPbkStoreContactField; -class CVIMPSTDetailsImageDecoder; -class MVIMPSTDetailsPresenceHandler; - -// CLASS DECLARATION -/** - * Class implementing the header part control of vimpstdetailsviewplugin - * - * @lib vimpstdetailsviewplugin.dll - * @since S60 v5.0 - */ - -class CVIMPSTDetailsHeaderControl : public CCoeControl - { -public: - // Construction & destruction - /** - * Two-phased constructor - * @param aBrandHandler, Reference to brand handler class - * @param aPresenceHandler , reference presence handler - * @return a instance of this class - * @since S60 v5.0 - */ - static CVIMPSTDetailsHeaderControl* NewL(CVIMPSTDetailsViewBrandHandler& aBrandHandler, - MVIMPSTDetailsPresenceHandler& aPresenceHandler ); - - /** - * Destructor. - * @since S60 v5.0 - */ - ~CVIMPSTDetailsHeaderControl(); - -public: // FROM CCoeControl - // Functions from base classes - /** - * From CCoeControl - * Component control handling (compound control) - * @since S60 v5.0 - */ - TInt CountComponentControls() const; - - /** - * From CCoeControl - * Component control handling (compound control) - * @since S60 v5.0 - */ - CCoeControl* ComponentControl(TInt aIndex) const; - - /** - * From CoeControl - * Called by framework when the view size is changed. - * @since S60 v5.0 - */ - void SizeChanged(); - - /** - * From CoeControl - * Overridden to set the container window for child controls - * @since S60 v5.0 - */ - void SetContainerWindowL(const CCoeControl& aContainer); - - /** - * Sets the bitmap shown in the header image - * Ownership is transferred - * - * @param aBmp The bitmap - * @param aMask The bitmap mask - * @since S60 v5.0 - */ - void SetBitmap(CFbsBitmap* aBmp, CFbsBitmap* aMask ); - - /** - * Clears the texts & the image - * @since S60 v5.0 - */ - void ClearL(); - -public: - - - /** - * create the presentation for given contact - * @param aContactStore the contact store - * @since S60 v5.0 - */ - void CreateHeaderPresentationL( MVPbkStoreContact& aContact ); - - /** - * Helper function for the leaving part of changing labels size - * @since S60 v5.0 - */ - void LabelsSizeChangedL(); - /** - * Helper function for changing avatar icon in the header - * @since S60 v5.0 - */ - void HeaderSizeChangedL(); - -private: - - /** - * Constructor for performing 1st stage construction - * @param aBrandHandler , reference brand handlere - * @param aPresenceHandler , reference presence handler - * @since S60 v5.0 - */ - CVIMPSTDetailsHeaderControl(CVIMPSTDetailsViewBrandHandler& aBrandHandler, - MVIMPSTDetailsPresenceHandler& aPresenceHandler ); - - /** - * Constructor for performing 2nd stage construction - * @since S60 v5.0 - */ - void ConstructL(); - - -private: // data member - - /** - * not Owned : The label controls - */ - CVIMPSTDetailsViewBrandHandler& iBrandHandler; - - /** - * Not owned : reference to presence handler - */ - MVIMPSTDetailsPresenceHandler& iPresenceHandler; - - - /** - * Owns : The image control - */ - CEikImage* iImage; - - /** - * Owns : The bitmap - */ - CFbsBitmap* iBitmap; - - /** - * Owns : The mask - */ - CFbsBitmap* iMask; - - /** - * Owns : The label controls - */ - RPointerArray iLabels; - - - - /** - * Owns : virtual pbk field - */ - MVPbkStoreContactField* iHeaderField; - - /** - * Owns : image decoder - */ - CVIMPSTDetailsImageDecoder* iImageDecoder; - - TSize iContactImageSize; - - - }; - -#endif // CVIMPSTDETAILSHEADERCONTROL_H