mmuifw_plat/mul_widget_api/inc/mul/imulwidget.h
changeset 17 3eca7e70b1b8
parent 3 4526337fb576
--- a/mmuifw_plat/mul_widget_api/inc/mul/imulwidget.h	Tue Feb 02 00:28:09 2010 +0200
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,271 +0,0 @@
-/*
-* Copyright (c) 2007 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:  The base class for all Multimedia widgets.
- *
-*/
-
-
-#ifndef I_MULWIDGET_H
-#define I_MULWIDGET_H
-
-#include <alf/alftypes.h>
-#include <alf/ialfwidgeteventhandler.h>
-#include <alf/ialfinterfacebase.h>
-#include <alf/ialfwidget.h> 
-#include <alf/alflayout.h> 
-#include <mul/mulvisualitem.h>
-#include <e32base.h>
-#include <gdi.h>
-#include <osn/ustring.h>
-
-using namespace osncore;
-
-// Include widget observer 
-
-namespace Alf
-	{
-	class IMulModelAccessor;
-
-	namespace mulwidget
-		{
-		static const IfId Ident=
-			{
-					0, "mulwidget"
-			};
-			
-		enum TLogicalTemplate
-			{
-			KTemplateUnknown = 0,
-			KTemplate1 ,
-			KTemplate2,
-			KTemplate3,
-			KTemplate4,
-			KTemplate5,
-			KTemplate6,
-			KTemplate7,
-			KTemplate8,
-			KTemplate9,
-			KTemplate10,
-			KTemplate11,
-			KTemplate12,
-			KTemplate13,
-			KTemplate14
-			};
-		/*
-		static const char* const KTemplate1 = "logical_template_1";
-		static const char* const KTemplate2 = "logical_template_2";
-		static const char* const KTemplate3 = "logical_template_3";
-		static const char* const KTemplate4 = "logical_template_4";
-		static const char* const KTemplate5 = "logical_template_5";
-		static const char* const KTemplate6 = "logical_template_6";
-		static const char* const KTemplate7 = "logical_template_7";
-		static const char* const KTemplate8 = "logical_template_8";
-		static const char* const KTemplate9 = "logical_template_9";
-		static const char* const KTemplate10 = "logical_template_10";
-		static const char* const KTemplate11 = "logical_template_11";
-		static const char* const KTemplate12 = "logical_template_12";
-		static const char* const KTemplate13 = "logical_template_13";
-		static const char* const KTemplate14 = "logical_template_14";
-		*/
-		}
-
-	/**
-	 *  An interface for all Multimedia widgets.
-	 *  Widgets consist of control and visualization elements.
-	 *  Model owned by the application.
-	 * 	
-	 *	Interface paradigm would be used in a restrictive way.
-	 *  Controls are owned by Alfred environment.
-	 *  Widgets can be constructed using the widget factory.
-	 *  Widgets are owned and accessed using the Alfred
-	 *  environment.
-	 */
-	class IMulWidget : public IAlfWidget // base class 
-		{
-	public:
-	
-		/*! @enum TMulVisualEffect
-		 * This enumeration defines Visual effect that widget support
-		 * 
-		 */
-		enum TMulVisualEffect
-		    {
-			EHighlightTransition = 1    /*!< Highlight transition effect.*/
-	    	};
-
-    	enum TMulVisualType
-			{
-			ETextVisual = 1,    /*!< Color of the text in the widgets.*/
-			ECoverflowCounterVisual,     /*!< Color of the Counter text in the Coverflow Widget.*/
-			EItemBackgroundBrush,         /*!< Color of the Item brush in the Widget.*/  
-			EThumbnailBackgroundBrush		/*!< Color for the background of the thumbnail image. Currently used in list widget only.*/
-			};
-			
-		/*! @enum TMulRotation
-		 * This enumeration defines Rotation effect that widget supports
-		 * 
-		 */		
-		enum TMulRotation
-			{
-			ERotateLeft = 1, /*!< For left rotation*/
-			ERotateRight	/*!< For right rotation*/
-			};	
-    	
-		/**
-		 * Getter for the type identifier of this interface.
-		 *
-		 * @return A descriptor to identify the type of this interface.
-		 **/
-		static inline const IfId& Type()
-			{
-			return mulwidget::Ident;
-			}
-
-		/**
-		 * Set the data model for this widget.  Widget uses the data model via 
-		 * IMulModelAccessor interface. Does not take ownership of the accessor
-		 * and there can be only one accessor to the widget at any point. This 
-		 * will remove the binding to previous accessor, if any. Before 
-		 * deleting the accessor application should remove the binding to 
-		 * widget by calling the api by passing NULL.
-		 *
-		 * @param aAccessor  model to be set for widget
-		 */
-		virtual void SetModel(IMulModelAccessor* aAccessor , bool aFlag = true) = 0;
-
-		/**
-		 * Set the size and position of the widget.All parameter values are in pixels and are relevant 
-		 * to the parent of the widget.
-		 *
-		 * @param aLeftMargin  margin for the left border (top left x co-ordinate value)
-		 * @param aTopmargin   margin for the top border (top left y co-ordinate value)
-		 * @param aHeight      height of widget
-		 * @param aWidth       width of widget
-		 * @param aTransitionTime       Transition Time in MilliSeconds
-		 */
-		virtual void SetRect(int aLeftMargin, int aTopmargin, int aHeight,
-				int aWidth, int aTransitionTime =0) = 0;
-
-		/**
-		 * To hide and unhide Widget.
-		 *
-		 * @param aShow                 value to hide/unhide the Widget 
-		 * @param aTransitionTime       Transition Time in MilliSeconds
-		 */
-		virtual void ShowWidget(bool aShow, int aTransitionTime =0) = 0;
-		
-		/**
-		 * Get the icon size from the template
-		 *
-		 * @param atemplateId           Logical Template Id 
-		 * @param aAttribute            Attribute name of the Icon
-		 * @param aHeight               Height of the Icon
-		 * @param aWidth                Width of the Icon
-		 */
-		virtual void GetIconSize( mulwidget::TLogicalTemplate aTemplateId, 
-		    mulvisualitem::TVisualAttribute aAttribute, int& aHeight, int& aWidth) = 0;
-
-		/**
-		 * Get the icon size from the template
-		 *
-		 * @param aAttribute            Attribute name of the Icon
-		 * @param aHeight               Height of the Icon
-		 * @param aWidth                Width of the Icon
-		 */
-		virtual void GetIconSize( 
-		    mulvisualitem::TVisualAttribute aAttribute, int& aHeight, int& aWidth) = 0;
-		    	
-		    	
-		    /**
-		 * Add an observer to widget inorder to get event notifications
-		 * from the widget. Widget can have multiple observersers.
-		 *
-		 * @param aObserver Observer of widget.
-		 **/
-		virtual void AddEventHandler( IAlfWidgetEventHandler& aObserver) = 0;
-
-		/**
-		 * Remove an observer to widget
-		 *
-		 * @param aObserver Observer of widget.
-		 */
-		virtual void RemoveEventHandler( IAlfWidgetEventHandler& aObserver) = 0;  
-		
-		/**
-		* Get the Container Layout for widget.
-		*
-		* @return Container layout of the widget. This can be used to set the position of widget.
-		*/
-		virtual const CAlfLayout& ContainerLayout() = 0;
-		
-		
-		/**
-		 * Set Transaction/Animation time for variaous visual effect.
-		 *
-		 * @param aVisualEffect         Visual effect to which animation time/transation time to set
-		 * @param aTransitionTime       Transition Time in MilliSeconds
-		 *
-		 * <B>Examples:</b>
-		 * @code
-		 * Set the animation time.
-		 *
-		 *      mListWidget->SetAnimationTime( TMulVisualEffect::EHighlightTransition, 1000 );
-		 * @endcode
-		 */
-		virtual void SetAnimationTime( TMulVisualEffect aVisualEffect, int aTransitionTime = 0 ) = 0;
-		 
-		/**
-		 * Set the color and opacity of the visual for various visuals as per the widget.
-		 *  Also used to set the background transparent.
-		 *
-		 * @param aVisualType visual to which color is to be applied.
-		 * @param aColor RGB color
-		 *
-		 * NOTE: TRgb with the alpha is mandatory .,if application doesnt sets the alpha results in the 0-opacity-Transparent.
-		 *        so applications always should use TRgb with alpha constructor: like- TRgb(TUint32 color,TInt alpha);
-		 * 
-		 * <B>Examples: To Set the color and opacity of the thumbnail background </b>
-		 * @code
-		 * Set the color and alpha of the visual.0x008090 and 0 respectively.
-		 *
-		 * iMyWidget->SetVisualColor( TMulVisualColor::EThumbnailBackgroundColor, TRgb(0x008090,0) );
-		 * Here 0(zero) implies opacity - 1. 
-		 * @endcode
-		 * 
-         * <B>Examples: To make the background Transparent </b>
-         * @code
-         * Set the color and alpha of the visual.0x008090 and 255 respectively.
-         *
-         * iMyWidget->SetVisualColor( TMulVisualColor::EThumbnailBackgroundColor, TRgb(0x008090,255) );
-         * Here 255 alpha implies Transparent Background.No matter what the color is.
-         * @endcode
-		 * 		 
-		 */
-		virtual void SetVisualColor( TMulVisualType aVisualType , const TRgb& aColor ) = 0;
- 
-		    
-		/** 
-		 *
-		 Virtual destructor. 
-		 **/
-		virtual ~IMulWidget()
-			{
-			}
-
-		};
-
-	} // namespace Alf
-
-#endif // I_MULWIDGET_H
-