-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathQMLAdapter.cpp
More file actions
69 lines (57 loc) · 1.99 KB
/
Copy pathQMLAdapter.cpp
File metadata and controls
69 lines (57 loc) · 1.99 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
#include "QMLAdapter.h"
QMLAdapter::QMLAdapter(QSettings *settings) : _settings(settings)
{
loadSettings();
}
void QMLAdapter::onChooseMeControlEnabling(const bool &value)
{
setChooseMeControlEnabled(value);
}
bool QMLAdapter::chooseMeControlEnabled(){return _chooseMeControlEnabled;}
void QMLAdapter::setChooseMeControlEnabled(const bool &chooseMeControlEnabled)
{
if (_chooseMeControlEnabled == chooseMeControlEnabled) return;
_chooseMeControlEnabled = chooseMeControlEnabled;
emit chooseMeControlEnabledChanged(_chooseMeControlEnabled);
}
QString QMLAdapter::folderName(){return _folderName;}
void QMLAdapter::setFolderName(const QString &urlFolderName)
{
auto folderName = QUrl(urlFolderName).path();
#ifdef WINDOWS
folderName.remove(0, 1);
#endif
if (_folderName == folderName) return;
_folderName = folderName;
_settings->setValue("folderName", _folderName);
emit folderNameChanged(_folderName);
}
QString QMLAdapter::fileName(){return _fileName;}
void QMLAdapter::setFileName(const QString &urlFileName)
{
auto fileName = QUrl(urlFileName).path();
#ifdef WINDOWS
fileName.remove(0, 1);
#endif
if (_fileName == fileName) return;
_fileName = fileName;
_settings->setValue("fileName", _fileName);
emit fileNameChanged(_fileName);
}
void QMLAdapter::loadSettings()
{
auto getValue = [this](const QString& key)->SettingValue{
bool isValid = _settings->contains(key);
if (!isValid) GUI_DEBUG("[loadSettings] No such key in settings: " << key.toStdString());
return SettingValue(isValid, _settings->value(key, QVariant()));
};
SettingValue temp;
temp = getValue("fileName");
if (temp.isValid()) _fileName = temp.value().toString();
temp = getValue("folderName");
if (temp.isValid()) _folderName = temp.value().toString();
temp = getValue("fileNameUrl");
if (temp.isValid()) _fileNameUrl = temp.value().toString();
temp = getValue("folderNameUrl");
if (temp.isValid()) _folderNameUrl = temp.value().toString();
}