From bd8267993d1ed0292200f3052e3c30d4fc9c84f7 Mon Sep 17 00:00:00 2001 From: Tannin Date: Sun, 4 Jan 2015 10:13:12 +0100 Subject: - fixes after merge --- src/settings.cpp | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) (limited to 'src/settings.cpp') diff --git a/src/settings.cpp b/src/settings.cpp index 274e5979..8571a83b 100644 --- a/src/settings.cpp +++ b/src/settings.cpp @@ -60,8 +60,8 @@ static const unsigned char Key2[20] = { 0x99, 0xb8, 0x76, 0x42, 0x3e, 0xc1, 0x60 Settings *Settings::s_Instance = NULL; -Settings::Settings() - : m_Settings(ToQString(GameInfo::instance().getIniFilename()), QSettings::IniFormat) +Settings::Settings(const QSettings &settingsSource) + : m_Settings(settingsSource.fileName(), settingsSource.format()) { if (s_Instance != NULL) { throw std::runtime_error("second instance of \"Settings\" created"); @@ -181,7 +181,7 @@ QString Settings::getSteamAppID() const QString Settings::getDownloadDirectory() const { - return QDir::toNativeSeparators(m_Settings.value("Settings/download_directory", ToQString(GameInfo::instance().getDownloadDir())).toString()); + return getConfigurablePath("download_directory", ToQString(AppConfig::downloadPath())); } @@ -219,14 +219,19 @@ std::map Settings::getPreferredServers() return result; } +QString Settings::getConfigurablePath(const QString &key, const QString &def) const +{ + return m_Settings.value(QString("settings/") + key, qApp->property("dataPath").toString() + "/" + def).toString(); +} + QString Settings::getCacheDirectory() const { - return QDir::toNativeSeparators(m_Settings.value("Settings/cache_directory", ToQString(GameInfo::instance().getCacheDir())).toString()); + return getConfigurablePath("cache_directory", ToQString(AppConfig::cachePath())); } QString Settings::getModDirectory() const { - return QDir::toNativeSeparators(m_Settings.value("Settings/mod_directory", ToQString(GameInfo::instance().getModsDir())).toString()); + return getConfigurablePath("mod_directory", ToQString(AppConfig::modsPath())); } QString Settings::getNMMVersion() const -- cgit v1.3.1