From feaad361682259b989b96dd91910935b5fe8ef7c Mon Sep 17 00:00:00 2001 From: Tannin Date: Wed, 8 Apr 2015 18:30:02 +0200 Subject: download directory, cache directory and mod directory are now only stored in the ini file when they differ from the default. this should make moving MO easier --- src/settings.cpp | 25 ++++++++++++++++++------- 1 file changed, 18 insertions(+), 7 deletions(-) (limited to 'src/settings.cpp') diff --git a/src/settings.cpp b/src/settings.cpp index 862ed5f3..54be183a 100644 --- a/src/settings.cpp +++ b/src/settings.cpp @@ -140,7 +140,6 @@ void Settings::registerPlugin(IPlugin *plugin) } } - QString Settings::obfuscate(const QString &password) const { QByteArray temp = password.toUtf8(); @@ -152,7 +151,6 @@ QString Settings::obfuscate(const QString &password) const return buffer.toBase64(); } - QString Settings::deObfuscate(const QString &password) const { QByteArray temp(QByteArray::fromBase64(password.toUtf8())); @@ -164,7 +162,6 @@ QString Settings::deObfuscate(const QString &password) const return QString::fromUtf8(buffer.constData()); } - bool Settings::hideUncheckedPlugins() const { return m_Settings.value("Settings/hide_unchecked_plugins", false).toBool(); @@ -190,7 +187,6 @@ QString Settings::getDownloadDirectory() const return getConfigurablePath("download_directory", ToQString(AppConfig::downloadPath())); } - void Settings::setDownloadSpeed(const QString &serverName, int bytesPerSecond) { m_Settings.beginGroup("Servers"); @@ -687,9 +683,24 @@ void Settings::query(QWidget *parent) QDir().mkpath(modDirEdit->text()); } - m_Settings.setValue("Settings/download_directory", QDir::toNativeSeparators(downloadDirEdit->text())); - m_Settings.setValue("Settings/cache_directory", QDir::toNativeSeparators(cacheDirEdit->text())); - m_Settings.setValue("Settings/mod_directory", QDir::toNativeSeparators(modDirEdit->text())); + if (QFileInfo(downloadDirEdit->text()) != + QFileInfo(qApp->property("dataPath").toString() + "/" + QString::fromStdWString(AppConfig::downloadPath()))) { + m_Settings.setValue("Settings/download_directory", QDir::toNativeSeparators(downloadDirEdit->text())); + } else { + m_Settings.remove("Settings/download_directory"); + } + if (QFileInfo(cacheDirEdit->text()) != + QFileInfo(qApp->property("dataPath").toString() + "/" + QString::fromStdWString(AppConfig::cachePath()))) { + m_Settings.setValue("Settings/cache_directory", QDir::toNativeSeparators(cacheDirEdit->text())); + } else { + m_Settings.remove("Settings/cache_directory"); + } + if (QFileInfo(modDirEdit->text()) != + QFileInfo(qApp->property("dataPath").toString() + "/" + QString::fromStdWString(AppConfig::modsPath()))) { + m_Settings.setValue("Settings/mod_directory", QDir::toNativeSeparators(modDirEdit->text())); + } else { + m_Settings.remove("Settings/mod_directory"); + } } -- cgit v1.3.1