htiui/HtiAdmin/src/HtiAdminAppUi.cpp
branchRCL_3
changeset 19 d40e813b23c0
parent 3 2703485a934c
--- a/htiui/HtiAdmin/src/HtiAdminAppUi.cpp	Mon Jun 21 15:41:16 2010 +0300
+++ b/htiui/HtiAdmin/src/HtiAdminAppUi.cpp	Thu Jul 15 18:39:46 2010 +0300
@@ -109,6 +109,7 @@
     iAppView->SetSelectedCommCaption( KHtiSelectedCommCaption );
     UpdateVersion();
     UpdateStatusL();
+    StartTimer();
     iHtiCfg = CHtiCfg::NewL();
     UpdateAutoStartStatus(); // uses iHtiCfg
     UpdateSelectedComm(); // uses iHtiCfg
@@ -810,6 +811,7 @@
         {
         UpdateStatusL();
         UpdateAutoStartStatus();
+        StartTimer();
         }
     else
         {
@@ -889,15 +891,6 @@
                 {
                 _LIT( KTxt, "Running" );
                 iAppView->SetStatus( KTxt );
-
-                // start timer to watch the status
-                if ( !iPeriodic )
-                    {
-                    iPeriodic = CPeriodic::NewL( CActive::EPriorityStandard );
-                    iPeriodic->Start( 5 * 1000 * 1000,
-                                      5 * 1000 * 1000,
-                                      TCallBack( TimerCallBackL, this ) );
-                    }
                 }
                 break;
 
@@ -906,7 +899,6 @@
                 {
                 _LIT( KTxt, "Stopped" );
                 iAppView->SetStatus( KTxt );
-                KillTimer();
                 }
                 break;
 
@@ -914,16 +906,11 @@
                 {
                 _LIT( KTxt, "Panic" );
                 iAppView->SetStatus( KTxt );
-                KillTimer();
                 }
                 break;
             };
         prs.Close();
         }
-    else
-        {
-        KillTimer();
-        }
     }
 
 void CHtiAdminAppUi::UpdateAutoStartStatus()
@@ -1083,6 +1070,18 @@
         }
     }
 
+void CHtiAdminAppUi::StartTimer()
+    {
+    // start timer to watch the status
+    if ( !iPeriodic )
+        {
+        iPeriodic = CPeriodic::NewL( CActive::EPriorityIdle );
+        iPeriodic->Start( 1 * 1000 * 1000,
+                          10 * 1000 * 1000,
+                          TCallBack( TimerCallBackL, this ) );
+        }
+    }
+
 void CHtiAdminAppUi::KillTimer()
     {
     if ( iPeriodic )