mirror of
https://github.com/subsurface/subsurface.git
synced 2024-11-28 05:00:20 +00:00
3a314c3dec
Update set/get functions to follow common name scheme: - get function have same name as in struct preferences - set function have set_<name in struct preferences> - signal function have <name in struct preferences>_changed one class one .h/.cpp is the C++ idiom. Having load/sync of each variable in 1 functions (in contrast to the distributed way SettingsObjectWrapper handles it) secures the same storage name is used. Having the set/get/load/sync functions grouped together makes it easier to get an overview. REMARK: this commit only defines the class, it is not active in production Signed-off-by: Jan Iversen <jani@apache.org>
38 lines
862 B
C++
38 lines
862 B
C++
// SPDX-License-Identifier: GPL-2.0
|
|
#ifndef QPREFANIMATIONS_H
|
|
#define QPREFANIMATIONS_H
|
|
|
|
#include <QObject>
|
|
#include <QSettings>
|
|
|
|
class qPrefAnimations : public QObject {
|
|
Q_OBJECT
|
|
Q_PROPERTY(int animation_speed READ animation_speed WRITE set_animation_speed NOTIFY animation_speed_changed);
|
|
|
|
public:
|
|
qPrefAnimations(QObject *parent = NULL);
|
|
static qPrefAnimations *instance();
|
|
|
|
// Load/Sync local settings (disk) and struct preference
|
|
void loadSync(bool doSync);
|
|
void load() { loadSync(false); }
|
|
void sync() { loadSync(true); }
|
|
|
|
public:
|
|
int animation_speed() const;
|
|
|
|
public slots:
|
|
void set_animation_speed(int value);
|
|
|
|
signals:
|
|
void animation_speed_changed(int value);
|
|
|
|
private:
|
|
const QString group = QStringLiteral("Animations");
|
|
QSettings setting;
|
|
|
|
// functions to load/sync variable with disk
|
|
void disk_animation_speed(bool doSync);
|
|
};
|
|
|
|
#endif
|