loadgen/ui/hb/src/mainview.cpp
branchRCL_3
changeset 46 fad26422216a
parent 45 b3cee849fa46
child 49 f8280f3bfeb7
--- a/loadgen/ui/hb/src/mainview.cpp	Tue Aug 31 15:15:20 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,399 +0,0 @@
-/*
-* 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: 
-*
-*/
-
-#include "mainview.h"
-#include "enginewrapper.h"
-#include "notifications.h"
-#include "loadgen.hrh"
-#include <hblabel.h>
-#include <hbmenu.h>
-#include <hbaction.h>
-#include <hbmessagebox.h>
-#include <hbmainwindow.h>
-#include <hbapplication.h>
-//#include <hbcommonnote.h>
-//#include <hbconfirmationquery.h>
-#include <hbprogressdialog.h>
-#include <hbtextedit.h>
-#include <hblistview.h>
-#include <hbselectiondialog.h>
-
-#include <QGraphicsLinearLayout>
-#include <QStandardItemModel>
-#include <QStandardItem>
-#include <QSignalMapper>
-
-// ---------------------------------------------------------------------------
-
-MainView::MainView(HbMainWindow &mainWindow) :
-					  mMainWindow(mainWindow),
-					  mEngineWrapper(0),
-					  mIsLoadListEmpty(true),
-					  mStopAll(NULL),
-					  mSuspendAll(NULL),
-					  mResumeAll(NULL)
-					  
-{
-}
-
-// ---------------------------------------------------------------------------
-
-MainView::~MainView()
-{
-    if (mEngineWrapper != 0) {
-        delete mEngineWrapper;
-    }
-    delete mListModel;    
-    delete mListView;
-	delete mSm;	
-}
-
-// ---------------------------------------------------------------------------
-
-void MainView::init(HbApplication &app)
-{
-	this->setTitle("Load Gener.");
-    mEngineWrapper = new EngineWrapper(mMainWindow, *this);
-    int error = mEngineWrapper->init();
-    Q_ASSERT_X(error == 1, "LoadGen", "Engine initialization failed");
-    createMenu(app);
-	loadListIinit();
-}
-
-// ---------------------------------------------------------------------------
-
-void MainView::createMenu(HbApplication &app)
-{
-    HbMenu *menu = this->menu();
-	
-    // signal mapper for identifying the different command actions  
-	// in executeCommand() handler function:
-    mSm = new QSignalMapper(this);
-    connect(mSm, SIGNAL(mapped(int)), this, SLOT(executeMenuCommand(int)));
-
-    if (menu != NULL) {
-		// Temp work-around for menu item bug in Orbit Wk38,
-		// sub menu cannot contain more than 6 functional action items!
-		// two sub menus created to fix this problem.
-		mLoadSubMenu1 = menu->addMenu("New loads");
-		mLoadSubMenu2 = menu->addMenu("More new loads");
-		mCpuLoadAction = mLoadSubMenu1->addAction("CPU load");
-		connect(mCpuLoadAction, SIGNAL( triggered() ), mSm, SLOT(map()));
-		mSm->setMapping(mCpuLoadAction, ELoadGenCmdNewLoadCPULoad);
-
-		mMemoryEatLoadAction = mLoadSubMenu1->addAction("Eat memory");
-		connect(mMemoryEatLoadAction, SIGNAL( triggered() ), mSm, SLOT(map()));
-		mSm->setMapping(mMemoryEatLoadAction, ELoadGenCmdNewLoadEatMemory);
-
-		mPhoneCallLoadAction = mLoadSubMenu1->addAction("Phone calls");
-		connect(mPhoneCallLoadAction, SIGNAL( triggered() ), mSm, SLOT(map()));
-		mSm->setMapping(mPhoneCallLoadAction, ELoadGenCmdNewLoadPhoneCall);
-
-		mMessagesLoadAction = mLoadSubMenu1->addAction("Messages");
-		connect(mMessagesLoadAction, SIGNAL( triggered() ), mSm, SLOT(map()));
-		mSm->setMapping(mMessagesLoadAction, ELoadGenCmdNewLoadMessages);
-//TODO to be fixed using replacement for downloadmanager
-/*
-		mNetConnLoadAction = mLoadSubMenu1->addAction("Network conn.");
-		connect(mNetConnLoadAction, SIGNAL( triggered() ), mSm, SLOT(map()));
-		mSm->setMapping(mNetConnLoadAction, ELoadGenCmdNewLoadNetConn);
-*/	
-		mKeyPressLoadAction = mLoadSubMenu2->addAction("Key presses");
-		connect(mKeyPressLoadAction, SIGNAL( triggered() ), mSm, SLOT(map()));
-		mSm->setMapping(mKeyPressLoadAction, ELoadGenCmdNewLoadKeyPress);
-
-		mAppsLoadAction = mLoadSubMenu2->addAction("Applications");
-		connect(mAppsLoadAction, SIGNAL( triggered() ), mSm, SLOT(map()));
-		mSm->setMapping(mAppsLoadAction, ELoadGenCmdNewLoadApplications);
-		
-		mPhotoCapturesLoadAction = mLoadSubMenu2->addAction("Photo captures");
-		connect(mPhotoCapturesLoadAction, SIGNAL( triggered() ), mSm, SLOT(map()));
-		mSm->setMapping(mPhotoCapturesLoadAction, ELoadGenCmdNewLoadPhotoCaptures);
-
-		mBtActionsLoadAction = mLoadSubMenu2->addAction("Bluetooth actions");
-		connect(mBtActionsLoadAction, SIGNAL( triggered() ), mSm, SLOT(map()));
-		mSm->setMapping(mBtActionsLoadAction, ELoadGenCmdNewLoadBluetooth);
-
-		mPointerEventsLoadAction = mLoadSubMenu2->addAction("Pointer events");
-		connect(mPointerEventsLoadAction, SIGNAL( triggered() ), mSm, SLOT(map()));
-		mSm->setMapping(mPointerEventsLoadAction, ELoadGenCmdNewLoadPointerEvent);
-		
-		mActionPerfMon = menu->addAction("Launch PerfMon");
-		connect(mActionPerfMon, SIGNAL(triggered()), this, SLOT( launchPerfMon()));
-		
-		mActionAbout = menu->addAction("About");
-		connect(mActionAbout, SIGNAL(triggered()), this, SLOT( showAboutPopup()));
-
-		mActionExit = menu->addAction("Exit");
-		connect(mActionExit, SIGNAL(triggered()), &app, SLOT(quit()));
-
-		// menu dynamic update
-		connect(menu, SIGNAL(aboutToShow()), this, SLOT(updateMenu()));        		
-	}
-}
-
-// ---------------------------------------------------------------------------
-
-void MainView::loadListIinit()
-{
-    // Create list view and model for it
-    mListView = new HbListView(this);
-	mListModel = new QStandardItemModel(this);
-	mListView->setModel(mListModel); 
-	mListView->setSelectionMode(HbListView::NoSelection);
-	mListView->setVisible( false ); //HighlightMode(HbItemHighlight::Hidden);
-
-	QStandardItem *item = new QStandardItem(QString("No loads activated. (Select new load from menu to generate new load)"));
-    mListModel->setItem(0, item);
-
-    connect(mListView, 
-			SIGNAL(longPressed(HbAbstractViewItem*, QPointF)), 
-			this, 
-			SLOT(handleLoadListEvent(HbAbstractViewItem*, QPointF)));	
-
-	
-    // Create layout and add list view there:
-    QGraphicsLinearLayout *mainlayout = new QGraphicsLinearLayout(Qt::Vertical, this);
-    mainlayout->addItem(mListView);
-	mainlayout->setAlignment(mListView, Qt::AlignCenter);
-    setLayout(mainlayout);
-}
-
-// ---------------------------------------------------------------------------
-
-void MainView::showAboutPopup()
-{
-    Notifications::about();
-}
-
-// ---------------------------------------------------------------------------
-
-void MainView::executeMenuCommand(int cmd)
-{
-	mEngineWrapper->startNewLoad(cmd);
-}
-
-// ---------------------------------------------------------------------------
-
-void MainView::handleLoadListEvent(HbAbstractViewItem */*listViewItem*/, const QPointF &/*coords*/)
-{
-    const QStringList items = (QStringList() << "Stop" << "Resume/Suspend" << "Edit");
-    HbSelectionDialog *dlg = new HbSelectionDialog();
-    dlg->setAttribute(Qt::WA_DeleteOnClose);
-    dlg->setStringItems(items);
-    dlg->setSelectionMode(HbAbstractItemView::SingleSelection);
-    dlg->open(this, SLOT(ItemActionPopupClosed(HbAction*)));
-}
-
-// ---------------------------------------------------------------------------
-
-void MainView::ItemActionPopupClosed(HbAction* action)
-{
-    HbSelectionDialog *dlg = static_cast<HbSelectionDialog*>(sender());
-    if(!action && dlg->selectedItems().count()){
-        int userSelectionIndex = dlg->selectedItems().at(0).toInt();   
-        // all operations for selected list item only. Query selected load list item index from model.
-        if (userSelectionIndex == 0) {
-            // stop selected load from the load list:
-            stopLoad(false);
-        }
-        else if (userSelectionIndex == 1) {
-            // Suspend or Resume
-            mEngineWrapper->suspendOrResumeSelectedOrHighlightedItems();
-        }
-        else {
-            // current selected row number from the load list. 
-            int selectedRow = mListView->selectionModel()->currentIndex().row();
-            // edit load setttings:
-            mEngineWrapper->loadEdit(selectedRow);
-        }
-    }
-}
-
-// --------------------------------------------------------------------------
-
-void MainView::stopAllLoads()
-{
-	stopLoad(true);
-}
-
-// ---------------------------------------------------------------------------
-
-bool MainView::stopLoad(bool stopAll)
-{
-	int success = false;
-	if (mListView != NULL) {
-		if (stopAll == true) {
-			success = mEngineWrapper->stopLoad(stopAll);
-			mIsLoadListEmpty = true;
-		}
-		else {
-			success = mEngineWrapper->stopLoad(stopAll);
-		}
-	}
-	return success;
-}
-
-// ---------------------------------------------------------------------------
-
-void MainView::updateMenu()
-{
-	if (mIsLoadListEmpty != true) {
-		if (mStopAll == NULL) {
-			mStopAll = new HbAction("Stop all", menu());
-			connect(mStopAll, SIGNAL(triggered()), this, SLOT(stopAllLoads()));
-			menu()->insertAction(mActionAbout, mStopAll);
-		}
-		else{
-            mStopAll->setVisible(true);
-		}
-		if (mSuspendAll == NULL) {
-			mSuspendAll = new HbAction("Suspend all", menu());
-			connect(mSuspendAll, SIGNAL(triggered()), this, SLOT(suspendAllLoads()));
-			menu()->insertAction(mActionAbout, mSuspendAll);
-		}
-		else{
-            mSuspendAll->setVisible(true);
-        }
-		if (mResumeAll == NULL) {
-			mResumeAll = new HbAction("Resume all", menu());
-			connect(mResumeAll, SIGNAL(triggered()), this, SLOT(resumeAllLoads()));
-			menu()->insertAction(mActionAbout, mResumeAll);
-		}
-		else{
-            mResumeAll->setVisible(true);
-        }
-	}
-	else if (mIsLoadListEmpty == true) {
-		if (mStopAll != NULL && mStopAll->text() == "Stop all") {
-            mStopAll->setVisible(false);
-		}
-		if (mSuspendAll != NULL && mSuspendAll->text() == "Suspend all") {
-            mSuspendAll->setVisible(false);
-		}
-		if (mResumeAll != NULL && mResumeAll->text() == "Resume all") {
-            mSuspendAll->setVisible(false);
-		}		
-	}
-}
-
-
-// ---------------------------------------------------------------------------
-
-int MainView::currentItemIndex()
-{
-	return mListView->selectionModel()->currentIndex().row();
-}
-
-// ---------------------------------------------------------------------------
-
-void MainView::setCurrentItemIndex(int index) 
-{
-    QModelIndex newIndex = mListView->model()->index(index, 0);
-    mListView->selectionModel()->setCurrentIndex(newIndex, 
-                                                QItemSelectionModel::SelectCurrent);
-	//mListView->setCurrentIndex( index ); //setCurrentRow(index);
-}	
-
-// ---------------------------------------------------------------------------
-
-void MainView::launchPerfMon()
-{
-	mEngineWrapper->launchPerfMonApp();
-}
-
-// ---------------------------------------------------------------------------
-
-QList<int> MainView::listSelectionIndexes()
-    {
-	QList<int> indices;
-    if (mListView != NULL) {
-		QItemSelectionModel *selectionModel = mListView->selectionModel();
-		if (selectionModel->hasSelection()) {
-			QModelIndexList modelIndexes = selectionModel->selectedIndexes();
-			QModelIndex index;
-			foreach (index, modelIndexes) {
-				indices.append(index.row());
-			}
-		}
-    }
-    return indices;
-	}
-
-// --------------------------------------------------------------------------------------------
-
-void MainView::suspendAllLoads()
-{
-	mEngineWrapper->suspendAllLoadItems();
-}
-
-// ---------------------------------------------------------------------------
-	
-void MainView::resumeAllLoads()
-{
-	mEngineWrapper->resumeAllLoadItems();
-}
-
-void MainView::clearListSelection()
-{
-    if (mListView != NULL) {
-		mListView->clearSelection();
-	}
-}
-
-// ---------------------------------------------------------------------------
-
-void MainView::setLoadListData(QStringList& items)
-{
-	QString loadItem;
-	QString iconName;
-
-	if (mListView) {
-		mListView->setSelectionMode(HbListView::MultiSelection);
-		mListView->setVisible(true); //setHighlightMode(HbItemHighlight::AlwaysVisible);
-		if(mListModel->rowCount())
-			{
-			mListModel->removeRows(0,mListModel->rowCount());
-			}
-//		mListModel->clear();
-	}
-	if (items.count() > 0) {
-		mIsLoadListEmpty = false;
-	}
-	else if (items.count() == 0) {
-		mIsLoadListEmpty = true;
-	}
-	for (int i = 0; i < items.count(); i++) {
-		QStandardItem *item = new QStandardItem();
-		loadItem = items.at(i);
-		if (loadItem.startsWith("1")) {
-			iconName = ":/paused.svg";
-		}
-		else {
-			iconName = ":/active.svg";
-		}
-		// remove icon indicator info from string
-		// to show in load in load list
-		loadItem.remove(0,2); 
-		item->setText(loadItem);
-		item->setIcon(QIcon(iconName));
-		// set new load to correct row in load list
-		mListModel->insertRow(i, item);
-	}
-}	
-
-// ---------------------------------------------------------------------------