10402
+ − 1
// checksum 0x4f6f version 0x90005
+ − 2
/*
+ − 3
This file was generated by the Qt Quick 2 Application wizard of Qt Creator.
+ − 4
QtQuick2ApplicationViewer is a convenience class containing mobile device specific
+ − 5
code such as screen orientation handling. Also QML paths and debugging are
+ − 6
handled here.
+ − 7
It is recommended not to modify this file, since newer versions of Qt Creator
+ − 8
may offer an updated version of it.
+ − 9
*/
+ − 10
+ − 11
#include "qtquick2applicationviewer.h"
+ − 12
+ − 13
#include <QtCore/QCoreApplication>
+ − 14
#include <QtCore/QDir>
+ − 15
#include <QtQml/QQmlEngine>
+ − 16
+ − 17
class QtQuick2ApplicationViewerPrivate
+ − 18
{
+ − 19
QString mainQmlFile;
+ − 20
friend class QtQuick2ApplicationViewer;
+ − 21
static QString adjustPath(const QString &path);
+ − 22
};
+ − 23
+ − 24
QString QtQuick2ApplicationViewerPrivate::adjustPath(const QString &path)
+ − 25
{
+ − 26
#if defined(Q_OS_MAC)
+ − 27
if (!QDir::isAbsolutePath(path))
+ − 28
return QString::fromLatin1("%1/../Resources/%2")
+ − 29
.arg(QCoreApplication::applicationDirPath(), path);
+ − 30
#elif defined(Q_OS_BLACKBERRY)
+ − 31
if (!QDir::isAbsolutePath(path))
+ − 32
return QString::fromLatin1("app/native/%1").arg(path);
+ − 33
#elif !defined(Q_OS_ANDROID)
+ − 34
QString pathInInstallDir =
+ − 35
QString::fromLatin1("%1/../%2").arg(QCoreApplication::applicationDirPath(), path);
+ − 36
if (QFileInfo(pathInInstallDir).exists())
+ − 37
return pathInInstallDir;
+ − 38
pathInInstallDir =
+ − 39
QString::fromLatin1("%1/%2").arg(QCoreApplication::applicationDirPath(), path);
+ − 40
if (QFileInfo(pathInInstallDir).exists())
+ − 41
return pathInInstallDir;
+ − 42
#endif
+ − 43
return path;
+ − 44
}
+ − 45
+ − 46
QtQuick2ApplicationViewer::QtQuick2ApplicationViewer(QWindow *parent)
+ − 47
: QQuickView(parent)
+ − 48
, d(new QtQuick2ApplicationViewerPrivate())
+ − 49
{
+ − 50
connect(engine(), SIGNAL(quit()), SLOT(close()));
+ − 51
setResizeMode(QQuickView::SizeRootObjectToView);
+ − 52
}
+ − 53
+ − 54
QtQuick2ApplicationViewer::~QtQuick2ApplicationViewer()
+ − 55
{
+ − 56
delete d;
+ − 57
}
+ − 58
+ − 59
void QtQuick2ApplicationViewer::setMainQmlFile(const QString &file)
+ − 60
{
+ − 61
d->mainQmlFile = QtQuick2ApplicationViewerPrivate::adjustPath(file);
+ − 62
#ifdef Q_OS_ANDROID
+ − 63
setSource(QUrl(QLatin1String("assets:/")+d->mainQmlFile));
+ − 64
#else
+ − 65
setSource(QUrl::fromLocalFile(d->mainQmlFile));
+ − 66
#endif
+ − 67
}
+ − 68
+ − 69
void QtQuick2ApplicationViewer::addImportPath(const QString &path)
+ − 70
{
+ − 71
engine()->addImportPath(QtQuick2ApplicationViewerPrivate::adjustPath(path));
+ − 72
}
+ − 73
+ − 74
void QtQuick2ApplicationViewer::showExpanded()
+ − 75
{
+ − 76
#if defined(Q_WS_SIMULATOR) || defined(Q_OS_QNX)
+ − 77
showFullScreen();
+ − 78
#else
+ − 79
show();
+ − 80
#endif
+ − 81
}