applicationmanagement/server/src/main.cpp
author hgs
Fri, 17 Sep 2010 19:58:05 +0530
changeset 62 03849bd79877
parent 47 d316aecb87fd
permissions -rw-r--r--
201037
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
47
d316aecb87fd 201025_02
hgs
parents:
diff changeset
     1
/*
d316aecb87fd 201025_02
hgs
parents:
diff changeset
     2
 * Copyright (c) 2000 Nokia Corporation and/or its subsidiary(-ies). 
d316aecb87fd 201025_02
hgs
parents:
diff changeset
     3
 * All rights reserved.
d316aecb87fd 201025_02
hgs
parents:
diff changeset
     4
 * This component and the accompanying materials are made available
d316aecb87fd 201025_02
hgs
parents:
diff changeset
     5
 * under the terms of "Eclipse Public License v1.0"
d316aecb87fd 201025_02
hgs
parents:
diff changeset
     6
 * which accompanies this distribution, and is available
d316aecb87fd 201025_02
hgs
parents:
diff changeset
     7
 * at the URL "http://www.eclipse.org/legal/epl-v10.html".
d316aecb87fd 201025_02
hgs
parents:
diff changeset
     8
 *
d316aecb87fd 201025_02
hgs
parents:
diff changeset
     9
 * Initial Contributors:
d316aecb87fd 201025_02
hgs
parents:
diff changeset
    10
 * Nokia Corporation - initial contribution.
d316aecb87fd 201025_02
hgs
parents:
diff changeset
    11
 *
d316aecb87fd 201025_02
hgs
parents:
diff changeset
    12
 * Contributors:
d316aecb87fd 201025_02
hgs
parents:
diff changeset
    13
 *
d316aecb87fd 201025_02
hgs
parents:
diff changeset
    14
 * Description: Implementation of applicationmanagement components
d316aecb87fd 201025_02
hgs
parents:
diff changeset
    15
 *
d316aecb87fd 201025_02
hgs
parents:
diff changeset
    16
 */
d316aecb87fd 201025_02
hgs
parents:
diff changeset
    17
d316aecb87fd 201025_02
hgs
parents:
diff changeset
    18
d316aecb87fd 201025_02
hgs
parents:
diff changeset
    19
#include <hbapplication.h>
d316aecb87fd 201025_02
hgs
parents:
diff changeset
    20
#include <hbtransparentwindow.h>
d316aecb87fd 201025_02
hgs
parents:
diff changeset
    21
#include <hbstackedlayout.h>
d316aecb87fd 201025_02
hgs
parents:
diff changeset
    22
#include <hbmainwindow.h>
d316aecb87fd 201025_02
hgs
parents:
diff changeset
    23
#include <hbview.h>
d316aecb87fd 201025_02
hgs
parents:
diff changeset
    24
#include <QTranslator>
d316aecb87fd 201025_02
hgs
parents:
diff changeset
    25
#include <QLocale>
d316aecb87fd 201025_02
hgs
parents:
diff changeset
    26
#include <e32property.h>
d316aecb87fd 201025_02
hgs
parents:
diff changeset
    27
#include "ApplicationManagementCommon.h"
d316aecb87fd 201025_02
hgs
parents:
diff changeset
    28
#include "debug.h"
d316aecb87fd 201025_02
hgs
parents:
diff changeset
    29
#include "amview.h"
d316aecb87fd 201025_02
hgs
parents:
diff changeset
    30
#include "ApplicationManagementServer.h"
d316aecb87fd 201025_02
hgs
parents:
diff changeset
    31
d316aecb87fd 201025_02
hgs
parents:
diff changeset
    32
using namespace NApplicationManagement;
d316aecb87fd 201025_02
hgs
parents:
diff changeset
    33
d316aecb87fd 201025_02
hgs
parents:
diff changeset
    34
