KShare/src/settings.cpp

24 lines
670 B
C++
Raw Permalink Normal View History

2017-04-23 15:05:48 +02:00
#include "settings.hpp"
#include <QStandardPaths>
#include <logger.hpp>
2017-04-23 15:05:48 +02:00
2017-05-06 13:21:12 +02:00
QSettings &settings::settings() {
2017-07-11 16:24:36 +02:00
static QSettings settings(dir().absoluteFilePath("settings.ini"), QSettings::IniFormat);
return settings;
}
QDir settings::dir() {
static QDir configDir(QStandardPaths::writableLocation(QStandardPaths::GenericConfigLocation));
if (configDir.dirName() != "KShare") {
2017-07-23 13:32:02 +02:00
if (!configDir.cd("KShare")) {
2017-07-11 16:24:36 +02:00
if (!configDir.mkdir("KShare")) {
2018-01-01 16:37:31 +01:00
logger::abort(QObject::tr("Could not make config directory"));
2017-07-11 16:24:36 +02:00
} else {
configDir.cd("KShare");
}
2017-07-23 13:32:02 +02:00
}
}
2017-07-11 16:24:36 +02:00
return configDir;
2017-04-23 15:05:48 +02:00
}