diff -r 40a3f856b14d -r 41a7f70b3818 phoneengine/networkhandlingstarter/src/networkhandlingstarter_p.cpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/phoneengine/networkhandlingstarter/src/networkhandlingstarter_p.cpp Tue Aug 31 15:14:29 2010 +0300 @@ -0,0 +1,139 @@ +/* + * Copyright (c) 2009-2010 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 +#include +#include +#include +#include +#include + +#include "networkhandlingstarter_p.h" +#include "networkhandlingstarterlogging.h" +#include "cnetworklistener.h" + +/*! + Constructor of NetworkHandlingStarterPrivate. + */ +NetworkHandlingStarterPrivate::NetworkHandlingStarterPrivate(QObject *parent) + : + QObject(parent), + m_networkListener(NULL), + m_note(NULL) +{ + DPRINT << ": IN"; + + QT_TRAP_THROWING(m_networkListener = CNetworkListener::NewL(*this)) + + DPRINT << ": OUT"; +} + +/*! + Destructor of NetworkHandlingStarterPrivate. + */ +NetworkHandlingStarterPrivate::~NetworkHandlingStarterPrivate() +{ + DPRINT << ": IN"; + + delete m_networkListener; + if (m_note) { + delete m_note; + } + + DPRINT << ": OUT"; +} + +/*! + NetworkHandlingStarterPrivate::ShowNote() + */ +void NetworkHandlingStarterPrivate::ShowNote() +{ + DPRINT << ": IN"; + + if (m_note) { + m_note->close(); + delete m_note; + m_note = NULL; + } + HbTranslator commonTranslator("common"); + HbTranslator telephone_cpTranslator("telephone_cp"); + m_note = new HbDeviceMessageBox( + hbTrId("txt_phone_info_network_lost_select_network"), + HbMessageBox::MessageTypeQuestion); + HbAction *primaryAction = new HbAction(hbTrId("txt_common_button_yes"), m_note); + m_note->setAction(primaryAction, HbDeviceMessageBox::AcceptButtonRole); + HbAction *secondaryAction = new HbAction(hbTrId("txt_common_button_no"), m_note); + m_note->setAction(secondaryAction,HbDeviceMessageBox::RejectButtonRole); + QObject::connect( + primaryAction, SIGNAL(triggered()), + this, SLOT(LaunchCpNetworkPluginView())); + m_note->setTimeout(0); + m_note->show(); + + DPRINT << ": OUT"; +} + +/*! + NetworkHandlingStarterPrivate::RemoveNote() + */ + +void NetworkHandlingStarterPrivate::RemoveNote() +{ + DPRINT << ": IN"; + + if (m_note) { + m_note->close(); + delete m_note; + m_note = NULL; + } + + DPRINT << ": OUT"; +} + +/*! + NetworkHandlingStarterPrivate::LaunchCpNetworkPluginView() + */ +void NetworkHandlingStarterPrivate::LaunchCpNetworkPluginView() +{ + DPRINT << ": IN"; + + XQApplicationManager appManager; + QList args; + QString service; + QString interface; + QString operation; + QVariantHash hash; + QVariantMap map; + + interface = "com.nokia.symbian.ICpPluginLauncher"; + operation = "launchSettingView(QString,QVariant)"; + args << QVariant("cpnetworkplugin.dll"); + hash["command"] = "searchAvailableNetworks"; + args << hash; + + QScopedPointer request( service.isEmpty() ? + appManager.create(interface, operation, false): + appManager.create(service, interface, operation, false)); + if (request){ + request->setArguments(args); + request->send(); + } + + DPRINT << ": OUT"; +} + +// End of File.