camerauis/cameraxui/cxui/src/main.cpp
author hgs
Fri, 24 Sep 2010 11:12:50 +0300
changeset 61 fc3ff57d09ad
parent 58 ddba9caa7f32
permissions -rw-r--r--
201037_1
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
19
d9aefe59d544 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
     1
/*
42
feebad15db8c 201027_1
hgs
parents: 41
diff changeset
     2
* Copyright (c) 2009-2010 Nokia Corporation and/or its subsidiary(-ies).
19
d9aefe59d544 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
     3
* All rights reserved.
d9aefe59d544 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
     4
* This component and the accompanying materials are made available
d9aefe59d544 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
     5
* under the terms of "Eclipse Public License v1.0"
d9aefe59d544 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
     6
* which accompanies this distribution, and is available
d9aefe59d544 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
     7
* at the URL "http://www.eclipse.org/legal/epl-v10.html".
d9aefe59d544 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
     8
*
d9aefe59d544 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
     9
* Initial Contributors:
d9aefe59d544 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    10
* Nokia Corporation - initial contribution.
d9aefe59d544 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    11
*
d9aefe59d544 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    12
* Contributors:
d9aefe59d544 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    13
*
d9aefe59d544 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    14
* Description:
d9aefe59d544 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    15
*
d9aefe59d544 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    16
*/
28
3075d9b614e6 201017_1
hgs
parents: 19
diff changeset
    17
19
d9aefe59d544 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    18
#include <QApplication>
d9aefe59d544 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    19
#include <QGraphicsProxyWidget>
28
3075d9b614e6 201017_1
hgs
parents: 19
diff changeset
    20
// needed for localization
42
feebad15db8c 201027_1
hgs
parents: 41
diff changeset
    21
#include <QLocale>
40
hgs
parents: 39
diff changeset
    22
#include <HbTranslator>
19
d9aefe59d544 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    23
#include <hbmainwindow.h>
58
hgs
parents: 52
diff changeset
    24
#include <afactivation.h>
19
d9aefe59d544 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    25
42
feebad15db8c 201027_1
hgs
parents: 41
diff changeset
    26
#ifdef Q_OS_SYMBIAN
feebad15db8c 201027_1
hgs
parents: 41
diff changeset
    27
#include <coemain.h>
feebad15db8c 201027_1
hgs
parents: 41
diff changeset
    28
#include <eikenv.h>
58
hgs
parents: 52
diff changeset
    29
#include <XQSettingsManager>
42
feebad15db8c 201027_1
hgs
parents: 41
diff changeset
    30
#endif // Q_OS_SYMBIAN
feebad15db8c 201027_1
hgs
parents: 41
diff changeset
    31
19
d9aefe59d544 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    32
#include "cxeengine.h"
d9aefe59d544 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    33
#include "cxecameradevicecontrol.h"
28
3075d9b614e6 201017_1
hgs
parents: 19
diff changeset
    34
#include "cxuiapplication.h"
19
d9aefe59d544 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    35
#include "cxuiviewmanager.h"
41
hgs
parents: 40
diff changeset
    36
#include "cxuiapplicationstate.h"
42
feebad15db8c 201027_1
hgs
parents: 41
diff changeset
    37
#include "cxuienums.h"
19
d9aefe59d544 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    38
#include "cxutils.h"
28
3075d9b614e6 201017_1
hgs
parents: 19
diff changeset
    39
#include "cxuiserviceprovider.h"
58
hgs
parents: 52
diff changeset
    40
#include "cxuidisplaypropertyhandler.h"
28
3075d9b614e6 201017_1
hgs
parents: 19
diff changeset
    41
42
feebad15db8c 201027_1
hgs
parents: 41
diff changeset
    42
#ifdef Q_OS_SYMBIAN
19
d9aefe59d544 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    43
#include "OstTraceDefinitions.h"
d9aefe59d544 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    44
#ifdef OST_TRACE_COMPILER_IN_USE
d9aefe59d544 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    45
#include "mainTraces.h"
42
feebad15db8c 201027_1
hgs
parents: 41
diff changeset
    46
