1 #include "settingsmanager.h"
2
SettingsManager(QString settingPath,QObject * parent)3 SettingsManager::SettingsManager(QString settingPath, QObject *parent)
4 : QObject(parent), settings(settingPath, QSettings::IniFormat)
5 {
6 }
7
setValue(QVariant value,QString name,QString group,QString subGroup)8 void SettingsManager::setValue(QVariant value, QString name, QString group, QString subGroup)
9 {
10 if (!group.isEmpty()) {
11 settings.beginGroup(group);
12 }
13
14 if (!subGroup.isEmpty()) {
15 settings.beginGroup(subGroup);
16 }
17
18 settings.setValue(name, value);
19
20 if (!subGroup.isEmpty()) {
21 settings.endGroup();
22 }
23
24 if (!group.isEmpty()) {
25 settings.endGroup();
26 }
27 }
28
deleteValue(QString name,QString group,QString subGroup)29 void SettingsManager::deleteValue(QString name, QString group, QString subGroup)
30 {
31 if (!group.isEmpty()) {
32 settings.beginGroup(group);
33 }
34
35 if (!subGroup.isEmpty()) {
36 settings.beginGroup(subGroup);
37 }
38
39 settings.remove(name);
40
41 if (!subGroup.isEmpty()) {
42 settings.endGroup();
43 }
44
45 if (!group.isEmpty()) {
46 settings.endGroup();
47 }
48 }
49
getValue(QString name,QString group,QString subGroup)50 QVariant SettingsManager::getValue(QString name, QString group, QString subGroup)
51 {
52 if (!group.isEmpty()) {
53 settings.beginGroup(group);
54 }
55
56 if (!subGroup.isEmpty()) {
57 settings.beginGroup(subGroup);
58 }
59
60 QVariant value = settings.value(name);
61
62 if (!subGroup.isEmpty()) {
63 settings.endGroup();
64 }
65
66 if (!group.isEmpty()) {
67 settings.endGroup();
68 }
69
70 return value;
71 }
72