mirror of
https://github.com/Cockatrice/Cockatrice.git
synced 2026-07-29 04:10:23 -07:00
* [Settings] Split cache_settings into multiple files Took 9 minutes Took 4 minutes * [Settings] Fwd declare settings classes in cache_settings Took 15 minutes * Fix oracle includes. Took 8 minutes * Address comments, fix windows CI Took 8 minutes * fix copy constructor visibility Took 3 minutes * lint Took 2 minutes * Fix native format tests. Took 5 minutes * Remove test header guard Took 4 seconds * Remove tests invalid in CI environ Took 24 seconds * Adjust to rebase. Took 11 minutes * Change settings file name. Took 8 minutes --------- Co-authored-by: Lukas Brübach <lukas.bruebach@bdosecurity.de> Co-authored-by: Lukas Brübach <Bruebach.Lukas@bdosecurity.de>
49 lines
1.4 KiB
C++
49 lines
1.4 KiB
C++
/**
|
|
* @file settings_manager.h
|
|
* @ingroup Settings
|
|
*/
|
|
//! \todo Document this file.
|
|
|
|
#ifndef SETTINGSMANAGER_H
|
|
#define SETTINGSMANAGER_H
|
|
|
|
#include <QSettings>
|
|
#include <QStringList>
|
|
#include <QVariant>
|
|
|
|
class SettingsManager : public QObject
|
|
{
|
|
Q_OBJECT
|
|
|
|
public:
|
|
explicit SettingsManager(const QString &settingPath,
|
|
const QString &defaultGroup = QString(),
|
|
const QString &defaultSubGroup = QString(),
|
|
QObject *parent = nullptr);
|
|
|
|
QVariant getValue(const QString &name) const;
|
|
QVariant getValue(const QString &name, const QString &group, const QString &subGroup = QString()) const;
|
|
QVariant
|
|
getValue(const QString &name, const QString &group, const QString &subGroup, const QVariant &defaultValue) const;
|
|
void batchWrite(std::function<void(QSettings &)> batchWriteFunction);
|
|
|
|
void sync();
|
|
|
|
protected:
|
|
QString settingPath;
|
|
QString defaultGroup;
|
|
QString defaultSubGroup;
|
|
|
|
QSettings getSettings() const;
|
|
|
|
void setValue(const QVariant &value, const QString &name);
|
|
|
|
void
|
|
setValue(const QVariant &value, const QString &name, const QString &group, const QString &subGroup = QString());
|
|
|
|
void deleteValue(const QString &name);
|
|
|
|
void deleteValue(const QString &name, const QString &group, const QString &subGroup = QString());
|
|
};
|
|
|
|
#endif // SETTINGSMANAGER_H
|