messagingappbase/mce/src/MceMessageListView.cpp
branchRCL_3
changeset 15 52d61119153d
parent 14 c6838af47512
child 19 7e4e4bcc75b6
--- a/messagingappbase/mce/src/MceMessageListView.cpp	Wed Mar 31 21:25:02 2010 +0300
+++ b/messagingappbase/mce/src/MceMessageListView.cpp	Wed Apr 14 15:53:21 2010 +0300
@@ -158,6 +158,7 @@
     delete iDateTimeNotifier;
 	delete iAiwServiceHandler;
 	RProperty::Delete( KPSUidMuiu, KMceTemplatesDialog ); 	
+	RProperty::Delete( KPSUidMuiu, KMuiuOneRowListPopulated );
     iSessionHolder.RemoveClient();
     }
 
@@ -187,7 +188,17 @@
         }        
     iListboxMailTypeObserver = CMceListboxTypeObserver::NewL( *this, KMuiuMailMessageListType );
     iListboxInboxTypeObserver = CMceListboxTypeObserver::NewL( *this, KMuiuInboxMessageListType );
-    
+    TInt r = RProperty::Define( KPSUidMuiu, KMuiuOneRowListPopulated, RProperty::EInt );
+    if ( r != KErrAlreadyExists || r != KErrNone)
+        {
+        User::LeaveIfError( r );
+        }
+	// Initialisation		
+     r = RProperty::Set( KPSUidMuiu, KMuiuOneRowListPopulated, EFalse );
+     if ( r != KErrNone )
+         {
+         User::LeaveIfError( r );
+         }          
     MCELOGGER_LEAVEFN("CMceMessageListView::ConstructL");   
     }
 
@@ -2283,6 +2294,16 @@
 // ----------------------------------------------------
 void CMceMessageListView::EditMenuL( CEikMenuPane* aMenuPane ) const
     {
+    TInt listPopulated =1;
+    //Get the value, accordingly we can dim/undim mark all for one row list only
+    if(!iCurrentListType)
+        {
+        TInt r = RProperty::Get( KPSUidMuiu, KMuiuOneRowListPopulated, listPopulated );
+        if ( r != KErrNone )
+        	{
+            User::LeaveIfError( r );
+            }
+        }
     // This function is not called if empty folder because in that case
     // EditMenu is hidden
     aMenuPane->SetItemDimmed( EAknCmdMarkReadMsgs, ETrue );
@@ -2305,7 +2326,7 @@
             }
        }   
 
-    if ( ( count + SubfolderCount() ) == iMsgListContainer->Count() )
+    if ( ( count + SubfolderCount() ) == iMsgListContainer->Count() || !listPopulated)
        {
        //if all selected, disable markall
        aMenuPane->SetItemDimmed( EAknMarkAll, ETrue );