--- /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 <coredumpui.rsg>
+#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);
+ }
+