# HG changeset patch # User Teemu Piippo # Date 1433618914 -10800 # Node ID 1394901b557ab447c2ad84e5105a93354d7b4fb7 # Parent 9528f8d0696270257787a1e755e9939bf546f8f3 Renamed cfg.cpp/h to config.cpp/h diff -r 9528f8d06962 -r 1394901b557a CMakeLists.txt --- a/CMakeLists.txt Sat Jun 06 22:26:05 2015 +0300 +++ b/CMakeLists.txt Sat Jun 06 22:28:34 2015 +0300 @@ -14,7 +14,7 @@ include_directories (${QT_INCLUDES} ${CMAKE_CURRENT_BINARY_DIR}) set (ZCINEMA_SOURCES - src/cfg.cpp + src/config.cpp src/configwindow.cpp src/demo.cpp src/main.cpp @@ -23,7 +23,7 @@ ) set (ZCINEMA_HEADERS - src/cfg.h + src/config.h src/configwindow.h src/demo.h src/main.h diff -r 9528f8d06962 -r 1394901b557a src/cfg.cpp --- a/src/cfg.cpp Sat Jun 06 22:26:05 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 . - */ - -#include -#include -#include -#include -#include "main.h" - -typedef QMap 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(); -} diff -r 9528f8d06962 -r 1394901b557a src/cfg.h --- a/src/cfg.h Sat Jun 06 22:26:05 2015 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,29 +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 . - */ - -#pragma once -#include - -// ========================================================= -namespace Config -{ - void reset(); - QVariant get (const QString& name); - bool set (const QString& name, const QVariant& value); - void sync(); -}; \ No newline at end of file diff -r 9528f8d06962 -r 1394901b557a src/config.cpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/config.cpp Sat Jun 06 22:28:34 2015 +0300 @@ -0,0 +1,100 @@ +/* + * 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 . + */ + +#include +#include +#include +#include +#include "main.h" + +typedef QMap 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(); +} diff -r 9528f8d06962 -r 1394901b557a src/config.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/config.h Sat Jun 06 22:28:34 2015 +0300 @@ -0,0 +1,28 @@ +/* + * 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 . + */ + +#pragma once +#include + +namespace Config +{ + void reset(); + QVariant get (const QString& name); + bool set (const QString& name, const QVariant& value); + void sync(); +}; \ No newline at end of file diff -r 9528f8d06962 -r 1394901b557a src/main.h --- a/src/main.h Sat Jun 06 22:26:05 2015 +0300 +++ b/src/main.h Sat Jun 06 22:28:34 2015 +0300 @@ -36,8 +36,7 @@ "." MACRO_TO_STRING (VERSION_PATCH) #endif -#include -#include "cfg.h" +#include "config.h" QString versionString(); QString versionSignature(); \ No newline at end of file