summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEike Ziller <eike.ziller@nokia.com>2011-11-23 16:56:50 +0100
committerEike Ziller <eike.ziller@nokia.com>2011-12-16 08:48:31 +0100
commit8cc3844038ebf225f723b8f4c3dc1aa44c6e1bc8 (patch)
treeaa1eb98007c311c42bc5ab572a62d379147d6913
parent6210b0578e204eac5b9b02e6aba3e8cce2b642e8 (diff)
downloadqt-creator-8cc3844038ebf225f723b8f4c3dc1aa44c6e1bc8.tar.gz
Allow build to specify different settings path.
Task-number: QTCREATORBUG-5509 Change-Id: I4541049a1861e83f55106effc536fd50eb233d97 Reviewed-by: Alexander Lenhardt <alexander.lenhardt@nokia.com> Reviewed-by: Niels Weber <niels.2.weber@nokia.com> Reviewed-by: Daniel Molkentin <daniel.molkentin@nokia.com>
-rw-r--r--src/app/app_version.h.in7
-rw-r--r--src/app/main.cpp11
-rw-r--r--src/plugins/coreplugin/mainwindow.cpp3
-rw-r--r--src/plugins/projectexplorer/toolchainmanager.cpp4
-rw-r--r--src/plugins/qt4projectmanager/qt-s60/s60createpackagestep.cpp3
-rw-r--r--src/plugins/qtsupport/qtversionmanager.cpp4
6 files changed, 22 insertions, 10 deletions
diff --git a/src/app/app_version.h.in b/src/app/app_version.h.in
index 222c97ec85..04d9575a52 100644
--- a/src/app/app_version.h.in
+++ b/src/app/app_version.h.in
@@ -62,6 +62,13 @@ const char * const IDE_REVISION_STR = STRINGIFY(IDE_REVISION);
const char * const IDE_REVISION_STR = \"\";
#endif
+// changes the path where the settings are saved to
+#ifdef IDE_SETTINGSVARIANT
+const char * const IDE_SETTINGSVARIANT_STR = STRINGIFY(IDE_SETTINGSVARIANT);
+#else
+const char * const IDE_SETTINGSVARIANT_STR = \"Nokia\";
+#endif
+
#undef IDE_VERSION
#undef IDE_VERSION_STR
#undef STRINGIFY
diff --git a/src/app/main.cpp b/src/app/main.cpp
index 8920bb9599..5dfe3a748a 100644
--- a/src/app/main.cpp
+++ b/src/app/main.cpp
@@ -181,7 +181,9 @@ static inline QStringList getPluginPaths()
// $XDG_DATA_HOME or ~/.local/share/Nokia/qtcreator on Linux
// ~/Library/Application Support/Nokia/Qt Creator on Mac
pluginPath = QDesktopServices::storageLocation(QDesktopServices::DataLocation);
- pluginPath += QLatin1String("/Nokia/");
+ pluginPath += QLatin1Char('/')
+ + QLatin1String(Core::Constants::IDE_SETTINGSVARIANT_STR)
+ + QLatin1Char('/');
#if !defined(Q_OS_MAC)
pluginPath += QLatin1String("qtcreator");
#else
@@ -250,11 +252,14 @@ int main(int argc, char **argv)
// Must be done before any QSettings class is created
QSettings::setPath(QSettings::IniFormat, QSettings::SystemScope,
QCoreApplication::applicationDirPath() + QLatin1String(SHARE_PATH));
+ QSettings::setDefaultFormat(QSettings::IniFormat);
// plugin manager takes control of this settings object
QSettings *settings = new QSettings(QSettings::IniFormat, QSettings::UserScope,
- QLatin1String("Nokia"), QLatin1String("QtCreator"));
+ QLatin1String(Core::Constants::IDE_SETTINGSVARIANT_STR),
+ QLatin1String("QtCreator"));
QSettings *globalSettings = new QSettings(QSettings::IniFormat, QSettings::SystemScope,
- QLatin1String("Nokia"), QLatin1String("QtCreator"));
+ QLatin1String(Core::Constants::IDE_SETTINGSVARIANT_STR),
+ QLatin1String("QtCreator"));
ExtensionSystem::PluginManager pluginManager;
pluginManager.setFileExtension(QLatin1String("pluginspec"));
pluginManager.setGlobalSettings(globalSettings);
diff --git a/src/plugins/coreplugin/mainwindow.cpp b/src/plugins/coreplugin/mainwindow.cpp
index d8cc85d2e0..527e75c0ef 100644
--- a/src/plugins/coreplugin/mainwindow.cpp
+++ b/src/plugins/coreplugin/mainwindow.cpp
@@ -179,8 +179,7 @@ MainWindow::MainWindow() :
#endif
QCoreApplication::setApplicationName(QLatin1String("QtCreator"));
QCoreApplication::setApplicationVersion(QLatin1String(Core::Constants::IDE_VERSION_LONG));
- QCoreApplication::setOrganizationName(QLatin1String("Nokia"));
- QSettings::setDefaultFormat(QSettings::IniFormat);
+ QCoreApplication::setOrganizationName(QLatin1String(Constants::IDE_SETTINGSVARIANT_STR));
QString baseName = QApplication::style()->objectName();
#ifdef Q_WS_X11
if (baseName == QLatin1String("windows")) {
diff --git a/src/plugins/projectexplorer/toolchainmanager.cpp b/src/plugins/projectexplorer/toolchainmanager.cpp
index 9f616eac52..3cf9b1f684 100644
--- a/src/plugins/projectexplorer/toolchainmanager.cpp
+++ b/src/plugins/projectexplorer/toolchainmanager.cpp
@@ -111,8 +111,8 @@ ToolChainManager::ToolChainManager(QObject *parent) :
void ToolChainManager::restoreToolChains()
{
// Restore SDK settings first
- restoreToolChains(Core::ICore::instance()->resourcePath()
- + QLatin1String("/Nokia") + QLatin1String(TOOLCHAIN_FILENAME), true);
+ QFileInfo systemSettingsFile(Core::ICore::instance()->settings(QSettings::SystemScope)->fileName());
+ restoreToolChains(systemSettingsFile.absolutePath() + QLatin1String(TOOLCHAIN_FILENAME), true);
// Then auto detect
ExtensionSystem::PluginManager *pm = ExtensionSystem::PluginManager::instance();
diff --git a/src/plugins/qt4projectmanager/qt-s60/s60createpackagestep.cpp b/src/plugins/qt4projectmanager/qt-s60/s60createpackagestep.cpp
index c8b898ef5d..ae501342ea 100644
--- a/src/plugins/qt4projectmanager/qt-s60/s60createpackagestep.cpp
+++ b/src/plugins/qt4projectmanager/qt-s60/s60createpackagestep.cpp
@@ -143,7 +143,8 @@ void S60CreatePackageStep::ctor_package()
this, SLOT(handleWarnAboutPatching()), Qt::QueuedConnection);
m_passphrases = new QSettings(QSettings::IniFormat, QSettings::UserScope,
- QLatin1String("Nokia"), QLatin1String("QtCreatorKeys"), this);
+ QLatin1String(Core::Constants::IDE_SETTINGSVARIANT_STR),
+ QLatin1String("QtCreatorKeys"), this);
}
S60CreatePackageStep::~S60CreatePackageStep()
diff --git a/src/plugins/qtsupport/qtversionmanager.cpp b/src/plugins/qtsupport/qtversionmanager.cpp
index a578718e68..def45c3f36 100644
--- a/src/plugins/qtsupport/qtversionmanager.cpp
+++ b/src/plugins/qtsupport/qtversionmanager.cpp
@@ -206,8 +206,8 @@ void QtVersionManager::updateFromInstaller()
ExtensionSystem::PluginManager *pm = ExtensionSystem::PluginManager::instance();
QList<QtVersionFactory *> factories = pm->getObjects<QtVersionFactory>();
Utils::PersistentSettingsReader reader;
- if (!reader.load(Core::ICore::instance()->resourcePath()
- + QLatin1String("/Nokia") + QLatin1String(QTVERSION_FILENAME)))
+ if (!reader.load(QFileInfo(pm->globalSettings()->fileName()).absolutePath()
+ + QLatin1String(QTVERSION_FILENAME)))
return;
QVariantMap data = reader.restoreValues();