phoneapp/phoneuiqtviewadapter/src/phoneindicatorcontroller.cpp
changeset 30 ebdbd102c78a
parent 27 2f8f8080a020
child 51 f39ed5e045e0
--- a/phoneapp/phoneuiqtviewadapter/src/phoneindicatorcontroller.cpp	Mon May 03 12:31:11 2010 +0300
+++ b/phoneapp/phoneuiqtviewadapter/src/phoneindicatorcontroller.cpp	Fri May 14 15:51:57 2010 +0300
@@ -29,7 +29,7 @@
 #endif
 
 PhoneIndicatorController::PhoneIndicatorController(QObject *parent):
-    QObject(parent), m_missedCallsFilter(0), m_logsModel(0)
+    QObject(parent), m_logsModel(0), m_missedCallsFilter(0)
 {
 #ifdef Q_OS_SYMBIAN
     m_setManager = new XQSettingsManager(this);
@@ -63,6 +63,42 @@
 #endif
 }
 
+void PhoneIndicatorController::setActiveCallData( 
+        const TDesC &text, const TDesC &icon )
+{
+    m_cli = QString::fromUtf16 (text.Ptr (), text.Length ());
+    m_callImage = QString::fromUtf16 (icon.Ptr (), icon.Length ());
+}
+
+void PhoneIndicatorController::clearActiveCallData()
+{
+    m_cli.clear();
+    m_callImage.clear();
+    disableActiveCallIndicator();
+}
+
+void PhoneIndicatorController::enableActiveCallIndicator()
+{
+    if (!m_cli.isEmpty()){
+        QString indicatorType(indicatorName(PhoneActiveCallIndicator));
+        QVariantMap parameters;
+        
+        parameters.insert(
+                QVariant(HbIndicatorInterface::PrimaryTextRole ).toString(),
+                m_cli);
+        
+        parameters.insert(QVariant( HbIndicatorInterface::DecorationNameRole).toString(),
+                m_callImage);
+        
+        m_indicator.activate(indicatorType, parameters);
+    }
+}
+void PhoneIndicatorController::disableActiveCallIndicator()
+{
+    QString indicatorType(indicatorName(PhoneActiveCallIndicator));
+    m_indicator.deactivate(indicatorType);
+}
+
 void PhoneIndicatorController::updateMissedCallIndicator(
         const XQSettingsKey &key, const QVariant &value)
 {