--- a/src-common/config.cpp Sat Jun 06 23:06:14 2015 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,100 +0,0 @@ -/* - * ZCinema: Zandronum demo launcher - * Copyright (C) 2013-2015 Teemu Piippo - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see <http://www.gnu.org/licenses/>. - */ - -#include <assert.h> -#include <QDir> -#include <QTextStream> -#include <QSettings> -#include "config.h" - -typedef QMap<QString, QVariant> DefaultsMap; - -// -// ------------------------------------------------------------------------------------------------- -// - -static QSettings* getSettingsObject() -{ - return new QSettings; -} - -// -// ------------------------------------------------------------------------------------------------- -// - -static DefaultsMap& getDefaults() -{ - static DefaultsMap defaults; - - if (defaults.isEmpty()) - { - // Initialize defaults here. - } - - return defaults; -} - -// -// ------------------------------------------------------------------------------------------------- -// - -void Config::reset() -{ - DefaultsMap& defaults = getDefaults(); - - for (DefaultsMap::iterator it = defaults.begin(); it != defaults.end(); ++it) - set (it.key(), it.value()); -} - -// -// ------------------------------------------------------------------------------------------------- -// - -QVariant Config::get (const QString& name) -{ - QSettings* settings = getSettingsObject(); - DefaultsMap& defaults = getDefaults(); - DefaultsMap::iterator it = defaults.find (name); - QVariant def = it != defaults.end() ? *it : QVariant(); - QVariant value = settings->value (name, def); - settings->deleteLater(); - return value; -} - -// -// ------------------------------------------------------------------------------------------------- -// - -bool Config::set (const QString& name, const QVariant& value) -{ - QSettings* settings = getSettingsObject(); - settings->setValue (name, value); - settings->deleteLater(); - return settings->status() == QSettings::NoError; -} - -// -// ------------------------------------------------------------------------------------------------- -// - -void Config::sync() -{ - QSettings* settings = getSettingsObject(); - settings->sync(); - settings->deleteLater(); -}