cmmanager/cmmgr/Framework/Src/cmdlg.cpp
branchRCL_3
changeset 12 ea6e024ea6f9
parent 1 40cb640ef159
child 17 c14618f9de99
--- a/cmmanager/cmmgr/Framework/Src/cmdlg.cpp	Fri Feb 19 23:12:51 2010 +0200
+++ b/cmmanager/cmmgr/Framework/Src/cmdlg.cpp	Fri Mar 12 15:44:18 2010 +0200
@@ -198,9 +198,10 @@
                                         CEikMenuPane* aMenuPane )
     {
     CAknDialog::DynInitMenuPaneL( aResourceId, aMenuPane );        
+    
     if ( aResourceId == R_CM_MENU )
         {
-    	if (aResourceId == R_CM_MENU && !iCmManager->IsHelpOn())
+    	if ( !iCmManager->IsHelpOn() )
             {
             aMenuPane->DeleteMenuItem( EAknCmdHelp );		    
             }
@@ -243,18 +244,27 @@
                 hidePrioritise = ETrue;
                 }
             }
-     
+ 
+        // All item specific options need to be dimmed if in prioritising view
+        if ( iPrioritising )
+            {
+            hideEdit = ETrue;
+            hideAdd = ETrue;
+            hideRename = ETrue;
+            hideDelete = ETrue;
+            hideCopy = ETrue;
+            hideMove = ETrue;
+            hidePrioritise = ETrue;           
+            }
+
         // Show or hide menu items
-        if ( aResourceId == R_CM_MENU )
-            {            
-            aMenuPane->SetItemDimmed( ECmManagerUiCmdCmEdit,    hideEdit );
-            aMenuPane->SetItemDimmed( ECmManagerUiCmdCmAdd,     hideAdd );
-            aMenuPane->SetItemDimmed( ECmManagerUiCmdCmRename,  hideRename );            
-            aMenuPane->SetItemDimmed( ECmManagerUiCmdCmDelete,  hideDelete );    
-            aMenuPane->SetItemDimmed( ECmManagerUiCmdCmPrioritise, hidePrioritise );
-            aMenuPane->SetItemDimmed( ECmManagerUiCmdCmMoveToOtherDestination, hideMove );
-            aMenuPane->SetItemDimmed( ECmManagerUiCmdCmCopyToOtherDestination, hideCopy ); 
-            }
+        aMenuPane->SetItemDimmed( ECmManagerUiCmdCmEdit,    hideEdit );
+        aMenuPane->SetItemDimmed( ECmManagerUiCmdCmAdd,     hideAdd );
+        aMenuPane->SetItemDimmed( ECmManagerUiCmdCmRename,  hideRename );            
+        aMenuPane->SetItemDimmed( ECmManagerUiCmdCmDelete,  hideDelete );    
+        aMenuPane->SetItemDimmed( ECmManagerUiCmdCmPrioritise, hidePrioritise );
+        aMenuPane->SetItemDimmed( ECmManagerUiCmdCmMoveToOtherDestination, hideMove );
+        aMenuPane->SetItemDimmed( ECmManagerUiCmdCmCopyToOtherDestination, hideCopy ); 
         }   
     }
     
@@ -1229,7 +1239,12 @@
         {
         User::LeaveIfError( err );
         }
-        
+
+    if ( !cm )
+        {
+        return;
+        }
+
     // Must reload here in case another app changed the data (CurrentCML loads
     // only if not already loaded)   
     cm->ReLoadL();