--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/videditor/VideoEditorUiComponents/inc/ExtProgressAnimationControl.h Fri Jan 29 14:08:33 2010 +0200
@@ -0,0 +1,201 @@
+/*
+* 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: ExtProgressAnimationControl.h
+* Created: 17-10-2005
+* Author:
+*
+*/
+
+#ifndef EXTPROGRESSANIMATIONCONTROL_H
+#define EXTPROGRESSANIMATIONCONTROL_H
+
+// INCLUDES
+#include <coecntrl.h>
+
+// FORWARD DECLARATIONS
+class CAknBitmapAnimation;
+class CAknsBasicBackgroundControlContext;
+
+// CLASS DECLARATION
+
+/** CLASS: CExtProgressAnimationControl
+*
+* CExtProgressAnimationControl represent animated transition using two
+* thumbnail images. The thumbnails and transition type can be set
+* to the control.
+*/
+NONSHARABLE_CLASS( CExtProgressAnimationControl ) : public CCoeControl, public MCoeControlObserver
+{
+
+public:
+
+/** @name Methods:*/
+//@{
+ /** NewL factory method, pops cleanup stack
+ *
+ * @param aRect - control rectangle
+ * @param aParent - pointer to window owning control
+ * @return pointer to created CExtProgressAnimationControl object
+ */
+ static CExtProgressAnimationControl * NewL (
+ const TRect & aRect,
+ const CCoeControl * aParent
+ );
+
+ /** Destructor
+ *
+ * @param -
+ * @return -
+ */
+ ~CExtProgressAnimationControl();
+
+ /** StartAnimationL
+ *
+ * Starts animation routine.
+ *
+ * @param -
+ * @return -
+ */
+ void StartAnimationL( TInt aFrameIntervalInMilliSeconds=-1 );
+
+ /** SetAnimationResourceId
+ *
+ * @param -
+ * @return -
+ */
+ void SetAnimationResourceId(const TInt &aResourceId);
+
+ /** MinimumSize
+ *
+ * @param -
+ * @return -
+ */
+ //TSize MinimumSize();
+
+ /** SetAnimationResourceId
+ *
+ * @param -
+ * @return -
+ */
+ void HandleControlEventL(CCoeControl* /*aControl*/,TCoeEvent /*aEventType*/);
+
+ /** StopAnimation
+ *
+ * @param -
+ * @return -
+ */
+ void StopAnimation();
+
+ /** SetFrameIntervalL
+ *
+ * @param -
+ * @return -
+ */
+ void SetFrameIntervalL(TInt aFrameIntervalInMilliSeconds);
+
+//@}
+
+
+private:
+
+/** @name Methods:*/
+//@{
+
+ /** Default constructor
+ *
+ * @param -
+ * @return -
+ */
+ CExtProgressAnimationControl();
+
+ /** ConstructL
+ *
+ * Second phase constructor
+ *
+ * @param aRect - control rectangle
+ * @param aParent - pointer to window owning control
+ * @param aLeft - left icon
+ * @param aRight - right icon
+ * @return -
+ */
+ void ConstructL (
+ const TRect & aRect,
+ const CCoeControl * aParent
+ );
+
+ /** SizeChanged
+ *
+ * @see CCoeControl
+ */
+ void SizeChanged();
+
+ /** CountComponentControls
+ *
+ * @see CCoeControl
+ */
+ //TInt CountComponentControls() const;
+
+ /** ComponentControl
+ *
+ * @see CCoeControl
+ */
+ //CCoeControl * ComponentControl (TInt aIndex) const;
+
+ /** Draw
+ *
+ * @see CCoeControl
+ */
+ void Draw (const TRect& aRect) const;
+
+ /**
+ * From CoeControl, MopSupplyObject.
+ *
+ * @param aId
+ */
+ virtual TTypeUid::Ptr MopSupplyObject( TTypeUid aId );
+
+//@}
+
+/** @name Members:*/
+//@{
+
+//@}
+
+/** @name Members:*/
+//@{
+
+ TBool iAnimationOn;
+ CAknBitmapAnimation* iAnimation;
+ TInt iAnimationSpeedInMilliSeconds;
+ TInt iBorderWidth;
+
+ TInt iAnimationResourceId;
+
+ /** Background context. Skin stuff. */
+ CAknsBasicBackgroundControlContext* iBgContext;
+
+//@}
+
+};
+
+#endif
+
+// End of File