activityfw/testapplications/nftapps/lptapp/viewmanager.cpp
author Jaakko Haukipuro (Nokia-MS/Oulu) <Jaakko.Haukipuro@nokia.com>
Thu, 16 Sep 2010 12:11:40 +0100
changeset 117 c63ee96dbe5f
permissions -rw-r--r--
Missing activityfw and taskswitcher components - fix for Bug 3670

/*
* Copyright (c) 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 <qservicemanager.h>
#include <HbInstance>
#include <QEventLoop>
#include <QStringList>
#include <QCoreApplication>
#include <hbapplication.h>
#include "viewmanager.h"
#include "savedelwidget.h"
#include "datawidget.h"
#include "thumbwidget.h"
#include "afstorageglobals.h"
#include <QFile>
#include <QTextStream>

QTM_USE_NAMESPACE

viewmanager::viewmanager():
    HbMainWindow()
{
    QServiceManager serviceManager;
    mActivityStorage = serviceManager.loadInterface("com.nokia.qt.activities.Storage");
    if (!mActivityStorage) {
        qFatal("load Storage plugin failed");
    }

    mActivityManager = serviceManager.loadInterface("com.nokia.qt.activities.ActivityManager");
    if (!mActivityManager) {
        qFatal("load Manger plugin failed");
    }    
    
    mFile = new QFile("c:\\data\\lpt.txt");    
    mFile->open(QIODevice::Append | QIODevice::Text);
    mStream = new QTextStream(mFile);    
    mSaveDelWidget = new savedelwidget(mActivityStorage, mActivityManager, mStream);
    mSaveDelView = addView(mSaveDelWidget);
    mSaveDelView->setTitle("SaveDel");
    mDataWidget = new datawidget(mActivityStorage, mActivityManager, mStream);
    mDataView = addView(mDataWidget);
    mDataView->setTitle("Data");
    mThumbWidget = new thumbwidget(mActivityStorage, mActivityManager, mStream);
    mThumbView = addView(mThumbWidget);
    mThumbView->setTitle("Thumb");
    setCurrentView(mSaveDelView);
    
    connect(mSaveDelWidget, SIGNAL(viewChangedRequest()), this, SLOT(toData()));
    connect(mDataWidget, SIGNAL(viewChangedRequest()), this, SLOT(toThumb()));
    connect(mThumbWidget, SIGNAL(viewChangedRequest()), this, SLOT(toSaveDel()));
}

viewmanager::~viewmanager()
{
    delete mActivityStorage;
    delete mActivityManager;
    delete mFile;
    delete mStream;
}

void viewmanager::toSaveDel()
{    
    setCurrentView(mSaveDelView);
}

void viewmanager::toData()
{    
    setCurrentView(mDataView);
}

void viewmanager::toThumb()
{
    setCurrentView(mThumbView);
}