emailuis/uicomponents/src/fstreeplaintwolineitemvisualizer.cpp
branchRCL_3
changeset 73 c8382f7b54ef
parent 64 3533d4323edc
child 80 726fba06891a
--- a/emailuis/uicomponents/src/fstreeplaintwolineitemvisualizer.cpp	Tue Sep 14 20:48:24 2010 +0300
+++ b/emailuis/uicomponents/src/fstreeplaintwolineitemvisualizer.cpp	Wed Sep 15 11:52:37 2010 +0300
@@ -12,14 +12,10 @@
 * Contributors:
 *
 *  Description : A visualizer for data items with plain text.
-*  Version     : %version: tr1sido#17 %
+*  Version     : %version: tr1sido#18 %
 *
 */
 
-
-//<cmail> removed __FS_ALFRED_SUPPORT flag
-//#include <fsconfig.h>
-//</cmail> removed __FS_ALFRED_SUPPORT flag
 #include "emailtrace.h"
 #include <AknsUtils.h>
 #include <touchlogicalfeedback.h>
@@ -30,7 +26,7 @@
 #include "fslayoutmanager.h"
 #include "fstextstylemanager.h"
 #include "fsmarqueeclet.h"
-// <cmail> SF
+
 #include <alf/alfanchorlayout.h>
 #include <alf/alfimagevisual.h>
 #include <alf/alfviewportlayout.h>
@@ -38,10 +34,8 @@
 #include <alf/alfimage.h>
 #include <alf/alfenv.h>
 #include <alf/alfcontrol.h>
-
 #include <alf/alfevent.h>
 #include <alf/alfmappingfunctions.h>
-// </cmail>
 
 // ======== MEMBER FUNCTIONS ========
 
@@ -272,7 +266,7 @@
     
     CFsLayoutManager::TFsLayoutMetrics
         mainIconMetrics = CFsLayoutManager::EFsLmListSingleDycRowPaneG1,
-        markIconMetrics = CFsLayoutManager::EFsLmListSingleDycRowPaneG4,
+        markIconMetrics = CFsLayoutManager::EFsLmListSingleDycRowPaneG1,
         menuIconMetrics = CFsLayoutManager::EFsLmListSingleDycRowPaneG3,
         sizeMetrics     = CFsLayoutManager::EFsLmListSingleDycRowPane,
         exSizeMetrics   = CFsLayoutManager::EFsLmListSingleFsDycPane,
@@ -343,7 +337,7 @@
 
         if (aData->IsIconSet())
             {
-            if (iFlags & KFsTreeListItemMarked)
+            if ( iFlags & KFsTreeListMarkingMode )
                 {
                 if ((iFlags & KFsTreeListItemHasMenu)
                         && (iFlags & KFsTreeListItemFocused))
@@ -402,12 +396,12 @@
                     {
                     //mainIcon + markIcon
                     mainIconMetrics =
-                        CFsLayoutManager::EFsLmListSingleDycRowPaneG1;
-                    mainIconVariety = 4;
+                        CFsLayoutManager::EFsLmListSingleDycRowPaneG2;
+                    mainIconVariety = 2;
                     markIconMetrics =
-                        CFsLayoutManager::EFsLmListSingleDycRowPaneG4;
-                    markIconVariety = 3;
-                    firstLineTextParentVariety = 4;
+                        CFsLayoutManager::EFsLmListSingleDycRowPaneG1;
+                    markIconVariety = 2;
+                    firstLineTextParentVariety = 2;
                     if (firstLineTextFields==1)
                         {
                         firstLineTextMetrics[0] =
@@ -418,10 +412,10 @@
                         {
                         firstLineTextMetrics[0] =
                             CFsLayoutManager::EFsLmListSingleDycRowTextPaneT1;
-                        firstLineTextVarieties[0] = 13;
+                        firstLineTextVarieties[0] = 11;
                         firstLineTextMetrics[1] =
                             CFsLayoutManager::EFsLmListSingleDycRowTextPaneT2;
-                        firstLineTextVarieties[1] = 4;
+                        firstLineTextVarieties[1] = 2;
                         }
                     }
                 }
@@ -652,10 +646,8 @@
                 secondLineTextVariety = 8;
                 }
             }
-        //<cmail> ???
         thirdLineTextMetrics = CFsLayoutManager::EFsLmListSingleDycRowTextPaneT1;
         thirdLineTextVariety = 4;
-        //</cmail>
         }
     else
         {
@@ -1366,51 +1358,50 @@
             }
         }
 