int main(int argc, char *argv[])
d316aecb87fd 201025_02
hgs
parents:
diff changeset
    35
    { 
d316aecb87fd 201025_02
hgs
parents:
diff changeset
    36
    RDEBUG( "ApplicationManagementServer: main" );
d316aecb87fd 201025_02
hgs
parents:
diff changeset
    37
d316aecb87fd 201025_02
hgs
parents:
diff changeset
    38
    HbApplication app(argc, argv);
d316aecb87fd 201025_02
hgs
parents:
diff changeset
    39
    
d316aecb87fd 201025_02
hgs
parents:
diff changeset
    40
    AMView* view = new AMView();
d316aecb87fd 201025_02
hgs
parents:
diff changeset
    41
    view->hideItems(Hb::AllItems);
d316aecb87fd 201025_02
hgs
parents:
diff changeset
    42
    view->setContentFullScreen();
d316aecb87fd 201025_02
hgs
parents:
diff changeset
    43
    //Defining transparent window
d316aecb87fd 201025_02
hgs
parents:
diff changeset
    44
    HbMainWindow mainWindow(0, Hb::WindowFlagTransparent);
d316aecb87fd 201025_02
hgs
parents:
diff changeset
    45
    HbTransparentWindow *transparentWindow = new HbTransparentWindow;
d316aecb87fd 201025_02
hgs
parents:
diff changeset
    46
    HbStackedLayout *stackedLayout = new HbStackedLayout;
d316aecb87fd 201025_02
hgs
parents:
diff changeset
    47
    stackedLayout->addItem(transparentWindow);
d316aecb87fd 201025_02
hgs
parents:
diff changeset
    48
    view->setLayout(stackedLayout);
d316aecb87fd 201025_02
hgs
parents:
diff changeset
    49
d316aecb87fd 201025_02
hgs
parents:
diff changeset
    50
    mainWindow.addView(view);
d316aecb87fd 201025_02
hgs
parents:
diff changeset
    51
    mainWindow.setCurrentView(view);
d316aecb87fd 201025_02
hgs
parents:
diff changeset
    52
      
d316aecb87fd 201025_02
hgs
parents:
diff changeset
    53
    app.installEventFilter(view);
d316aecb87fd 201025_02
hgs
parents:
diff changeset
    54
d316aecb87fd 201025_02
hgs
parents:
diff changeset
    55
    //Installing the translator
d316aecb87fd 201025_02
hgs
parents:
diff changeset
    56
    QTranslator *translator = new QTranslator();
d316aecb87fd 201025_02
hgs
parents:
diff changeset
    57
    QString lang = QLocale::system().name();
d316aecb87fd 201025_02
hgs
parents:
diff changeset
    58
    
d316aecb87fd 201025_02
hgs
parents:
diff changeset
    59
    bool fine = translator->load("deviceupdates_" + lang, path);/*finally required once localisation available*/
d316aecb87fd 201025_02
hgs
parents:
diff changeset
    60
    if (fine)
d316aecb87fd 201025_02
hgs
parents:
diff changeset
    61
        qApp->installTranslator(translator);
d316aecb87fd 201025_02
hgs
parents:
diff changeset
    62
    int err = KErrNone;
d316aecb87fd 201025_02
hgs
parents:
diff changeset
    63
    TRAP( err, QT_TRYCATCH_LEAVING(CApplicationManagementServer::NewL(&mainWindow)));
d316aecb87fd 201025_02
hgs
parents:
diff changeset
    64
    
d316aecb87fd 201025_02
hgs
parents:
diff changeset
    65
    RProcess::Rendezvous(KErrNone);
d316aecb87fd 201025_02
hgs
parents:
diff changeset
    66
d316aecb87fd 201025_02
hgs
parents:
diff changeset
    67
    //Pushing the server to background
d316aecb87fd 201025_02
hgs
parents:
diff changeset
    68
    mainWindow.lower();
d316aecb87fd 201025_02
hgs
parents:
diff changeset
    69
d316aecb87fd 201025_02
hgs
parents:
diff changeset
    70
    TInt serverLaunchStatus = 1;
d316aecb87fd 201025_02
hgs
parents:
diff changeset
    71
    err = RProperty::Set(KProperty, KInteger, serverLaunchStatus);
d316aecb87fd 201025_02
hgs
parents:
diff changeset
    72
    
d316aecb87fd 201025_02
hgs
parents:
diff changeset
    73
    mainWindow.show();
d316aecb87fd 201025_02
hgs
parents:
diff changeset
    74
    int err1 = app.exec();
d316aecb87fd 201025_02
hgs
parents:
diff changeset
    75
    int value = 0;
d316aecb87fd 201025_02
hgs
parents:
diff changeset
    76
    err = RProperty::Set(TUid::Uid(KOmaDMAppUid), KDownloadActive, value);
d316aecb87fd 201025_02
hgs
parents:
diff changeset
    77
    RDEBUG_2("RProperty set (%d)", err  );
d316aecb87fd 201025_02
hgs
parents:
diff changeset
    78
    return err1;
d316aecb87fd 201025_02
hgs
parents:
diff changeset
    79
    }