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/buildd/unity8-7.85+14.04.20140416/obj-i686-linux-gnu/po/locale");
44 inline QString qmlDirectory() {
45 if (isRunningInstalled()) {
46 return QString(
"/usr/share/unity8/");
48 return QString(
"/build/buildd/unity8-7.85+14.04.20140416/qml/");
52 inline QStringList overrideImportPaths() {
54 if (!isRunningInstalled()) {
55 paths << QString(
"/build/buildd/unity8-7.85+14.04.20140416/obj-i686-linux-gnu/plugins");
60 inline QStringList nonMirImportPaths() {
62 if (isRunningInstalled()) {
63 paths << QString(
"/usr/lib/i386-linux-gnu/unity8/qml/nonmirplugins");
65 paths << QString(
"/build/buildd/unity8-7.85+14.04.20140416/obj-i686-linux-gnu/nonmirplugins");
70 inline QStringList fallbackImportPaths() {
72 if (isRunningInstalled()) {
73 paths << QString(
"/usr/lib/i386-linux-gnu/unity8/qml");
74 paths << QString(
"/usr/lib/i386-linux-gnu/unity8/qml");
75 paths << QString(
"/usr/lib/i386-linux-gnu/unity8/qml/mocks");
77 paths << QString(
"/usr/lib/i386-linux-gnu/unity8/qml");
78 paths << QString(
"/build/buildd/unity8-7.85+14.04.20140416/obj-i686-linux-gnu/tests/mocks");
83 inline QStringList shellDataDirs() {
84 QStringList dirs = QStandardPaths::standardLocations(QStandardPaths::GenericDataLocation);
85 if (!isRunningInstalled()) {
86 if (getenv(
"UNITY_TEST_ENV")==NULL) {
87 dirs.prepend(
"/build/buildd/unity8-7.85+14.04.20140416/obj-i686-linux-gnu/share");
92 dirs.append(qmlDirectory());
97 inline QString sourceDirectory() {
98 return QString(
"/build/buildd/unity8-7.85+14.04.20140416/");
101 inline void prependImportPaths(QQmlEngine *engine,
const QStringList &paths)
103 QStringList importPathList = engine->importPathList();
104 for (
int i = paths.count() -1; i >= 0; i--) {
106 const QString& path = paths[i];
107 QStringList::iterator iter = qFind(importPathList.begin(), importPathList.end(), path);
108 if (iter == importPathList.end()) {
109 engine->addImportPath(path);
117 inline void appendImportPaths(QQmlEngine *engine,
const QStringList &paths)
119 QStringList importPathList = engine->importPathList();
120 Q_FOREACH(
const QString& path, paths) {
122 QStringList::iterator iter = qFind(importPathList.begin(), importPathList.end(), path);
123 if (iter == importPathList.end()) {
124 importPathList.append(path);
127 engine->setImportPathList(importPathList);
130 inline void resolveIconTheme() {
131 const char *ubuntuIconTheme = getenv(
"UBUNTU_ICON_THEME");
132 if (ubuntuIconTheme == NULL) {
133 ubuntuIconTheme =
"ubuntu-mobile";
135 QIcon::setThemeName(ubuntuIconTheme);