videditor/VideoEditorUiComponents/inc/ExtProgressContainer.h
changeset 0 951a5db380a0
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/videditor/VideoEditorUiComponents/inc/ExtProgressContainer.h	Fri Jan 29 14:08:33 2010 +0200
@@ -0,0 +1,172 @@
+/*
+* Copyright (c) 2010 Ixonos Plc.
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of the "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:
+* Ixonos Plc
+*
+* Description:  
+*
+*/
+
+
+/*
+*   File:       CExtProgressContainer.h
+*   Created:    17-10-2005
+*   Author:     
+*               
+*/
+
+#ifndef EXTPROGRESSCONTAINER_H
+#define EXTPROGRESSCONTAINER_H
+
+// INCLUDES
+#include <coecntrl.h>
+#include <akncontrol.h>
+
+// FORWARD DECLARATIONS
+class CEikProgressInfo;
+class CExtProgressAnimationControl;
+class CFbsBitmap;
+class CEikLabel;
+class CAknsBasicBackgroundControlContext;
+
+/*  CLASS: CExtProgressContainer
+*
+*
+*/ 
+NONSHARABLE_CLASS( CExtProgressContainer ) :	public CCoeControl, public MCoeControlObserver
+{
+
+public:
+
+	/** NewL factory method, does not pop cleanupstack
+	*
+	*   @param -
+	*	@return pointer to created CExtProgressContainer object
+	*/
+    static CExtProgressContainer * NewL (const TRect& aRect, 
+                                          CCoeControl* aParent);
+
+	/** Destructor
+	*
+	*	@param -
+	*	@return -
+	*/
+	virtual ~CExtProgressContainer ();
+
+	/*	Second phase constructor	
+	*
+	*	@param -
+	*	@return -
+	*/
+    void ConstructL (const TRect& aRect, CCoeControl* aParent);
+
+	/*	GetProgressInfoL	
+	*
+	*	@param -
+	*	@return -
+	*/
+    CEikProgressInfo* GetProgressInfoL();
+
+	/*	GetAnimationControlL	
+	*
+	*	@param -
+	*	@return -
+	*/
+    CExtProgressAnimationControl* GetAnimationControlL();
+    
+	/*	SetTextL	
+	*
+	*	@param aText - label text
+	*	@return -
+	*/
+    void SetTextL(const TDesC &aText);
+
+    // Test function
+    void Test();
+   
+ 
+    
+protected:
+
+    /** CountComponentControls
+    *  
+    * @see CCoeControl
+    *
+    */
+    TInt CountComponentControls() const;
+
+    /** ComponentControl
+    *  
+    * @see CCoeControl
+    *
+    */
+    CCoeControl* ComponentControl(TInt aIndex) const;
+
+    /** SizeChanged
+    *  
+    * @see CCoeControl
+    *
+    */
+    void SizeChanged();
+
+    /** HandleControlEventL
+    *  
+    * @see CCoeControl
+    *
+    */
+    void HandleControlEventL(CCoeControl* /*aControl*/,TCoeEvent aEventType);
+
+    /** Draw
+    * 
+    * 
+    * @see CCoeControl
+    *
+    */
+    void Draw(const TRect& aRect) const;
+
+	/**
+	* From CoeControl, MopSupplyObject.
+	*
+	* @param aId  
+	*/
+	virtual TTypeUid::Ptr MopSupplyObject( TTypeUid aId );
+
+    /** MinimumSize
+    * 
+    * 
+    * @see CCoeControl
+    *
+    */
+    TSize MinimumSize();
+
+private:
+
+    /** Default constructor, cannot leave.
+	*
+	*	@param -
+	*	@return -
+	*/
+	CExtProgressContainer ();
+
+private: // data
+
+    CEikLabel*                      iLabel;
+    CEikProgressInfo*               iProgressInfo;
+    CExtProgressAnimationControl*   iAnimationControl;
+    
+	/** Background context. Skin stuff. */
+	CAknsBasicBackgroundControlContext*	iBgContext;
+};
+
+#endif
+
+// End of File