diff -r 000000000000 -r c6b0df440bee dbgsrv/coredumpserver/ui/coredumpui/src/coredumpuiappui.cpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/dbgsrv/coredumpserver/ui/coredumpui/src/coredumpuiappui.cpp Tue Mar 02 10:33:16 2010 +0530 @@ -0,0 +1,143 @@ +// Copyright (c) 2007-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 "coredumpui.h" +#include +#include "coredumpuinotifier.h" + +#include "coredumpcdsdialog.h" +#include "coredumpscmdialog.h" + +void CResourceAppUi::ConstructL() +{ + BaseConstructL(); + iListBoxView = CResourceView::NewL(ClientRect(), this); + iCrashNotifier = CCrashNotifier::NewL(*iListBoxView); + //construct a default view + HandleCommandL(EResourceMenu1Item0); +} + +CResourceAppUi::~CResourceAppUi() +{ + delete iCrashNotifier; + delete iListBoxView; +} + +void CResourceAppUi::HandleCommandL(TInt aCommand) +{ + LOG_MSG("->[UI]CResourceAppUi::HandleCommandL(TInt aCommand)"); + // Increase this threads priority for a proper snapshot + RThread thisThread; + thisThread.SetPriority(EPriorityAbsoluteHigh); + thisThread.Close(); + + TObjectsViewed objectViewed = EObjectNone; + + switch (aCommand) + { + // Menu 1 + case EResourceMenu1Item0: + { + objectViewed = EObjectProcess; + break; + } + case EResourceMenu1Item1: + { + objectViewed = EObjectThread; + break; + } + case EResourceMenu1Item2: + { + objectViewed = EObjectPlugin; + break; + } + case EResourceMenu1Executables: + { + objectViewed = EObjectExecutable; + break; + } + case EResourceMenu1PluginInstances: + { + objectViewed = EObjectPluginInstance; + break; + } + // Menu 2 + case EResMenu2ConfCDS: + { + SetCDSL(); + break; + } + case EResMenu2ConfSCM: + { + SetSCM(); + break; + } + case EResMenu2CancelCrash: + { + CancelCrashL(); + break; + } + + //Flash Menu + case EResMenu3ListCrashes: + { + objectViewed = EObjectCrashList; + break; + } + case EEikCmdExit: // necessary for uninstalling + { + Exit(); + break; + } + default: + { + break; + } + } + + // Set view data + if (objectViewed != EObjectNone) + { + iListBoxView->SetCurrentObjects(objectViewed); + iListBoxView->UpdateViewL(); + } + + // ResetPriority + RThread thisThread2; + thisThread2.SetPriority(EPriorityNormal); + thisThread2.Close(); + +} + +void CResourceAppUi::CancelCrashL() + { + LOG_MSG("->CResourceAppUI::CancelCrashL()"); + User::LeaveIfError(RProperty::Set(KCoreDumpServUid, ECancelCrash, ETrue)); + } + +void CResourceAppUi::SetCDSL() + { + CConfigureCDSDialog* dialog = new(ELeave) CConfigureCDSDialog(iListBoxView->CoreDumpInterface()); + dialog->ExecuteLD(R_CONFIGURE_CDS_DIALOG); + } + + +void CResourceAppUi::SetSCM() + { + CConfigureSCMDialog* dialog = new (ELeave) CConfigureSCMDialog(iListBoxView->CoreDumpInterface()); + dialog->ExecuteLD(R_CONFIGURE_SCM_DIALOG); + } +