-    if ( IsMarked() && iIconMarked )
-        {
-        if (iIconMarked)
+    if ( iFlags & KFsTreeListMarkingMode && iIconMark )
+        {       
+
+        TRect iconRowParent = currentSize;        
+        if (markIconRow > 0)
             {
-            TRect iconRowParent = currentSize;
-            if (markIconRow > 0)
-                {
-                CFsLayoutManager::LayoutMetricsRect(currentSize, CFsLayoutManager::EFsLmListSingleDycRowPane, iconRowParent, markIconRow, markIconRow);
-                }
-            CFsLayoutManager::LayoutMetricsRect(
-                    iconRowParent,
-                    markIconMetrics,
-                    rect,
-                    markIconVariety);
-            tpMarkIconTl.SetTarget(TAlfRealPoint(rect.iTl));
-            tpMarkIconBr.SetTarget(TAlfRealPoint(rect.iBr));
+            CFsLayoutManager::LayoutMetricsRect(currentSize, CFsLayoutManager::EFsLmListSingleDycRowPane, iconRowParent, markIconRow, markIconRow);
+            }
+        CFsLayoutManager::LayoutMetricsRect(
+            iconRowParent,
+            markIconMetrics,
+            rect,
+            markIconVariety);
+
+        tpMarkIconTl.SetTarget(TAlfRealPoint(rect.iTl));			
+        tpMarkIconBr.SetTarget(TAlfRealPoint(rect.iBr));
 
-            TInt iconMarkedVisIndex =
-                                 iLayout->FindVisual(iIconMarked);
-            if ( iconMarkedVisIndex != KErrNotFound )
-                {
-                tpMarkIconTl.SetStyle(EAlfTimedValueStyleSineWave);
-                iLayout->SetAnchor(EAlfAnchorTopLeft,
-                    iconMarkedVisIndex,
-                    EAlfAnchorOriginLeft,EAlfAnchorOriginTop,
-                    EAlfAnchorMetricAbsolute,EAlfAnchorMetricAbsolute,
-                    tpMarkIconTl );
-                tpMarkIconBr.SetStyle(EAlfTimedValueStyleSineWave);
-                iLayout->SetAnchor(EAlfAnchorBottomRight,
-                    iconMarkedVisIndex,
-                    EAlfAnchorOriginLeft,EAlfAnchorOriginTop,
-                    EAlfAnchorMetricAbsolute,EAlfAnchorMetricAbsolute,
-                    tpMarkIconBr );
-                }
+        TInt iconMarkedVisIndex = iLayout->FindVisual(iIconMark);
+
+        if ( iconMarkedVisIndex != KErrNotFound )
+            {
+            tpMarkIconTl.SetStyle(EAlfTimedValueStyleSineWave);
+            iLayout->SetAnchor(EAlfAnchorTopLeft,
+                iconMarkedVisIndex,
+                EAlfAnchorOriginLeft,EAlfAnchorOriginTop,
+                EAlfAnchorMetricAbsolute,EAlfAnchorMetricAbsolute,
+                tpMarkIconTl );
+            tpMarkIconBr.SetStyle(EAlfTimedValueStyleSineWave);
+            iLayout->SetAnchor(EAlfAnchorBottomRight,
+                iconMarkedVisIndex,
+                EAlfAnchorOriginLeft,EAlfAnchorOriginTop,
+                EAlfAnchorMetricAbsolute,EAlfAnchorMetricAbsolute,
+                tpMarkIconBr );
+ 	        opacity.SetValueNow(1.0f);
+            iIconMark->SetOpacity(opacity);							
             }
-        opacity.SetValueNow(1.0f);
-        iIconMarked->SetOpacity(opacity);
         }
     else
         {
-        if (iIconMarked)
-        	{
-        	opacity.SetValueNow(0.0f);
-        	iIconMarked->SetOpacity(opacity);
-        	}
+        if (iIconMark)
+            {
+            opacity.SetValueNow(0.0f);
+            iIconMark->SetOpacity(opacity);
+            }
         }
 
     if ( iPreviewPaneTextVisual )
@@ -1450,7 +1441,6 @@
 
         }
     iLayout->UpdateChildrenLayout();
-    // </cmail>
     }
 
 // ---------------------------------------------------------------------------
@@ -1506,17 +1496,16 @@
             iSecondaryTextVisual->SetFlag( EAlfVisualFlagIgnorePointer );
             }
 
-        if (!iIconMarked)
+        if (!iIconMark)
             {
-            iIconMarked = CAlfImageVisual::AddNewL( iOwnerControl, iLayout );
-            iIconMarked->SetScaleMode( CAlfImageVisual::EScaleFit );
-            iIconMarked->SetFlag( EAlfVisualFlagIgnorePointer );
+            iIconMark = CAlfImageVisual::AddNewL( iOwnerControl, iLayout );
+            iIconMark->SetScaleMode( CAlfImageVisual::EScaleFit );
+            iIconMark->SetFlag( EAlfVisualFlagIgnorePointer );
             }
 
         if (!iIconMenu)
             {
-            iIconMenu =
-                        CAlfImageVisual::AddNewL(iOwnerControl, iLayout);
+            iIconMenu = CAlfImageVisual::AddNewL(iOwnerControl, iLayout);
             iIconMenu->SetScaleMode( CAlfImageVisual::EScaleFit );
             iIconMenu->SetFlag( EAlfVisualFlagIgnorePointer );
             }
@@ -1564,7 +1553,8 @@
 void CFsTreePlainTwoLineItemVisualizer::UpdateL( const MFsTreeItemData& aData,
                                           TBool aFocused,
                                           const TUint aLevel,
-                                          CAlfTexture*& aMarkIcon,
+                                          CAlfTexture*& aMarkOnIcon,
+                                          CAlfTexture*& aMarkOffIcon,                                          
                                           CAlfTexture*& aMenuIcon,
                                           const TUint aTimeout,
                                           TBool aUpdateData)
@@ -1746,10 +1736,15 @@
                 iDateTimeTextVisual->SetTextStyle( styleId );
                 }
 
-            if ( IsMarked() && iIconMarked && aMarkIcon )
+            if ( IsMarked() && iIconMark && aMarkOnIcon )
                 {
-                iIconMarked->SetScaleMode( CAlfImageVisual::EScaleFit );
-                iIconMarked->SetImage( *aMarkIcon );
+                iIconMark->SetScaleMode( CAlfImageVisual::EScaleFit );
+                iIconMark->SetImage( *aMarkOnIcon );
+                }
+            else if ( !IsMarked() && iIconMark && aMarkOffIcon )
+                {
+                iIconMark->SetScaleMode( CAlfImageVisual::EScaleFit );
+                iIconMark->SetImage( *aMarkOffIcon );
                 }
 
             //menu icon - visible only when item is focused