phoneuis/BubbleManager/Inc/BMBubbleOutlookConference.h
changeset 0 5f000ab63145
child 16 4393b07b8c5d
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/phoneuis/BubbleManager/Inc/BMBubbleOutlookConference.h	Mon Jan 18 20:18:27 2010 +0200
@@ -0,0 +1,191 @@
+/*
+* Copyright (c) 2002-2004 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: 
+*     Draws expanded conference call
+*
+*/
+
+
+#ifndef BUBBLEOUTLOOKCONFERENCE_H
+#define BUBBLEOUTLOOKCONFERENCE_H
+
+// INCLUDES
+#include    <calslbs.h>
+   
+#include    "BMBubbleOutlook.h"
+#include    "BMCallHeader.h"
+#include    "BMConfPane.h"
+
+// FORWARD DECLARATIONS
+class CEikLabel;       
+class CEikImage;
+class CBubbleImageManager;
+class CConfHeader;
+
+
+// CLASS DECLARATION
+
+/**
+*  CBubbleOutlookConference container class
+*
+*  Object handles expanded conference call.
+*
+*  @lib bubblemanager 
+*  @since 1.0
+*/
+class CBubbleOutlookConference : public CBubbleOutlook
+{
+
+    public: // Constructors and destructor
+       
+        /**
+        * Symbian OS default constructor.
+        * @param aBubbleManager Main container
+        */
+        CBubbleOutlookConference( CBubbleManager& aBubbleManager );
+
+        /**
+        * Symbian OS 2nd phase constructor.
+        * @param aCallAmount Amount of panes allocated.
+        */
+        void ConstructL( const TUint8& aCallAmount );
+
+        /**
+        * Destructor.
+        */
+        virtual ~CBubbleOutlookConference();
+
+    public: // New functions
+    
+        /**
+        * Draws given row
+        * @param aRow Row number to be drawn.
+        */
+        void DrawRowNow( CBubbleManager::TRowNumber aRow );
+
+
+    public:// Functions from base classes
+
+        /**
+        * From CBubbleOutlook 
+        */
+        void Reset();
+
+        /**
+        * From CBubbleOutlook 
+        */
+        void ReadBubbleHeader( CBubbleHeader& aHeader );
+
+        /**
+        * From CBubbleOutlook 
+        */
+        virtual void DrawTimerCostNow();
+
+        /**
+        * From CBubbleOutlook
+        */
+        virtual void DrawCLINow();
+
+        /**
+        * From CBubbleOutlook
+        */
+        void DrawBitmaps( CBitmapContext& aGc ) const;
+
+        /**
+        * From CBubbleOutlook.
+        */
+        virtual void HandleAnimationStartL() const;
+
+        /**
+        * From CBubbleOutlook.
+        */
+        virtual void DrawCallHeaderText();
+
+    private: // Functions from base classes
+
+       /**
+        * From CCoeControl Called when rect changes
+        */
+        void SizeChanged();
+
+       /**
+        * From CCoeControl
+        */
+        TInt CountComponentControls() const;
+
+       /**
+        * From CCoeControl
+        */
+        CCoeControl* ComponentControl( TInt aIndex ) const;
+
+       /**
+        * From CCoeControl
+        */
+        void Draw( const TRect& aRect ) const;
+
+       /**
+        * From CCoeControl
+        */ 
+        void CBubbleOutlookConference::HandlePointerEventL
+            ( const TPointerEvent& aPointerEvent );
+
+    private:
+    
+        /**
+        * DoCall1Layout
+        */
+        void DoCall1Layout();
+
+        /**
+        * DoCall2LayoutL
+        */            
+        void DoCall2LayoutL();
+        
+        /**
+        * DoCall4Layout
+        */            
+        void DoCall4LayoutL();
+        
+        /**
+        * GetCall1BubbleBitmaps
+        */
+        void GetCall1BubbleBitmaps();
+
+    private: //data
+
+        // call amount in conference
+        TUint8 iPaneAmount; 
+
+        // all the information
+        CBubbleConfHeader* iHeader; 
+
+        // speech bubble image
+        CEikImage* iBubble; 
+        // Timer control
+        CEikLabel* iTimerCost; 
+
+        // for drawing
+        CArrayPtrFlat<CBubbleConfPane>* iConfPanes; 
+        // for fetching info
+        CArrayPtrFlat<CBubbleCallHeader>* iCalls; 
+        
+    private:
+
+        friend class CT_CBubbleOutlookConference;
+    
+};
+
+#endif // BUBBLEOUTLOOKCONFERENCE_H
+
+// End of File