Cockatrice 2026-10-19-Development-3.1.2-beta.2
A virtual tabletop for multiplayer card games
Loading...
Searching...
No Matches
settings_manager.h
Go to the documentation of this file.
1
6
7#ifndef SETTINGSMANAGER_H
8#define SETTINGSMANAGER_H
9
10#include <QObject>
11#include <QSettings>
12#include <QString>
13#include <QVariant>
14#include <functional>
15#include <qtmetamacros.h>
16
17class SettingsManager : public QObject
18{
19 Q_OBJECT
20
21public:
22 explicit SettingsManager(const QString &settingPath,
23 const QString &defaultGroup = QString(),
24 const QString &defaultSubGroup = QString(),
25 QObject *parent = nullptr);
26
27 QVariant getValue(const QString &name) const;
28 QVariant getValue(const QString &name, const QString &group, const QString &subGroup = QString()) const;
29 QVariant
30 getValue(const QString &name, const QString &group, const QString &subGroup, const QVariant &defaultValue) const;
31 void batchWrite(std::function<void(QSettings &)> batchWriteFunction);
32
33 void sync();
34
35protected:
36 QString settingPath;
37 QString defaultGroup;
39
40 QSettings getSettings() const;
41
42 void setValue(const QVariant &value, const QString &name);
43
44 void
45 setValue(const QVariant &value, const QString &name, const QString &group, const QString &subGroup = QString());
46
47 void deleteValue(const QString &name);
48
49 void deleteValue(const QString &name, const QString &group, const QString &subGroup = QString());
50};
51
52#endif // SETTINGSMANAGER_H
void sync()
Definition settings_manager.cpp:208
void batchWrite(std::function< void(QSettings &)> batchWriteFunction)
Definition settings_manager.cpp:196
QSettings getSettings() const
Definition settings_manager.cpp:11
QVariant getValue(const QString &name) const
Definition settings_manager.cpp:112
SettingsManager(const QString &settingPath, const QString &defaultGroup=QString(), const QString &defaultSubGroup=QString(), QObject *parent=nullptr)
Definition settings_manager.cpp:3
void deleteValue(const QString &name)
Definition settings_manager.cpp:66
void setValue(const QVariant &value, const QString &name)
Definition settings_manager.cpp:17
QString defaultSubGroup
Definition settings_manager.h:38
QString defaultGroup
Definition settings_manager.h:37
QString settingPath
Definition settings_manager.h:36