cmmanager/cmmgr/Framework/Src/uncatdlg.cpp
changeset 18 fcbbe021d614
parent 1 40cb640ef159
--- a/cmmanager/cmmgr/Framework/Src/uncatdlg.cpp	Tue Feb 02 00:24:11 2010 +0200
+++ b/cmmanager/cmmgr/Framework/Src/uncatdlg.cpp	Fri Apr 16 15:21:37 2010 +0300
@@ -226,6 +226,7 @@
                     {
                     TCmCommonUi::ShowNoteL( R_QTN_NETW_CONSET_INFO_UNCAT_EMPTY,
                                             TCmCommonUi::ECmInfoNote );
+                    iCmManager->WatcherUnRegister();       
                     TryExitL( KDialogUserBack );                                
                     }
                 }
@@ -295,6 +296,7 @@
                             {
                             TCmCommonUi::ShowNoteL( R_QTN_NETW_CONSET_INFO_UNCAT_EMPTY,
                                                     TCmCommonUi::ECmInfoNote );
+                            iCmManager->WatcherUnRegister();       
                             TryExitL( KDialogUserBack );                                
                             }
                         }
@@ -389,6 +391,36 @@
     }
 
 // --------------------------------------------------------------------------
+// CCmDlg::ClearHiddenCMsFromArrayL
+// --------------------------------------------------------------------------
+//
+void CUncatDlg::ClearHiddenCMsFromArrayL( RArray<TUint32>& aCmIds )
+    {
+    TBool hidden( EFalse );
+    TInt err( KErrNone );
+    for ( TInt index = 0; index < aCmIds.Count(); index++ )
+        {
+        TUint recId = aCmIds[index];
+        TRAP( err, hidden = iCmManager->GetConnectionMethodInfoBoolL( recId, ECmHidden ) );
+        if ( err || hidden )
+            {
+            aCmIds.Remove( index );
+            index--;
+            // Remove the same item from iCmUncatItems array
+            for( TInt i = 0; i < iCmUncatItems.Count(); i++ )
+                {
+                if( iCmUncatItems[i].iCmId == recId )
+                    {
+                    iCmUncatItems.Remove( i );
+                    break;
+                    }
+                }
+            }
+        }
+    }
+
+
+// --------------------------------------------------------------------------
 // CUncatDlg::CleanupUncatArray
 // --------------------------------------------------------------------------
 //