diff -r 75a71fdb4c92 -r 7d11f9a6646f deviceupdatesui/deviceupdatesplugin/src/deviceupdatesdata.cpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/deviceupdatesui/deviceupdatesplugin/src/deviceupdatesdata.cpp Fri Apr 16 14:53:31 2010 +0300 @@ -0,0 +1,103 @@ +/* +* Copyright (c) 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: Device updates data for control panel +* +*/ + + +#include +#include +#include "deviceupdatesdata.h" + + +DeviceUpdateData::DeviceUpdateData(CpItemDataHelper &itemDataHelper, + const QString &text /*= QString()*/, + const QString &description /*= QString()*/, + const HbIcon &icon /*= HbIcon()*/, + const HbDataFormModelItem *parent /*= 0*/) + : CpSettingFormEntryItemData(itemDataHelper, + text, + description, + icon, + parent) +{ +} + +DeviceUpdateData::~DeviceUpdateData() +{ + CloseDmUi(); +} + +// ----------------------------------------------------------------------------- +// DeviceUpdateData::OpenDmAppL() +// ----------------------------------------------------------------------------- +// +void DeviceUpdateData::OpenDmAppL() + { + + // Create DM UI Process + RProcess rp; + TInt cpLaunch(1); + CRepository *cenrep = CRepository::NewL(KUidSmlSyncApp); + if(cenrep) + { + cenrep->Set( KNsmlDmUILaunch, cpLaunch); + delete cenrep; + cenrep = NULL; + } + TInt err = rp.Create(KDMUIProcess,KNullDesC); + + User::LeaveIfError(err); + + + rp.Resume(); // logon OK - start the server + + + } + +// --------------------------------------------------------------------------------------------- +// DeviceUpdateData::CloseDmUi +// closes DM Ui +// --------------------------------------------------------------------------------------------- +void DeviceUpdateData:: CloseDmUi() +{ + // Create DM UI Process + + TFullName processName; + TFindProcess process; + while ( process.Next( processName ) != KErrNotFound ) + { + if ( ( processName.Find( KDMUIName ) != KErrNotFound ) ) + { + RProcess rprocess; + if (rprocess.Open(process, EOwnerProcess) == KErrNone) + { + rprocess.Terminate(KErrNone); + rprocess.Close(); + } + } + } +} + +void DeviceUpdateData::onLaunchView() +{ + TRAP_IGNORE( OpenDmAppL() ); +} + +CpBaseSettingView *DeviceUpdateData::createSettingView() const +{ + return 0; +} + +