videocollection/hgmyvideos/src/vcxhgmyvideosvideodataupdater.cpp
branchRCL_3
changeset 20 2d690156cf8f
parent 15 8f0df5c82986
--- a/videocollection/hgmyvideos/src/vcxhgmyvideosvideodataupdater.cpp	Mon Jun 21 15:43:03 2010 +0300
+++ b/videocollection/hgmyvideos/src/vcxhgmyvideosvideodataupdater.cpp	Thu Jul 15 18:41:27 2010 +0300
@@ -33,6 +33,7 @@
 #include <gulicon.h>
 
 #include "IptvDebug.h"
+#include <myvideosindicator.h>
 #include <vcxmyvideosdefs.h>
 #include "vcxhgmyvideosmodel.h"
 #include "vcxhgmyvideosmainview.h"
@@ -67,12 +68,14 @@
 CVcxHgMyVideosVideoDataUpdater* CVcxHgMyVideosVideoDataUpdater::NewL(
         CVcxHgMyVideosModel& aModel,
         CHgScroller& aScroller,
-        CVcxHgMyVideosVideoList& aVideoArray )
+        CVcxHgMyVideosVideoList& aVideoArray,
+        CMyVideosIndicator& aVideosIndicator )
     {
     CVcxHgMyVideosVideoDataUpdater* self = 
         CVcxHgMyVideosVideoDataUpdater::NewLC( aModel,
                                                aScroller,
-                                               aVideoArray );
+                                               aVideoArray,
+                                               aVideosIndicator );
     CleanupStack::Pop( self );
     return self;
     }
@@ -84,12 +87,14 @@
 CVcxHgMyVideosVideoDataUpdater* CVcxHgMyVideosVideoDataUpdater::NewLC(
         CVcxHgMyVideosModel& aModel,
         CHgScroller& aScroller,
-        CVcxHgMyVideosVideoList& aVideoArray )
+        CVcxHgMyVideosVideoList& aVideoArray,
+        CMyVideosIndicator& aVideosIndicator)
     {
     CVcxHgMyVideosVideoDataUpdater* self = 
         new (ELeave) CVcxHgMyVideosVideoDataUpdater( aModel,
                                                      aScroller,
-                                                     aVideoArray );
+                                                     aVideoArray,
+                                                     aVideosIndicator );
     CleanupStack::PushL( self );
     self->ConstructL();
     return self;
@@ -102,11 +107,13 @@
 CVcxHgMyVideosVideoDataUpdater::CVcxHgMyVideosVideoDataUpdater(
         CVcxHgMyVideosModel& aModel,
         CHgScroller& aScroller,
-        CVcxHgMyVideosVideoList& aVideoArray )
+        CVcxHgMyVideosVideoList& aVideoArray,
+        CMyVideosIndicator& aVideosIndicator )
   : CActive( EPriorityStandard ),
     iModel( aModel ),
     iScroller( aScroller ),
     iVideoArray( aVideoArray ),
+    iVideosIndicator( aVideosIndicator ),
     iPaused( EFalse )
     {
     CActiveScheduler::Add( this );
@@ -396,6 +403,8 @@
 //
 void CVcxHgMyVideosVideoDataUpdater::UpdateVideoDataToUiL( CVcxHgMyVideosVideoData& aVideoData )
     {
+    IPTVLOGSTRING_LOW_LEVEL("CVcxHgMyVideosVideoDataUpdater::UpdateVideoDataToUiL() ENTER" );
+
     TInt index = iVideoArray.IndexByMPXItemId( aVideoData.MPXItemId() );
     
     if ( index >= 0 && index < iScroller.ItemCount() )
@@ -406,7 +415,18 @@
         if ( aVideoData.Thumbnail() )
             {
             CGulIcon* thumbnail = CGulIcon::NewL( aVideoData.Thumbnail( ETrue ) );
-            listItem.SetIcon( thumbnail ); 
+            listItem.SetIcon( thumbnail );
+            CMPXMedia* media = iVideoArray.MPXMediaByMPXItemId( aVideoData.MPXItemId() );
+            if ( iVideosIndicator.IsIndicatorShown( *media ) )
+                {
+                IPTVLOGSTRING_LOW_LEVEL("CVcxHgMyVideosVideoDataUpdater::UpdateVideoDataToUiL() has icon, has indicator" );
+                listItem.SetFlags( CHgItem::EHgItemFlagsIconOverlayIndicator );
+                }
+            else
+                {
+                IPTVLOGSTRING_LOW_LEVEL("CVcxHgMyVideosVideoDataUpdater::UpdateVideoDataToUiL() has icon, no indicator" );
+                listItem.ClearFlags( CHgItem::EHgItemFlagsIconOverlayIndicator );
+                }
             }
         
         if ( drmUpdate )
@@ -464,6 +484,7 @@
             RefreshScreen();
             }
         }
+    IPTVLOGSTRING_LOW_LEVEL("CVcxHgMyVideosVideoDataUpdater::UpdateVideoDataToUiL() RETURN" );
     }
 
 // -----------------------------------------------------------------------------