+
+ if(timeout)
+ {
+ showDelayedResult(msg, timeout);
+ }
+ else
+ {
+ showResult(msg);
+ }
+}
+
+bool CallListener::is3g()
+{
+ QDBusMessage msg = QDBusMessage::createMethodCall("com.nokia.phone.net",
+ "/com/nokia/phone/net",
+ "Phone.Net",
+ "get_registration_status");
+
+ QDBusMessage rep = systemBus_.call(msg);
+
+ if(rep.type() == QDBusMessage::ErrorMessage)
+ {
+ qDebug() << "Unable to get network status";
+ return false;
+ }
+
+ uint status = rep.arguments().value(6).toUInt();
+
+ if(status & 0x10 || status & 0x08)
+ {
+ return true;
+ }
+
+ return false;
+}
+
+void CallListener::sendRetrySignal(QString const& iap, bool retry)
+{
+ QDBusMessage msg = QDBusMessage::createSignal("/com/nokia/icd_ui",
+ "com.nokia.icd_ui",
+ "retry");
+
+ QList<QVariant> arguments;
+ arguments.append(QVariant(iap));
+ arguments.append(QVariant(retry));
+ msg.setArguments(arguments);
+
+ QDBusConnection::systemBus().send(msg);
+
+ qDebug() << "Retry signal sent";