Merge pull request #224 from ideasman42/linux-config-path

Use ~/.config on Linux/Unix
This commit is contained in:
Shinya Kitaoka 2016-04-25 17:12:02 +09:00
commit 7e54c42979

View file

@ -5,6 +5,9 @@
#include "tconvert.h"
#include "tfilepath_io.h"
#ifdef LINUX
#include <QDir>
#endif
#include <QSettings>
#ifdef LEVO_MACOSX
@ -72,9 +75,20 @@ public:
#ifdef _WIN32
return m_registryRoot + varName;
#else
QString settingsPath = QString::fromStdString(getApplicationName()) + QString("_") +
QString settingsPath;
#ifdef MACOSX
settingsPath = QString::fromStdString(getApplicationName()) + QString("_") +
QString::fromStdString(getApplicationVersion()) + QString(".app") +
QString("/Contents/Resources/SystemVar.ini");
#else /* Generic Unix */
// TODO: use QStandardPaths::ConfigLocation when we drop Qt4
settingsPath = QDir::homePath();
settingsPath.append("/.config/");
settingsPath.append(getApplicationName().c_str());
settingsPath.append("/SystemVar.ini");
#endif
QSettings settings(settingsPath, QSettings::IniFormat);
QString qStr = QString::fromStdString(varName);
QString systemVar = settings.value(qStr).toString();
@ -303,7 +317,7 @@ public:
void VariableSet::load()
{
#ifdef MACOSX
#ifndef WIN32
EnvGlobals::instance()->updateEnvFile();
#endif
TFilePath fp = EnvGlobals::instance()->getEnvFile();