24 #include <QtCore/QCoreApplication>
25 #include <QtCore/QDir>
26 #include <QtGui/QIcon>
27 #include <QtQml/QQmlEngine>
28 #include <QStandardPaths>
30 inline bool isRunningInstalled() {
31 static bool installed = (QCoreApplication::applicationDirPath() ==
32 QDir((
"/usr/bin")).canonicalPath());
36 inline QString translationDirectory() {
37 if (isRunningInstalled()) {
38 return QString(
"/usr/share/locale");
40 return QString(
"/build/unity8-nMmMJp/unity8-8.11+15.10.20150907/obj-x86_64-linux-gnu/po/locale");
44 inline QString qmlDirectory() {
45 if (isRunningInstalled()) {
46 return QString(
"/usr/share/unity8/");
48 return QString(
"/build/unity8-nMmMJp/unity8-8.11+15.10.20150907/qml/");
52 inline QStringList overrideImportPaths() {
54 if (!isRunningInstalled()) {
55 paths << QString(
"/build/unity8-nMmMJp/unity8-8.11+15.10.20150907/obj-x86_64-linux-gnu/plugins");
60 inline QStringList nonMirImportPaths() {
62 if (isRunningInstalled()) {
63 paths << QString(
"/usr/lib/x86_64-linux-gnu/unity8/qml/nonmirplugins");
65 paths << QString(
"/build/unity8-nMmMJp/unity8-8.11+15.10.20150907/obj-x86_64-linux-gnu/nonmirplugins");
70 inline QStringList fallbackImportPaths() {
72 if (isRunningInstalled()) {
73 paths << QString(
"/usr/lib/x86_64-linux-gnu/unity8/qml");
74 paths << QString(
"/usr/lib/x86_64-linux-gnu/ubuntu-system-settings/private");
75 paths << QString(
"/usr/lib/x86_64-linux-gnu/unity8/qml");
76 paths << QString(
"/usr/lib/x86_64-linux-gnu/unity8/qml/mocks");
78 paths << QString(
"/usr/lib/x86_64-linux-gnu/ubuntu-system-settings/private");
79 paths << QString(
"/usr/lib/x86_64-linux-gnu/unity8/qml");
80 paths << QString(
"/build/unity8-nMmMJp/unity8-8.11+15.10.20150907/obj-x86_64-linux-gnu/tests/mocks");
85 inline QString mockPluginsDir() {
86 if (isRunningInstalled()) {
87 return QString(
"/usr/lib/x86_64-linux-gnu/unity8/qml/mocks");
89 return QString(
"/build/unity8-nMmMJp/unity8-8.11+15.10.20150907/obj-x86_64-linux-gnu/tests/mocks");
93 inline QStringList shellDataDirs() {
94 QStringList dirs = QStandardPaths::standardLocations(QStandardPaths::GenericDataLocation);
95 if (isRunningInstalled()) {
97 dirs.append(qmlDirectory());
102 inline QString sourceDirectory() {
103 return QString(
"/build/unity8-nMmMJp/unity8-8.11+15.10.20150907/");
106 inline void prependImportPaths(QQmlEngine *engine,
const QStringList &paths)
108 QStringList importPathList = engine->importPathList();
109 for (
int i = paths.count() -1; i >= 0; i--) {
111 const QString& path = paths[i];
112 QStringList::iterator iter = qFind(importPathList.begin(), importPathList.end(), path);
113 if (iter == importPathList.end()) {
114 engine->addImportPath(path);
122 inline void appendImportPaths(QQmlEngine *engine,
const QStringList &paths)
124 QStringList importPathList = engine->importPathList();
125 Q_FOREACH(
const QString& path, paths) {
127 QStringList::iterator iter = qFind(importPathList.begin(), importPathList.end(), path);
128 if (iter == importPathList.end()) {
129 importPathList.append(path);
132 engine->setImportPathList(importPathList);