diff -r 000000000000 -r 5f000ab63145 phoneuis/BubbleManager/Inc/BMBubbleOutlookThreeLined.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/phoneuis/BubbleManager/Inc/BMBubbleOutlookThreeLined.h Mon Jan 18 20:18:27 2010 +0200 @@ -0,0 +1,193 @@ +/* +* Copyright (c) 2002-2005 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: Outlook base class for three lined bubbles +* +*/ + + + +#ifndef CBUBBLEOUTLOOKTHREELINED_H +#define CBUBBLEOUTLOOKTHREELINED_H + +// INCLUDES +#include +#include "BMBubbleOutlook.h" +#include "BMBubbleManager.h" +#include "BMUtils.h" + +// FORWARD DECLARATIONS +class CEikImage; +class CEikLabel; +class CBubbleImageManager; +class CBubbleHeader; +class CTelBubbleCustomElement; + +// CLASS DECLARATION + +/** +* Outlook base class for three lined bubbles +* +* @lib bubblemanager +* @since Series60_1.2 +*/ +class CBubbleOutlookThreeLined :public CBubbleOutlook + { + public: // Constructors and destructor + + /** + * Destructor. + */ + virtual ~CBubbleOutlookThreeLined(); + + public: // Functions from base classes + + /** + * From CBubbleOutlook. + */ + virtual void Reset(); + + /** + * From CBubbleOutlook. + */ + virtual void ReadBubbleHeader( CBubbleHeader& aHeader ); + + /** + * From CBubbleOutlook. + */ + virtual void DrawTimerCostNow(); + + /** + * From CBubbleOutlook. + */ + virtual void DrawCLINow(); + + /** + * From CBubbleOutlook. + */ + virtual void DrawBitmaps( CBitmapContext& aGc ) const; + + /** + * From CBubbleOutlook. + */ + virtual void HandleAnimationStartL() const; + + /** + * From CBubbleOutlook. + */ + virtual void DrawCallHeaderText(); + + private: // Functions from base classes + + /** + * From CCoeControl + */ + virtual void SizeChanged() = 0; + + /** + * From CCoeControl + */ + virtual TInt CountComponentControls( ) const; + + /** + * From CCoeControl + */ + virtual CCoeControl* ComponentControl( TInt aIndex ) const; + + /** + * From CCoeControl + */ + virtual void Draw( const TRect& aRect ) const; + + protected: + + /** + * C++ default constructor. + * @param aBubbleManager Main container + */ + CBubbleOutlookThreeLined( CBubbleManager& aBubbleManager ); + + /** + * 2nd phase constructor + */ + void ConstructL(); + + private: // New functions + + /** + * Draw Call1 bitmaps + */ + void DrawCall1Bitmaps( CBitmapContext& aGc ) const; + + /** + * Draw Call2 bitmaps + */ + void DrawCall2Bitmaps( CBitmapContext& aGc ) const; + + + protected: // Data + // Current header + CBubbleHeader* iHeader; + // Text line number + TUint8 iTextLineNumber; + + // Bubble image + CEikImage* iBubble; + + // Big call indication / customized + CTelBubbleCustomElement* iBigCallIndicator; + // Small call indication + CTelBubbleCustomElement* iSmallCallIndication; + // Number type + CTelBubbleCustomElement* iNumberType; + // Call type indicator #1 + CEikImage* iTypeIndication1; + // Call type indicator #2 + CEikImage* iTypeIndication2; + // Cyph off + CEikImage* iCyphOffImage; + + // tn shadow + TBubbleLayoutRect iTnImageShadow; + + // tn + CEikImage* iTnImage; + + // 1st line label + mutable CEikLabel* iTextLine1; // Text will be clipped and placed in + // 2nd line label + mutable CEikLabel* iTextLine2; // Draw() const method. + // 3rd line label + mutable CEikLabel* iTextLine3; + // Original buffer + TPtrC iFullText1; + // Original buffer + TPtrC iFullText2; + // Original buffer + TPtrC iFullText3; + // clip dir + CBubbleManager::TPhoneClippingDirection iText1ClipDirection; + // clip dir + CBubbleManager::TPhoneClippingDirection iText2ClipDirection; + // clip dir + CBubbleManager::TPhoneClippingDirection iText3ClipDirection; + + // Timer/cost label + CEikLabel* iTimerCost; + // Brand image + CTelBubbleCustomElement* iBrandImage; + }; + +#endif // CBUBBLEOUTLOOKTHREELINED_H + +// End of File