phoneplugins/infowidgetplugin/infowidget/src/infowidgetsathandler.cpp
changeset 45 6b911d05207e
child 46 bc5a64e5bc3c
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/phoneplugins/infowidgetplugin/infowidget/src/infowidgetsathandler.cpp	Wed Jun 23 18:12:20 2010 +0300
@@ -0,0 +1,122 @@
+/*
+ * Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
+ * All rights reserved.
+ * This component and the accompanying materials are made available
+ * under the terms of "Eclipse Public License v1.0"
+ * which accompanies this distribution, and is available
+ * at the URL "http://www.eclipse.org/legal/epl-v10.html".
+ *
+ * Initial Contributors:
+ * Nokia Corporation - initial contribution.
+ *
+ * Contributors:
+ *
+ * Description:
+ *
+ */
+
+
+#include "infowidgetsathandler.h"
+#include "infowidgetlogging.h"
+#include <rsatservice.h>
+
+/*!
+  \class InfoWidgetSatHandler
+  \brief Handles SIM Application Toolkit specific functionality of 
+         Operator info widget
+*/
+
+/*!
+   InfoWidgetSatHandler::InfoWidgetSatHandler
+ */
+InfoWidgetSatHandler::InfoWidgetSatHandler(QObject *parent):
+    QObject(parent),
+    m_satHandlerPrivate(NULL), 
+    m_connected(false)
+{
+    DPRINT << ": IN";
+    m_satHandlerPrivate.reset(
+            new InfoWidgetSatHandlerPrivate(this, m_satService));
+    DPRINT << ": OUT";
+}
+
+/*!
+   InfoWidgetSatHandler::~InfoWidgetSatHandler
+ */
+InfoWidgetSatHandler::~InfoWidgetSatHandler()
+{
+    DPRINT; 
+}
+
+/*!
+   InfoWidgetSatHandler::connect
+ */
+void InfoWidgetSatHandler::connect(bool connect)
+{
+    DPRINT << ": IN : connected = " << m_connected 
+            << " : connect = " << connect;
+    
+    if (connect && !m_connected) {
+        DPRINT << "connect and startObserving() ";
+        m_connected = m_satHandlerPrivate->connect();
+        if(m_connected){
+            m_satHandlerPrivate->startObserving();
+        }
+    }else if (!connect && m_connected){
+        DPRINT << "disconnect and stopObserving() ";
+        m_connected = m_satHandlerPrivate->disconnect();
+    }
+    DPRINT << ": OUT : connected = " << m_connected;
+}
+
+/*!
+   InfoWidgetSatHandler::satDisplayText
+ */
+const QString& InfoWidgetSatHandler::satDisplayText() const
+{
+    DPRINT << ": text: " << m_displayText; 
+    return m_displayText;
+}
+
+/*!
+   InfoWidgetSatHandler::setSatDisplayText
+ */
+void InfoWidgetSatHandler::setSatDisplayText(const QString& displayText)
+{
+    DPRINT << ": display text: " << displayText;
+    m_displayText = displayText;
+}
+
+/*!
+   InfoWidgetSatHandler::handleIdleModeTxtMessage
+ */
+void InfoWidgetSatHandler::handleIdleModeTxtMessage(int idleResult)
+{
+    DPRINT << ": handleIdleModeTxtMessage: " << idleResult;
+    if(m_connected){
+        m_satService.SetIdleModeTextResponse(
+                (RSatService::TSATIdleResult)idleResult);
+    }
+    else{
+        m_satService.SetIdleModeTextResponse( 
+                RSatService::ESATIdleCmdBeyondMeCapabilities );
+    }
+ 
+    //Pass the result
+    emit handleMessage(idleResult);
+}
+
+/*!
+   InfoWidgetSatHandler::handleSatError
+ */
+void InfoWidgetSatHandler::handleSatError(int operation, int errorCode)
+{
+    DPRINT << ": satError : operation: " << 
+            operation << ": errorCode: "<<errorCode;
+    m_satService.SetIdleModeTextResponse( 
+            RSatService::ESATIdleMeUnableToProcessCmd);
+    emit handleError(operation, errorCode);
+}
+
+// End of File. 
+