--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/ginebra/emulator/main.cpp Tue May 04 12:39:35 2010 +0300
@@ -0,0 +1,124 @@
+/*
+* 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 <QtGui>
+#include "../chromeview.h"
+#ifndef Q_OS_SYMBIAN
+#include "chromewindow.h"
+#endif
+
+#include <QDir>
+#include <QTranslator>
+#include <QLocale>
+#include "bedrockprovisioning.h"
+#include "webpagecontroller.h"
+#include "viewstack.h"
+
+//#define HARDWARE_DEBUG_TRACE
+#ifdef HARDWARE_DEBUG_TRACE
+
+static const QString DebugLogPath("C:/Data/debug.txt");
+
+static void initDebugOutput()
+{
+ QFile file(DebugLogPath);
+ file.remove();
+}
+
+static void debugOutput(QtMsgType type, const char *msg)
+{
+ QFile file(DebugLogPath);
+
+ if (!file.open(QIODevice::WriteOnly | QIODevice::Text | QIODevice::Append))
+ return;
+
+ QTextStream out(&file);
+ out << "\nDebug: " << msg;
+
+ file.flush();
+ file.close();
+}
+#endif
+
+int main(int argc, char * argv[])
+{
+ int res = 0;
+
+#ifdef HARDWARE_DEBUG_TRACE
+ initDebugOutput();
+ qInstallMsgHandler(debugOutput);
+#endif
+
+ QApplication app(argc, argv);
+ qDebug() << "main: currentPath=" << QDir::currentPath();
+
+ QLocale language;
+ QString langCountryCode = language.name();
+ langCountryCode.replace(QString("-"), QString("_"));
+ //qDebug() << "ChromeView::loadChrome: " << langCountryCode;
+ //Todo: when platform delivers .ts file
+ //QString transFilePath = "Z:/resource/qt/translations/";
+ QString transFilePath = ":/translations";
+ QTranslator translator;
+ QString transFile = QLatin1String("browserLoc_") + langCountryCode.toLower();
+ bool installed = translator.load(transFile, transFilePath);
+ if (installed)
+ {
+ QApplication::installTranslator(&translator);
+ }
+ else if (transFile.count("_") > 1)
+ {
+ transFile = transFile.left(transFile.lastIndexOf("_"));
+ installed = translator.load(transFile, transFilePath);
+ qDebug() << "[LocaleDelegate::loadTranslator()] translation file installed:" << installed;
+ if (installed)
+ QApplication::installTranslator(&translator);
+ else
+ {
+ qDebug() << " LocaleDelegate::loadTranslator not loaded!";
+ }
+ }
+
+#if defined(Q_OS_SYMBIAN) || defined(Q_WS_MAEMO_5)
+ // Display in bare-bones widget.
+ GiWidget *gw = new GiWidget;
+ //app.setMainWindow(gw);
+
+ ChromeView *view = new ChromeView(gw);
+ gw->setChromeView(view);
+ gw->showFullScreen();
+ view->setGeometry(0, 0, gw->width(), gw->height());
+
+#else // Desktop build.
+ // Display in a top-level window with menubar and toolbar etc...
+ ChromeWindow *chrome = new ChromeWindow();
+ chrome->show();
+#endif
+ res = app.exec();
+
+#if defined(Q_OS_SYMBIAN) || defined(Q_WS_MAEMO_5)
+ delete view;
+ delete gw;
+#else
+ delete chrome;
+#endif
+
+ delete WebPageController::getSingleton();
+ delete ViewStack::getSingleton();
+
+ return res;
+}