hswidgetplugin/fmradiohswidgetplugin/src/fmradiohswidgetprofilereader.cpp
changeset 28 075425b8d9a4
parent 24 6df133bd92e1
--- a/hswidgetplugin/fmradiohswidgetplugin/src/fmradiohswidgetprofilereader.cpp	Fri Jun 04 10:21:36 2010 +0100
+++ b/hswidgetplugin/fmradiohswidgetplugin/src/fmradiohswidgetprofilereader.cpp	Fri Jun 11 13:38:32 2010 +0300
@@ -16,16 +16,17 @@
 */
 
 // System includes
+#include <QDateTime>
 #include <ProfileEngineSDKCRKeys.h>
 #include "xqsettingsmanager.h"
 #include "xqsettingskey.h"
 #include "xqpublishandsubscribeutils.h"
-#include <QDateTime>
 
 // User includes
 #include "fmradiohswidgetprofilereader.h"
 #include "fmradiohswidget.h"
 #include "radioservicedef.h"
+#include "radiologger.h"
 
 /*!
  Constructor
@@ -35,23 +36,11 @@
     mSettingsManager(new XQSettingsManager(this)),
     mRadioStatus(-1)
 {
-/*
-    // Monitors devices profile.
-    XQSettingsKey profileKey(XQSettingsKey::TargetCentralRepository,
-        KCRUidProfileEngine.iUid, KProEngActiveProfile);
-    mSettingsManager->startMonitoring(profileKey);
-    currentProfileStatus(mSettingsManager->readItemValue(profileKey));
-    
+    LOG_METHOD;
     connect(mSettingsManager, SIGNAL(itemDeleted(XQSettingsKey)), this,
         SLOT(itemDeleted(XQSettingsKey)));
     connect(mSettingsManager, SIGNAL(valueChanged(XQSettingsKey, QVariant)),
         this, SLOT(handleChanges(XQSettingsKey, QVariant)));
-*/
-    startMonitoringRadioRunningStatus();
-    bool d = connect(mSettingsManager, SIGNAL(itemDeleted(XQSettingsKey)), this,
-        SLOT(itemDeleted(XQSettingsKey)));
-    bool h = connect(mSettingsManager, SIGNAL(valueChanged(XQSettingsKey, QVariant)),
-        this, SLOT(handleRadioRunningChanges(XQSettingsKey, QVariant)));
 }
 
 /*!
@@ -59,22 +48,26 @@
  */
 FmRadioHsWidgetProfileReader::~FmRadioHsWidgetProfileReader()
 {
+    LOG_METHOD;
 }
 
 
 /*!
- Handling of deletion of listened P&S key.
+ Handling of deletion of listened keys.
  
  \param key Deleted key.
  */
-void FmRadioHsWidgetProfileReader::itemDeleted(const XQSettingsKey& key)
+void FmRadioHsWidgetProfileReader::itemDeleted(const XQSettingsKey &key)
 {
+    LOG_METHOD;
+    // Profile information will be used for offline query.
 /*
     if (key.uid() == KCRUidProfileEngine.iUid && key.key()
         == KProEngActiveProfile) {
     }
 */
     if (key.uid() == KRadioPSUid && key.key() == KRadioStartupKey) {
+        LOG("KRadioStartupKey deleted");
         startMonitoringRadioRunningStatus();
     }
 }
@@ -86,83 +79,75 @@
  \param key Changed key.
  \param value Value of changed key.
  */
-/*
-void FmRadioHsWidgetProfileReader::handleChanges(const XQSettingsKey& key,
+void FmRadioHsWidgetProfileReader::handleChanges(const XQSettingsKey &key,
     const QVariant& value)
-{ 
+{
+    LOG_SLOT_CALLER;
+
+    // Profile information will be used for offline query.
+    /*
     if (key.uid() == KCRUidProfileEngine.iUid && key.key()
         == KProEngActiveProfile) {
         currentProfileStatus(value);
     }
+    */
+    
+    if (key.uid() == KRadioPSUid && key.key()
+        == KRadioStartupKey) {
+        LOG("KRadioStartupKey changed");
+        currentRadioRunningStatus(value);
+    }
 }
-*/
+
 
 /*!
  Handling changes in profile information.
  
- \param value Originally information is of int type. Valid values after
- conversion are described by KProEngActiveProfile in ProfileEngineSDKCRKeys.h.
+ \param value
  */
+/*
 void FmRadioHsWidgetProfileReader::currentProfileStatus(QVariant value)
 {
     if (value.canConvert(QVariant::Int)) {
         emit profileChanged(value.toInt());
     }
 }
+*/
 
 /*!
- Notifications from settings manager are handled and routed to appropriate
- private slots.
-
- \param key Changed key.
- \param value Value of changed key.
+ Handling changes in radio running P&S key.
+ 
+ \param value is int representation of time in seconds when radio was started.
  */
-void FmRadioHsWidgetProfileReader::handleRadioRunningChanges(const XQSettingsKey& key,
-    const QVariant& value)
+void FmRadioHsWidgetProfileReader::currentRadioRunningStatus(const QVariant &value)
 {
-    if (key.uid() == KRadioPSUid && key.key()
-        == KRadioStartupKey) {
-        currentRadioRunningStatus(value);
-    }
-}
-
-/*!
- Handling changes in profile information.
- 
- \param value Originally information is of int type. Valid values after
- conversion are described by KProEngActiveProfile in ProfileEngineSDKCRKeys.h.
- */
-void FmRadioHsWidgetProfileReader::currentRadioRunningStatus(QVariant value)
-{
+    LOG_METHOD;
     if (value.isValid()) {
         if (value.canConvert(QVariant::Int)) {
             mRadioStatus = value.toInt();
+            // Emit that radio is running.
             QVariant state(FmRadioHsWidget::Running);
             emit radioRunning(state);
         }
     } else {
         mRadioStatus = -1;
+        // Emit that radio is not running.
         QVariant state(FmRadioHsWidget::NotRunning);
         emit radioRunning(state);
     }
 }
 
-QVariant FmRadioHsWidgetProfileReader::radioStatus()
-{
-    QVariant state;
-    if (mRadioStatus != -1) {
-        state = QVariant(FmRadioHsWidget::Running);
-        return state;
-    } else {
-        state = QVariant(FmRadioHsWidget::NotRunning);
-        return state;
-    }
-}
-
+/*!
+ Start monitoring radio P&S key.
+ 
+ */
 void FmRadioHsWidgetProfileReader::startMonitoringRadioRunningStatus()
 {
+    LOG_METHOD;
     XQSettingsKey radioRunningKey(XQSettingsKey::TargetPublishAndSubscribe, KRadioPSUid,
         KRadioStartupKey);
-    bool a = mSettingsManager->startMonitoring(radioRunningKey);
+    // Start monitoring.
+    mSettingsManager->startMonitoring(radioRunningKey);
+    // Read current value.
     currentRadioRunningStatus(mSettingsManager->readItemValue(radioRunningKey));
 }