photosgallery/contentharvesterplugin/src/glxcontentharvesterpluginalbums.cpp
changeset 1 9ba538e329bd
parent 0 4e91876724a2
child 2 7d9067c6fcb1
--- a/photosgallery/contentharvesterplugin/src/glxcontentharvesterpluginalbums.cpp	Thu Dec 17 08:45:44 2009 +0200
+++ b/photosgallery/contentharvesterplugin/src/glxcontentharvesterpluginalbums.cpp	Thu Jan 07 12:46:23 2010 +0200
@@ -71,9 +71,11 @@
     //Call the base class ConstructL
     CGlxContentHarvesterPluginBase::ConstructL(EMbmGlxiconsQgn_prop_image_notcreated);
     
-    iPeriodic = CPeriodic::NewL( CActive::EPriorityLow );
-    iThumbnailContext = CGlxThumbnailContext::NewL(&iThumbnailIterator);
-        
+    iPeriodic = CPeriodic::NewL( CActive::EPriorityLow );    
+       
+    iUriAttributeContext = new (ELeave) CGlxAttributeContext(&iThumbnailIterator); 
+    iThumbnailAttributeContext = new (ELeave) CGlxAttributeContext(&iThumbnailIterator); 
+    
     //Register/Subscribe with matrix menu for the notifications 
     GetInterfaceForNotificationL();
     SetupPublisherL(KItemIndexAlbums);
@@ -437,8 +439,12 @@
         {
         GLX_LOG_INFO("CGlxContentHarvesterPluginAlbums::DestroyMedialist,media list deleted");
         RemoveContextAndObserver();
-        delete iThumbnailContext;
-        iThumbnailContext = NULL;
+        
+        delete iUriAttributeContext;
+        iUriAttributeContext = NULL;
+        delete iThumbnailAttributeContext;
+        iThumbnailAttributeContext = NULL;
+        
         iMediaList->Close();
         iMediaList = NULL;
         }
@@ -463,9 +469,10 @@
             {
             iThumbnailIterator.SetRange( KSinglePreviewThumbnail );
             }
-
-        iMediaList = CreateMedialistAndThumbnailContextL( TGlxMediaId( 
-                KGlxCollectionPluginAlbumsImplementationUid ),iThumbnailContext);
+        iMediaList = CreateMedialistAndAttributeContextL( TGlxMediaId( 
+                        KGlxCollectionPluginAlbumsImplementationUid ),
+                        iUriAttributeContext,iThumbnailAttributeContext);         
+        
         AddContextAndObserverL();
         }
     }
@@ -542,11 +549,12 @@
     if(iMediaList)
         {
         iMediaList->AddMediaListObserverL( this );
-        iMediaList->AddContextL(iThumbnailContext, KGlxFetchContextPriorityNormal);
+        iMediaList->AddContextL(iUriAttributeContext, KGlxFetchContextPriorityNormal);
+        iMediaList->AddContextL(iThumbnailAttributeContext, KGlxFetchContextPriorityLow);        
         }
     }
 
-// ---------------------------------------------------------------------------
+// ---------------------------------------------------------------------------c
 // CGlxContentHarvesterPluginAlbums::RemoveContextAndObserver
 // ---------------------------------------------------------------------------
 //
@@ -556,7 +564,8 @@
     if(iMediaList)
         {
         iMediaList->RemoveMediaListObserver( this );
-        iMediaList->RemoveContext(iThumbnailContext);
+        iMediaList->RemoveContext(iUriAttributeContext);
+        iMediaList->RemoveContext(iThumbnailAttributeContext);        
         }
     }