menufw/menufwui/mmwidgets/inc/mmtemplatelibrary.h
changeset 1 5315654608de
parent 0 f72a12da539e
--- a/menufw/menufwui/mmwidgets/inc/mmtemplatelibrary.h	Thu Dec 17 08:40:49 2009 +0200
+++ b/menufw/menufwui/mmwidgets/inc/mmtemplatelibrary.h	Thu Jan 07 12:39:41 2010 +0200
@@ -11,8 +11,8 @@
 *
 * Contributors:
 *
-* Description:  
-*  Version     : %version: MM_24.1.8 % << Don't touch! Updated by Synergy at check-out.
+* Description:
+*  Version     : %version: MM_24.1.9 % << Don't touch! Updated by Synergy at check-out.
 *
 */
 
@@ -43,57 +43,57 @@
 
 /**
  *  Struct used to store template child data
- * 
+ *
  * @since S60 v5.0
  * @ingroup group_mmwidgets
  */
 class TTemplateChild
     {
-    
+
 public:
-	
+
     /**
      * Rectangle of subcell according to position in item.
      */
     TRect iRectAccordingToParent;
-    
+
     /**
      * Data type represented by the subcell.
      */
     TBufC8<64> iData;
-    
+
     /**
      * The LCT template used to calculate the subcell position.
      */
     TBufC8<64> iLct;
-    
+
     /**
      * The variety for the lct template.
      */
     TInt iVariety;
-    
+
     /**
      * Depicts if the subcell is an image or text.
      */
     TBool iIsImage;
-    
+
     /**
      * The font id used for displaying text.
      */
     TAknLogicalFontId iFontId;
-    
+
     /**
      * The type of align for the text.
      */
     CGraphicsContext::TTextAlign  iTextAlign;
-    
+
     /**
      * The additional Id for a subcell element used to differentiate it
-     * from others. e.g the backdrop image has a different visual id 
+     * from others. e.g the backdrop image has a different visual id
      * since it is displayed only in edit mode.
      */
     TImageVisualId iImageVisualId;
-    
+
     /**
      * The type of horizontal align for the icon.
      */
@@ -105,7 +105,7 @@
 
 /**
  *  Used by Multimedia Menu to load template data.
- *  
+ *
  *  @code
  *  @endcode
  *  @lib mmwidgets
@@ -116,7 +116,7 @@
 	{
 public:
 	// Constructors and destructor
-    
+
     /**
      * Destructor.
      */
@@ -126,7 +126,7 @@
 	 * Two-phased constructor.
 	 */
 	IMPORT_C static CMmTemplateLibrary* NewL();
-	
+
 	/**
      * Two-phased constructor.
      */
@@ -148,210 +148,203 @@
 
 	/**
 	 * Gets the size of template item according to highlight and orientation.
-	 * 
+	 *
 	 * @since S60 v3.0
 	 * @param aWidgetType The widget type.
-	 * @param aTemplate The current template for the item. 
+	 * @param aTemplate The current template for the item.
 	 * @param aLandscapeOrientation Is view in landscape orientation.
 	 * @param aHighlighted Is item highlighted.
 	 * @param aParentRect The bounding rect in which the item is drawn.
-	 * 
+	 *
 	 * @return size of item
 	 */
-	TSize GetSize( TMmWidgetType aWidgetType, const TDesC8& aTemplate, 
-			TBool aLandscapeOrientation = 0, TBool aHighlighted = 0, 
+	TSize GetSize( TMmWidgetType aWidgetType, const TDesC8& aTemplate,
+			TBool aLandscapeOrientation = 0, TBool aHighlighted = 0,
 			TRect aParentRect = TRect() );
-    
+
     /**
      * Gets the size of template.
-     * 
+     *
      * @since S60 v3.0
      * @param aItemSize Item size to be set.
      * @param aWidgetType The widget type.
-	 * @param aTemplate The current template for the item. 
-	 * @param aLandscapeOrientation Is view in landscape orientation. 
+	 * @param aTemplate The current template for the item.
+	 * @param aLandscapeOrientation Is view in landscape orientation.
 	 * @param aHighlighted Is item highlighted.
 	 * @param aParentRect The bounding rect in which the item is drawn.
-	 * 
+	 *
      * @return error code
      */
-	TInt GetSize(  TSize& aItemSize, TMmWidgetType aWidgetType, 
-	        const TDesC8& aTemplate, TBool aLandscapeOrientation, 
+	TInt GetSize(  TSize& aItemSize, TMmWidgetType aWidgetType,
+	        const TDesC8& aTemplate, TBool aLandscapeOrientation,
 	        TBool aHighlighted , TRect aParentRect = TRect() );
-    
+
     /**
-     * Get array of templates for subcells ( item children ). 
-     * 
+     * Get array of templates for subcells ( item children ).
+     *
      * @since S60 v3.0
      * @param aWidgetType The widget type.
      * @param aArray The array of subcell children to be set.
      * @param aTemplate The current template for the item.
      * @param aLandscapeOrientation Is view in landscape orientation.
      * @param aHighlighted Is item highlighted.
-     * @param aIsEditMode Is in edit mode. 
-     * 
+     * @param aIsEditMode Is in edit mode.
+     *
      */
 	void GetChildrenL( TMmWidgetType aWidgetType,
-			RArray< TTemplateChild >& aArray, const TDesC8& aTemplate, 
+			RArray< TTemplateChild >& aArray, const TDesC8& aTemplate,
 			TBool aLandscapeOrientation = 0, TBool aHighlighted = 0, TBool aIsEditMode = 0 );
-    
+
     /**
      * Get the layout size ( Grid ) e.g. 3x4
-     * 
+     *
      * @since S60 v3.0
      * @param aWidgetType The widget type.
      * @param aTemplate The current template for the item.
      * @param aLandscapeOrientation Is view in landscape orientation.
-     * 
+     *
      * @return the size of the layout.
      */
-	TSize GetLayoutSizeL( TMmWidgetType aWidgetType, const TDesC8& aTemplate, 
+	TSize GetLayoutSizeL( TMmWidgetType aWidgetType, const TDesC8& aTemplate,
 			TBool aLandscapeOrientation );
-    
+
     /**
      * Get rect of move indicator according to item (as reference position).
-     * The rect is relevant to the item in point (0,0). 
+     * The rect is relevant to the item in point (0,0).
      * e.g for item size 20x360 the rect can be (-5,-5):(365,25).
-     * 
+     *
      * @since S60 v3.0
      * @param aWidgetType The widget type.
      * @param aTemplate The current template for the item.
-     * @param aLandscapeOrientation Is view in landscape orientation. 
+     * @param aLandscapeOrientation Is view in landscape orientation.
      * @param aHighlighted Is item highlighted.
-     * 
+     *
      * @return rect of move indicator area.
      */
-	TRect GetMoveIndicatorRect( TMmWidgetType aWidgetType, const TDesC8& aTemplate, 
+	TRect GetMoveIndicatorRect( TMmWidgetType aWidgetType, const TDesC8& aTemplate,
 			TBool aLandscapeOrientation, TBool aHighlighted );
-    
+
     /**
-     * Get children templates for move indicator. 
-     * 
+     * Get children templates for move indicator.
+     *
      * @since S60 v3.0
      * @param aWidgetType The widget type.
      * @param aArray Array of children templates.
      * @param aTemplate The current template for the item.
      * @param aLandscapeOrientation Is view in landscape orientation.
      * @param aHighlighted Is item highlighted.
-     * 
+     *
      */
 	void GetMoveIndicatorChildrenL( TMmWidgetType aWidgetType,
 			RArray< TTemplateChild >& aArray, const TDesC8& aTemplate, TBool aLandscapeOrientation, TBool aHighlighted );
-    
+
     /**
      * Get size of item for LCT template.
-     * 
+     *
      * @since S60 v3.0
      * @param aLCTTemplate The LCT template name.
      * @param aVariety The variety for aLCTTemplate.
      * @param aWindowLayout The window layout to be used to calculet the size.
      * @param aLandscapeOrientation ETrue if view in landscape orientation otherwise EFalse.
-     * 
+     *
      * @return item size
      */
 	TSize GetLCTSize( const TDesC8& aLCTTemplate, TInt aVariety, TAknWindowLineLayout& aWindowLayout, TBool aLandscapeOrientation );
-    
+
     /**
      * Clean the cache
-     * 
+     *
      * @since S60 v3.0
      */
 	void CleanAndClearCache( );
 
     /**
-     * The template content is loaded. LCT templates have highest priority. 
+     * The template content is loaded. LCT templates have highest priority.
      * If there is no LCT template, a custom template is loaded.
-     * 
+     *
      * @since S60 v3.0
      * @param aTemplate The current template for the item.
      * @param aWidgetType The widget type.
      * @param aMmTemplateType Type of template (LCT/custom).
-     * 
+     *
      * @return Template content.
      */
 	HBufC8* GetTemplateContentL( const TDesC8& aTemplate, TMmWidgetType aWidgetType, TMmTemplateType& aMmTemplateType );
-    
+
     /**
      * Sets scrollbar visibility so template library is aware.
-     * 
+     *
      * @since S60 v3.0
      * @param aIsScrollbarVisible Is scrollbar visible.
      */
     void SetScrollbarVisibilityL( TBool aIsScrollbarVisible );
-    
+
     /**
      * Gets scrollbar visibility.
-     * 
+     *
      * @since S60 v3.0
      * @return Is scrollbar visible.
      */
     TBool GetScrollbarVisibility();
-    
-    /**
-     * Sets the current zoom so template library can retrieve the appropriate templates.
-     * 
-     * @since S60 v3.0
-     * @param aZoom Is The current zoom to be set.
-     */
-	void SetZoom( TAknUiZoom aZoom =  EAknUiZoomAutomatic );
-	
+
 	/**
      * Sets the scrollbar width so template library can calculate the width of the item correctly.
-     * 
+     *
      * @since S60 v3.0
      * @param aScrollbarWidth The current width of the scrollbar.
      */
 	void SetScrollbarWidthL( TInt aScrollbarWidth );
-	
+
 	/**
 	 * Gets scrollbar width.
-	 * 
+	 *
 	 * @since S60 v3.0
 	 * @return scrollbar width
 	 */
 	TInt ScrollbarWidth();
-	
+
 	/**
      * Gets the parent rect for given orientation from which templates were calculated.
-     * 
+     *
      * @since S60 v3.0
      * @param aLandscapeOrientation The current landscape orientation.
      * @return Parent rect for given orientation.
      */
 	TRect GetParentRect( TBool aLandscapeOrientation );
-	
+
 private:
 	/**
 	 * Get the lookup text.
-	 * 
+	 *
 	 * @since S60 v3.0
 	 * @param aTemplate The current template for the item.
 	 * @param aWidgetType The widget type.
-	 * @param aLandscapeOrientation Is view in landscape orientation. 
+	 * @param aLandscapeOrientation Is view in landscape orientation.
 	 * @param aHighlighted Is item highlighted.
-	 * 
-	 * @return Lookup text. 
+	 *
+	 * @return Lookup text.
 	 */
 	HBufC8* LookupText( const TDesC8& aTemplate, TMmWidgetType aWidgetType,
-        TAknUiZoom aZoom, TBool aLandscapeOrientation = EFalse, 
-        TBool aHighlighted = EFalse );	
-    
+                        TBool aLandscapeOrientation = EFalse,
+                        TBool aHighlighted = EFalse );
+
     /**
      * Get the lookup text for layout size.
-     * 
+     *
      * @since S60 v3.0
      * @param aWidgetType The widget type.
      * @param aTemplate The current template for the item.
-     * @param aLandscapeOrientation Is view in landscape orientation. 
-     * 
+     * @param aLandscapeOrientation Is view in landscape orientation.
+     *
      * @return lookup layout text.
      */
-	HBufC8* LookupLayoutText( TMmWidgetType aWidgetType, TAknUiZoom aZoom, 
-        const TDesC8& aTemplate, TBool aLandscapeOrientation );
-    
+	HBufC8* LookupLayoutText( TMmWidgetType aWidgetType,
+                              const TDesC8& aTemplate,
+                              TBool aLandscapeOrientation );
+
 	/**
      * Get the lookup text for move indicator.
-     * 
+     *
      * @since S60 v3.0
      * @param aLookupText The lookup text to be used to create the lookup indicator text.
      * @return lookup Indicator text.
@@ -360,18 +353,18 @@
 
     /**
      * Load the template to cache.
-     * 
+     *
      * @since S60 v3.0
      * @param aWidgetType The widget type.
      * @param aTemplate The current template for the item.
 	 * @param aLandscapeOrientation The current orientation.
      */
-	void LoadTemplateL( TMmWidgetType aWidgetType, const TDesC8& aTemplate, 
+	void LoadTemplateL( TMmWidgetType aWidgetType, const TDesC8& aTemplate,
 			TBool aLandscapeOrientation );
-	
+
     /**
      * Get template file content.
-     * 
+     *
      * @since S60 v3.0
      * @param aContent Descriptor to which the file content should be set.
      * @param aTemplate The current template for the item.
@@ -382,156 +375,147 @@
 	void GetTemplateFileContentL (HBufC8*& aContent, const TDesC8& aTemplate,
 		TMmWidgetType aWidgetType, TMmTemplateType& aMmTemplateType,
 		TBool aLoadCustomTemplate = EFalse);
-		
+
     /**
      * Process xml element.
-     * 
+     *
      * @since S60 v3.0
      * @param aMmTemplateType Type of template (LCT/custom).
      * @param aElement Element ( xml ).
      * @param aTemplate The current template for the item.
-     * @param aLandscapeOrientation Is view in landscape orientation. 
+     * @param aLandscapeOrientation Is view in landscape orientation.
      * @param aHighlighted Is item highlighted.
-     * 
+     *
      */
 	void ProcessElementL (TMmTemplateType aMmTemplateType,
 		TXmlEngElement aElement, const TDesC8& aTemplate,
-		TBool aLandscapeOrientation, TBool aHighlighted);	
-    
+		TBool aLandscapeOrientation, TBool aHighlighted);
+
 	/**
      * Process the LCT template.
-     * 
+     *
      * @since S60 v3.0
      * @param aElement Element (xml).
      * @param aTemplate The current template for the item.
-     * @param aLandscapeOrientation Is view in landscape orientation. 
+     * @param aLandscapeOrientation Is view in landscape orientation.
      * @param aHighlighted Is item highlighted.
      */
-	void ProcessLCTTemplateElementL( TXmlEngElement aElement, 
-	                                         const TDesC8& aTemplate, 
+	void ProcessLCTTemplateElementL( TXmlEngElement aElement,
+	                                         const TDesC8& aTemplate,
 	                                         TBool aLandscapeOrientation,
 	                                         TBool aHighlighted );
 
     /**
      * Process the custom template.
-     * 
+     *
      * @since S60 v3.0
      * @param aElement Element (xml)
      * @param aTemplate The current template for the item.
-     * @param aLandscapeOrientation Is view in landscape orientation. 
+     * @param aLandscapeOrientation Is view in landscape orientation.
      * @param aHighlighted Is item highlighted.
      */
-	void ProcessCustomTemplateElementL( TXmlEngElement aElement, 
-	                                         const TDesC8& aTemplate, 
+	void ProcessCustomTemplateElementL( TXmlEngElement aElement,
+	                                         const TDesC8& aTemplate,
 	                                         TBool aLandscapeOrientation,
 	                                         TBool aHighlighted );
 
     /**
      * Setup LCT template data.
-     * 
+     *
      * @since S60 v3.0
-     * @param aChildTemplate Template where the data should be set up. 
+     * @param aChildTemplate Template where the data should be set up.
      * @param aChildElement Element (xml).
      * @param aItemSize Item size.
      */
 	void SetupLCTTemplateL(TTemplateChild& aChildTemplate, TXmlEngElement& aChildElement, TSize aItemSize );
-    
+
 	/**
-     * Setup custom template. 
-     * 
+     * Setup custom template.
+     *
      * @since S60 v3.0
-     * @param aChildTemplate Template where the data should be set up. 
+     * @param aChildTemplate Template where the data should be set up.
      * @param aChildElement Element (xml).
      */
 	void SetupCustomTemplateL(TTemplateChild& aChildTemplate, TXmlEngElement& aChildElement );
-    
+
 	/**
      * Set the template visual id.
-     * 
+     *
      * @since S60 v3.0
      * @param aChildTemplate Template data.
      */
 	void SetupTemplateVisualId(TTemplateChild& aChildTemplate );
-    
+
 	/**
      * Setup the item children template data for move indicator and cache the data.
-     * 
+     *
      * @since S60 v3.0
      * @param aLookupString Lookup string.
      * @param aItemSize Item size.
      */
 	void SetupMoveIndicatorTemplateChildrenL( const TDesC8& aLookupString, TSize aItemSize );
-    
+
 	/**
      * Adjusts the item size loaded to template cache according to layout size and orientation.
      * This method adjusts the item width so that items occupy the view correctly.
-     * 
+     *
      * @since S60 v3.0
-     * @param aSize The size of the item to be adjusted. 
-     * @param aLayoutSize The layout of the widget e.g 3x4 
+     * @param aSize The size of the item to be adjusted.
+     * @param aLayoutSize The layout of the widget e.g 3x4
      * @param aLandscapeOrientation The orientation of the template being processed.
      */
 	void AdjustItemWidth( TSize& aSize, TSize aLayoutSize, TBool aLandscapeOrientation );
 
 	/**
      * Updates the parent rect according to orientation.
-     * 
+     *
      * @since S60 v3.0
      * @param aParentRect The current parent rectangle.
      * @param aLandscapeOrientation The current orientation.
      */
 	void UpdateParentRect( TRect aParentRect, TBool aLandscapeOrientation );
-    
+
 	/**
      * Sets the parent rect for given orientation.
-     * 
+     *
      * @since S60 v3.0
      * @param aLandscapeOrientation Orientation for which parent rect shoul be set.
      * @param aParentRect The parent rect of current orientation.
      */
 	void SetParentRect( TBool aLandscapeOrientation, TRect aParentRect);
-    
+
 	/**
      * Appends the edit mode template (backdrop icon) to the array of template children passed to the item drawer for drawing.
-     * 
+     *
      * @since S60 v3.0
      * @param aTemplateArray The template array to which the edit mode template is appended.
      * @param aSize The size of the item for which the edit mode template should be calculated.
      */
 	void AppendEditModeTemplateL( RArray< TTemplateChild >& aTemplateArray, TSize aSize );
-    
+
 	/**
      * Adjusts the item size according to layout, LCT item size and orientation.
-     * 
+     *
      * @since S60 v3.0
      * @param aItemSize The LCT item size.
      * @param aLayoutSize The layout size to be used to calculate item size.
      * @param aLandscapeOrientation The orientation for which the template is loaded.
      */
 	void AdjustItemSize(TSize& aItemSize,  TSize aLayoutSize, TBool aLandscapeOrientation );
-    
-	/**
-     * Get the current zoom for displaying templates.
-     * 
-     * @since S60 v3.0
-     * @return The current zoom.
-     */
-	TAknUiZoom Zoom( );
-    
+
 	/**
      * Caches the layout size
-     * 
+     *
      * @since S60 v3.0
      * @param aLayoutSize The layout size to ba cached.
      * @param aTemplate The template for the cached layout size.
      * @param aLandscapeOrientation The orientation for which the template is loaded.
-     * @return The current zoom.
      */
 	void CacheLayoutSizeL( TSize aLayoutSize, const TDesC8& aTemplate, TBool aLandscapeOrientation );
-	
+
 	/**
      * Adjusts icon's align to layout (left, center, right).
-     * 
+     *
      * @since S60 v5.0
      * @param aParentSize The LCT parent item size.
      * @param aTemplateChild Template data.
@@ -545,51 +529,46 @@
 	 * Widget type of template being loaded.
 	 */
     TMmWidgetType iWidgetType;
-    
+
     /**
      * Template type which is being loaded (LCT/custom).
      */
     TMmTemplateType iMmTemplateType;
-    
+
     /**
      * Template sizes map.
      */
     RHashMap< HBufC8*, TSize> iTemplateSizesMap;
-    
+
     /**
      * Item children template map.
      */
     RHashMap< HBufC8*, RArray<TTemplateChild> > iTemplateChildrenMap;
-    
+
     /**
      * Move indicator rects map.
      */
     RHashMap< HBufC8*, TRect> iMoveIndicatorRectsMap;
-    
+
     /**
      * Parent bounding rect.
      */
     TRect iParentRectPortrait;
-	
+
     /**
      * Parent bounding rect.
      */
     TRect iParentRectLandscape;
-    
+
     /**
      * Scrollbar is visible.
      */
     TBool iIsScrollbarVisible;
-	
+
     /**
      * Scrollbar width.
      */
     TInt iScrollbarWidth;
-	
-    /**
-     * Zoom type.
-     */
-    TAknUiZoom iZoom;
 
 	};
 #endif // MMTEMPLATELIBRARY_H