phonebookui/Phonebook2/GroupExtension/src/CPguGroupView.cpp
branchRCL_3
changeset 21 b3431bff8c19
parent 15 e8e3147d53eb
child 35 4ae315f230bc
--- a/phonebookui/Phonebook2/GroupExtension/src/CPguGroupView.cpp	Mon Mar 15 12:39:26 2010 +0200
+++ b/phonebookui/Phonebook2/GroupExtension/src/CPguGroupView.cpp	Wed Mar 31 21:13:53 2010 +0300
@@ -42,6 +42,8 @@
 #include <CPbk2StoreProperty.h>
 #include <MPbk2ApplicationServices.h>
 #include <MPbk2ContactViewSupplier.h>
+#include <CPbk2ApplicationServices.h>
+#include <MPbk2StoreValidityInformer.h>
 
 // Virtual Phonebook
 #include <MVPbkContactStoreList.h>
@@ -509,7 +511,11 @@
             }
         case R_PHONEBOOK2_INFO_MENU:
             {
-            // menu always visible in group view
+            // If there are no available stores, "memory details" should not be shown in Options menu
+            if( !CurrentStoreIsAvailableL() )
+                {
+                aMenuPane->SetItemDimmed( EPbk2CmdPhonebook2Info, ETrue ); 
+                }
             break;
             }
         default:
@@ -661,6 +667,27 @@
     }
 
 // --------------------------------------------------------------------------
+// CPguGroupView::CurrentStoreIsAvailable
+// --------------------------------------------------------------------------
+//
+TBool CPguGroupView::CurrentStoreIsAvailableL() const
+    {
+    TBool ret = ETrue;
+    CPbk2ApplicationServices* appServices = CPbk2ApplicationServices::InstanceLC();
+
+    // Returns the stores that are currently available and open(selected by user in Settings).
+    CVPbkContactStoreUriArray* aValidStores = appServices->StoreValidityInformer().CurrentlyValidStoresL();
+    CleanupStack::PushL( aValidStores );
+    if( 0 == aValidStores->Count() )
+        {
+        ret = EFalse;
+        }
+     CleanupStack::PopAndDestroy(); // aValidStores
+     CleanupStack::PopAndDestroy(); // appServices
+     return ret;
+    }
+
+// --------------------------------------------------------------------------
 // CPguGroupView::CreateControlsL
 // --------------------------------------------------------------------------
 //