#endif // OST_TRACE_COMPILER_IN_USE
feebad15db8c 201027_1
hgs
parents: 41
diff changeset
    47
#endif // Q_OS_SYMBIAN
19
d9aefe59d544 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    48
28
3075d9b614e6 201017_1
hgs
parents: 19
diff changeset
    49
using namespace Cxe;
19
d9aefe59d544 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    50
28
3075d9b614e6 201017_1
hgs
parents: 19
diff changeset
    51
// CONSTANTS
40
hgs
parents: 39
diff changeset
    52
const QString TRANSLATIONS_PATH = "/resource/qt/translations/";
hgs
parents: 39
diff changeset
    53
const QString TRANSLATIONS_FILE = "camera";
19
d9aefe59d544 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    54
61
fc3ff57d09ad 201037_1
hgs
parents: 58
diff changeset
    55
const long int CAMERAX_USE_RASTER_PS_UID = 0x2726beef;
fc3ff57d09ad 201037_1
hgs
parents: 58
diff changeset
    56
const unsigned long int CAMERAX_USE_RASTER_PS_KEY = 0;
58
hgs
parents: 52
diff changeset
    57
19
d9aefe59d544 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    58
int main(int argc, char *argv[])
d9aefe59d544 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    59
{
d9aefe59d544 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    60
    CX_DEBUG(("CxUI: entering main()"));
d9aefe59d544 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    61
    OstTrace0( camerax_performance, _MAIN, "msg: e_CX_STARTUP 1" );
d9aefe59d544 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    62
d9aefe59d544 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    63
    Q_INIT_RESOURCE(cxui);
d9aefe59d544 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    64
58
hgs
parents: 52
diff changeset
    65
#ifdef Q_OS_SYMBIAN
hgs
parents: 52
diff changeset
    66
    XQSettingsManager settingManager;
61
fc3ff57d09ad 201037_1
hgs
parents: 58
diff changeset
    67
    XQPublishAndSubscribeSettingsKey useRasterGraphicsSystemKey(
fc3ff57d09ad 201037_1
hgs
parents: 58
diff changeset
    68
            CAMERAX_USE_RASTER_PS_UID, CAMERAX_USE_RASTER_PS_KEY);
58
hgs
parents: 52
diff changeset
    69
    QVariant useRasterGraphicsSystemValue =
hgs
parents: 52
diff changeset
    70
            settingManager.readItemValue(useRasterGraphicsSystemKey,
hgs
parents: 52
diff changeset
    71
                                         XQSettingsManager::TypeInt);
hgs
parents: 52
diff changeset
    72
hgs
parents: 52
diff changeset
    73
    if (useRasterGraphicsSystemValue.isNull()
61
fc3ff57d09ad 201037_1
hgs
parents: 58
diff changeset
    74
        || !useRasterGraphicsSystemValue.toInt()) {
58
hgs
parents: 52
diff changeset
    75
        // Either there was an error reading the value or the value was
61
fc3ff57d09ad 201037_1
hgs
parents: 58
diff changeset
    76
        // zero. Raster graphics system should be forced
58
hgs
parents: 52
diff changeset
    77
        CX_DEBUG(("CxUI: Take raster graphics system into use"));
hgs
parents: 52
diff changeset
    78
        QApplication::setGraphicsSystem("raster");
hgs
parents: 52
diff changeset
    79
    }
hgs
parents: 52
diff changeset
    80
#endif
39
c5025ea871a1 201021_1
hgs
parents: 28
diff changeset
    81
28
3075d9b614e6 201017_1
hgs
parents: 19
diff changeset
    82
    OstTrace0( camerax_performance, DUP1__MAIN, "msg: e_CX_HBAPP_CREATION 1" );
3075d9b614e6 201017_1
hgs
parents: 19
diff changeset
    83
    CxuiApplication app(argc, argv);
3075d9b614e6 201017_1
hgs
parents: 19
diff changeset
    84
    OstTrace0( camerax_performance, DUP2__MAIN, "msg: e_CX_HBAPP_CREATION 0" );
19
d9aefe59d544 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    85
d9aefe59d544 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    86
    // Creating and initializing engine as early as possible.
d9aefe59d544 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    87
    // Reserve and power on can then proceed in parallel with
d9aefe59d544 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    88
    // ui construction.
28
3075d9b614e6 201017_1
hgs
parents: 19
diff changeset
    89
    OstTrace0( camerax_performance, DUP7__MAIN, "msg: e_CX_CREATE_ENGINE 1" );
42
feebad15db8c 201027_1
hgs
parents: 41
diff changeset
    90
    CxeEngine *engine = CxeEngine::createEngine();
28
3075d9b614e6 201017_1
hgs
parents: 19
diff changeset
    91
    OstTrace0( camerax_performance, DUP8__MAIN, "msg: e_CX_CREATE_ENGINE 0" );
19
d9aefe59d544 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    92
58
hgs
parents: 52
diff changeset
    93
    AfActivation activation;
61
fc3ff57d09ad 201037_1
hgs
parents: 58
diff changeset
    94
    if (activation.reason() == Af::ActivationReasonService) {
46
hgs
parents: 42
diff changeset
    95
        CX_DEBUG(("CxUI: Camera started as service"));
19
d9aefe59d544 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    96
        // Embedded mode.  Engine is inited to correct mode
d9aefe59d544 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    97
        // by service provider when request arrives
d9aefe59d544 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    98
        CX_DEBUG(("CxUI: creating serviceprovider"));
42
feebad15db8c 201027_1
hgs
parents: 41
diff changeset
    99
        CxuiServiceProvider::create(engine);
19
d9aefe59d544 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   100
        CX_DEBUG(("CxUI: done"));
61
fc3ff57d09ad 201037_1
hgs
parents: 58
diff changeset
   101
    } else if (activation.reason() == Af::ActivationReasonActivity) {
46
hgs
parents: 42
diff changeset
   102
        CX_DEBUG(("CxUI: Camera started as activity"));
42
feebad15db8c 201027_1
hgs
parents: 41
diff changeset
   103
        Cxe::CameraMode mode = Cxe::ImageMode;
58
hgs
parents: 52
diff changeset
   104
        QString activityId = activation.name();
42
feebad15db8c 201027_1
hgs
parents: 41
diff changeset
   105
        if (activityId == CxuiActivityIds::VIDEO_PRECAPTURE_ACTIVITY ||
feebad15db8c 201027_1
hgs
parents: 41
diff changeset
   106
            activityId == CxuiActivityIds::VIDEO_POSTCAPTURE_ACTIVITY) {
feebad15db8c 201027_1
hgs
parents: 41
diff changeset
   107
            mode = Cxe::VideoMode;
feebad15db8c 201027_1
hgs
parents: 41
diff changeset
   108
        }
feebad15db8c 201027_1
hgs
parents: 41
diff changeset
   109
feebad15db8c 201027_1
hgs
parents: 41
diff changeset
   110
        if (activityId == CxuiActivityIds::STILL_PRECAPTURE_ACTIVITY ||
feebad15db8c 201027_1
hgs
parents: 41
diff changeset
   111
            activityId == CxuiActivityIds::VIDEO_PRECAPTURE_ACTIVITY) {
feebad15db8c 201027_1
hgs
parents: 41
diff changeset
   112
            // init engine only if going to pre-capture
feebad15db8c 201027_1
hgs
parents: 41
diff changeset
   113
            engine->initMode(mode);
feebad15db8c 201027_1
hgs
parents: 41
diff changeset
   114
        } else {
feebad15db8c 201027_1
hgs
parents: 41
diff changeset
   115
            // in post-capture don't init but set the correct mode to engine
feebad15db8c 201027_1
hgs
parents: 41
diff changeset
   116
            // so init can be done later
feebad15db8c 201027_1
hgs
parents: 41
diff changeset
   117
            engine->setMode(mode);
feebad15db8c 201027_1
hgs
parents: 41
diff changeset
   118
        }
52
hgs
parents: 46
diff changeset
   119
    } else {
46
hgs
parents: 42
diff changeset
   120
        CX_DEBUG(("CxUI: Camera started as normal app"));
52
hgs
parents: 46
diff changeset
   121
        // normal start
hgs
parents: 46
diff changeset
   122
        engine->initMode(engine->mode());
hgs
parents: 46
diff changeset
   123
    }
19
d9aefe59d544 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   124
40
hgs
parents: 39
diff changeset
   125
    // Load language specific application localization file, e.g. "camera_en.qm"
42
feebad15db8c 201027_1
hgs
parents: 41
diff changeset
   126
    // Translations need to be loaded before any widgets are created.
40
hgs
parents: 39
diff changeset
   127
    CX_DEBUG(("CxUI: Load translations.."));
28
3075d9b614e6 201017_1
hgs
parents: 19
diff changeset
   128
    OstTrace0( camerax_performance, DUP3__MAIN, "msg: e_CX_LOAD_TRANSLATIONS 1" );
42
feebad15db8c 201027_1
hgs
parents: 41
diff changeset
   129
    HbTranslator translator(TRANSLATIONS_PATH, TRANSLATIONS_FILE);
40
hgs
parents: 39
diff changeset
   130
    // Load language specific common localization file
42
feebad15db8c 201027_1
hgs
parents: 41
diff changeset
   131
    translator.loadCommon();
28
3075d9b614e6 201017_1
hgs
parents: 19
diff changeset
   132
    OstTrace0( camerax_performance, DUP4__MAIN, "msg: e_CX_LOAD_TRANSLATIONS 0" );
40
hgs
parents: 39
diff changeset
   133
    CX_DEBUG(("CxUI: ..translations loaded"));
19
d9aefe59d544 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   134
42
feebad15db8c 201027_1
hgs
parents: 41
diff changeset
   135
    // Create main window
28
3075d9b614e6 201017_1
hgs
parents: 19
diff changeset
   136
    OstTrace0( camerax_performance, DUP5__MAIN, "msg: e_CX_MAINWINDOW_CREATION 1" );
58
hgs
parents: 52
diff changeset
   137
    HbMainWindow *mainWindow = new HbMainWindow(0, Hb::WindowFlagTransparent | Hb::WindowFlagNoBackground);
hgs
parents: 52
diff changeset
   138
    mainWindow->setAttribute(Qt::WA_NoBackground);
28
3075d9b614e6 201017_1
hgs
parents: 19
diff changeset
   139
    OstTrace0( camerax_performance, DUP6__MAIN, "msg: e_CX_MAINWINDOW_CREATION 0" );
3075d9b614e6 201017_1
hgs
parents: 19
diff changeset
   140
42
feebad15db8c 201027_1
hgs
parents: 41
diff changeset
   141
    // Set main window to landscape and full screen
28
3075d9b614e6 201017_1
hgs
parents: 19
diff changeset
   142
    OstTrace0( camerax_performance, DUP13__MAIN, "msg: e_CX_MAINWINDOW_SETORIENTATION 1" );
58
hgs
parents: 52
diff changeset
   143
    mainWindow->setOrientation(Qt::Horizontal);
28
3075d9b614e6 201017_1
hgs
parents: 19
diff changeset
   144
    OstTrace0( camerax_performance, DUP14__MAIN, "msg: e_CX_MAINWINDOW_SETORIENTATION 0" );
42
feebad15db8c 201027_1
hgs
parents: 41
diff changeset
   145
    OstTrace0( camerax_performance, DUP15__MAIN, "msg: e_CX_MAINWINDOW_FULLSCREEN 1" );
28
3075d9b614e6 201017_1
hgs
parents: 19
diff changeset
   146
42
feebad15db8c 201027_1
hgs
parents: 41
diff changeset
   147
#ifdef Q_OS_SYMBIAN
58
hgs
parents: 52
diff changeset
   148
    mainWindow->showFullScreen();
42
feebad15db8c 201027_1
hgs
parents: 41
diff changeset
   149
#else
feebad15db8c 201027_1
hgs
parents: 41
diff changeset
   150
    /*
feebad15db8c 201027_1
hgs
parents: 41
diff changeset
   151
     * todo : check if this is an Orbit bug or if there's a better solution
feebad15db8c 201027_1
hgs
parents: 41
diff changeset
   152
    */
58
hgs
parents: 52
diff changeset
   153
    mainWindow->resize(640, 360);
hgs
parents: 52
diff changeset
   154
    mainWindow->setOrientation(Qt::Vertical, false);
hgs
parents: 52
diff changeset
   155
    mainWindow->show();
hgs
parents: 52
diff changeset
   156
    mainWindow->setOrientation(Qt::Horizontal, false);
42
feebad15db8c 201027_1
hgs
parents: 41
diff changeset
   157
#endif //Q_OS_SYMBIAN
28
3075d9b614e6 201017_1
hgs
parents: 19
diff changeset
   158
    OstTrace0( camerax_performance, DUP16__MAIN, "msg: e_CX_MAINWINDOW_FULLSCREEN 0" );
19
d9aefe59d544 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   159
42
feebad15db8c 201027_1
hgs
parents: 41
diff changeset
   160
    // Create view manager
feebad15db8c 201027_1
hgs
parents: 41
diff changeset
   161
    OstTrace0( camerax_performance, DUP11__MAIN, "msg: e_CX_CREATE_VIEW_MANAGER 1" );
58
hgs
parents: 52
diff changeset
   162
    CxuiViewManager *viewManager = new CxuiViewManager(app, *mainWindow, *engine);
42
feebad15db8c 201027_1
hgs
parents: 41
diff changeset
   163
    OstTrace0( camerax_performance, DUP12__MAIN, "msg: e_CX_CREATE_VIEW_MANAGER 0" );
41
hgs
parents: 40
diff changeset
   164
42
feebad15db8c 201027_1
hgs
parents: 41
diff changeset
   165
    // Give main window id to engine for setting up viewfinder window behind it
feebad15db8c 201027_1
hgs
parents: 41
diff changeset
   166
    OstTrace0( camerax_performance, DUP17__MAIN, "msg: e_CX_PREPAREWINDOW 1" );
58
hgs
parents: 52
diff changeset
   167
    engine->viewfinderControl().setWindow(mainWindow->effectiveWinId());
42
feebad15db8c 201027_1
hgs
parents: 41
diff changeset
   168
    OstTrace0( camerax_performance, DUP18__MAIN, "msg: e_CX_PREPAREWINDOW 0" );
40
hgs
parents: 39
diff changeset
   169
58
hgs
parents: 52
diff changeset
   170
    // connect display handler to vf state changes
hgs
parents: 52
diff changeset
   171
    CxuiDisplayPropertyHandler displayHandler;
hgs
parents: 52
diff changeset
   172
    QObject::connect(&engine->viewfinderControl(), SIGNAL(stateChanged(CxeViewfinderControl::State, CxeError::Id)),
hgs
parents: 52
diff changeset
   173
                     &displayHandler, SLOT(handleVfStateChanged(CxeViewfinderControl::State, CxeError::Id)));
hgs
parents: 52
diff changeset
   174
19
d9aefe59d544 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   175
    int returnValue = app.exec();
d9aefe59d544 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   176
41
hgs
parents: 40
diff changeset
   177
    delete viewManager;
58
hgs
parents: 52
diff changeset
   178
	viewManager = NULL;
42
feebad15db8c 201027_1
hgs
parents: 41
diff changeset
   179
    CxuiServiceProvider::destroy(); // delete service provider instance
58
hgs
parents: 52
diff changeset
   180
    engine->cameraDeviceControl().release();
hgs
parents: 52
diff changeset
   181
    delete mainWindow;
hgs
parents: 52
diff changeset
   182
	mainWindow = NULL;
42
feebad15db8c 201027_1
hgs
parents: 41
diff changeset
   183
    delete engine;
58
hgs
parents: 52
diff changeset
   184
	engine = NULL;
28
3075d9b614e6 201017_1
hgs
parents: 19
diff changeset
   185
19
d9aefe59d544 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   186
    return returnValue;
d9aefe59d544 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   187
}