Kindfield
 All Classes Namespaces Files Functions Variables Enumerations Enumerator Properties Friends Pages
qtquick2applicationviewer.cpp
Go to the documentation of this file.
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 
12 
13 #include <QtCore/QCoreApplication>
14 #include <QtCore/QDir>
15 #include <QtQml/QQmlEngine>
16 
18 {
19  QString mainQmlFile;
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 
47  : QQuickView(parent)
49 {
50  connect(engine(), SIGNAL(quit()), SLOT(close()));
51  setResizeMode(QQuickView::SizeRootObjectToView);
52 }
53 
55 {
56  delete d;
57 }
58 
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 
70 {
71  engine()->addImportPath(QtQuick2ApplicationViewerPrivate::adjustPath(path));
72 }
73 
75 {
76 #if defined(Q_WS_SIMULATOR) || defined(Q_OS_QNX)
77  showFullScreen();
78 #else
79  show();
80 #endif
81 }