2023-09-17 20:36:33 +08:00
|
|
|
#ifndef SETTINGSHELPER_H
|
|
|
|
#define SETTINGSHELPER_H
|
|
|
|
|
|
|
|
#include <QtCore/qobject.h>
|
|
|
|
#include <QtQml/qqml.h>
|
|
|
|
#include <QSettings>
|
|
|
|
#include <QScopedPointer>
|
|
|
|
#include <QFileInfo>
|
|
|
|
#include <QCoreApplication>
|
|
|
|
#include <QDir>
|
|
|
|
#include "src/singleton.h"
|
|
|
|
|
|
|
|
class SettingsHelper : public QObject
|
|
|
|
{
|
|
|
|
Q_OBJECT
|
|
|
|
private:
|
|
|
|
explicit SettingsHelper(QObject* parent = nullptr);
|
|
|
|
public:
|
|
|
|
SINGLETONG(SettingsHelper)
|
|
|
|
~SettingsHelper() override;
|
|
|
|
void init(char *argv[]);
|
|
|
|
Q_INVOKABLE void saveRender(const QString& render){save("render",render);}
|
2023-10-10 18:31:22 +08:00
|
|
|
Q_INVOKABLE QString getRender(){return get("render").toString();}
|
2023-09-17 20:36:33 +08:00
|
|
|
Q_INVOKABLE void saveDarkMode(int darkModel){save("darkMode",darkModel);}
|
|
|
|
Q_INVOKABLE int getDarkMode(){return get("darkMode").toInt(0);}
|
2023-10-15 17:24:33 +08:00
|
|
|
Q_INVOKABLE void saveVsync(bool vsync){save("vsync",vsync);}
|
|
|
|
Q_INVOKABLE bool getVsync(){return get("vsync").toBool();}
|
2023-09-17 20:36:33 +08:00
|
|
|
private:
|
|
|
|
void save(const QString& key,QVariant val);
|
|
|
|
QVariant get(const QString& key);
|
|
|
|
private:
|
|
|
|
QScopedPointer<QSettings> m_settings;
|
|
|
|
};
|
|
|
|
|
|
|
|
#endif // SETTINGSHELPER_H
|