core: remove LOADSYNC* macros

expend LOADSYNC* into DISK_* macros
remove LOADSYNC* from qPrefPrivate.h
update qPrefDisplay to not use LOADSYNC*

Signed-off-by: Jan Iversen <jani@apache.org>
This commit is contained in:
jan Iversen 2018-07-18 22:52:13 +02:00 committed by Dirk Hohndel
parent 3eae683b57
commit 92ade62260
3 changed files with 33 additions and 56 deletions

View file

@ -31,6 +31,7 @@ void qPrefCloudStorage::loadSync(bool doSync)
void qPrefCloudStorage::set_cloud_base_url(const QString& value) void qPrefCloudStorage::set_cloud_base_url(const QString& value)
{ {
QString valueGit = value + "/git";
if (value != prefs.cloud_base_url) { if (value != prefs.cloud_base_url) {
// only free and set if not default // only free and set if not default
if (prefs.cloud_base_url != default_prefs.cloud_base_url) { if (prefs.cloud_base_url != default_prefs.cloud_base_url) {
@ -39,14 +40,12 @@ void qPrefCloudStorage::set_cloud_base_url(const QString& value)
} }
disk_cloud_base_url(true); disk_cloud_base_url(true);
disk_cloud_git_url(true);
emit cloud_base_url_changed(value); emit cloud_base_url_changed(value);
emit cloud_git_url_changed(valueGit);
} }
} }
void qPrefCloudStorage::disk_cloud_base_url(bool doSync) DISK_LOADSYNC_TXT(CloudStorage, "/cloud_base_url", cloud_base_url)
{
LOADSYNC_TXT("/cloud_base_url", cloud_base_url);
LOADSYNC_TXT("/cloud_git_url", cloud_git_url);
}
void qPrefCloudStorage::set_cloud_git_url(const QString& value) void qPrefCloudStorage::set_cloud_git_url(const QString& value)
{ {
@ -86,8 +85,12 @@ void qPrefCloudStorage::set_cloud_storage_password(const QString& value)
} }
void qPrefCloudStorage::disk_cloud_storage_password(bool doSync) void qPrefCloudStorage::disk_cloud_storage_password(bool doSync)
{ {
if (!doSync || prefs.save_password_local) if (doSync) {
LOADSYNC_TXT("/password", cloud_storage_password); if (prefs.save_password_local)
qPrefPrivate::instance()->setting.setValue(group + "/password", prefs.cloud_storage_password);
} else {
prefs.cloud_storage_password = copy_qstring(qPrefPrivate::instance()->setting.value(group + "/password", default_prefs.cloud_storage_password).toString());
}
} }
HANDLE_PREFERENCE_TXT(CloudStorage, "/pin", cloud_storage_pin); HANDLE_PREFERENCE_TXT(CloudStorage, "/pin", cloud_storage_pin);
@ -107,5 +110,8 @@ void qPrefCloudStorage::disk_userid(bool doSync)
{ {
//WARNING: UserId is stored outside of any group, but it belongs to Cloud Storage. //WARNING: UserId is stored outside of any group, but it belongs to Cloud Storage.
const QString group = QStringLiteral(""); const QString group = QStringLiteral("");
LOADSYNC_TXT("subsurface_webservice_uid", userid); if (doSync)
qPrefPrivate::instance()->setting.setValue(group + "subsurface_webservice_uid", prefs.userid);
else
prefs.userid = copy_qstring(qPrefPrivate::instance()->setting.value(group + "subsurface_webservice_uid", default_prefs.userid).toString());
} }

View file

@ -44,7 +44,7 @@ void qPrefDisplay::set_divelist_font(const QString& value)
void qPrefDisplay::disk_divelist_font(bool doSync) void qPrefDisplay::disk_divelist_font(bool doSync)
{ {
if (doSync) if (doSync)
LOADSYNC_TXT("/divelist_font", divelist_font) qPrefPrivate::instance()->setting.setValue(group + "/divelist_font", prefs.divelist_font);
else else
setCorrectFont(); setCorrectFont();
} }
@ -64,7 +64,7 @@ void qPrefDisplay::set_font_size(double value)
void qPrefDisplay::disk_font_size(bool doSync) void qPrefDisplay::disk_font_size(bool doSync)
{ {
if (doSync) if (doSync)
LOADSYNC_DOUBLE("/font_size", font_size) qPrefPrivate::instance()->setting.setValue(group + "/font_size", prefs.font_size);
else else
setCorrectFont(); setCorrectFont();
} }
@ -78,7 +78,6 @@ HANDLE_PREFERENCE_TXT(Display, "/theme", theme);
void qPrefDisplay::setCorrectFont() void qPrefDisplay::setCorrectFont()
{ {
bool doSync = false;
QSettings s; QSettings s;
QVariant v; QVariant v;
@ -103,5 +102,6 @@ void qPrefDisplay::setCorrectFont()
} }
defaultFont.setPointSizeF(prefs.font_size); defaultFont.setPointSizeF(prefs.font_size);
qApp->setFont(defaultFont); qApp->setFont(defaultFont);
LOADSYNC_BOOL("/displayinvalid", display_invalid_dives);
prefs.display_invalid_dives = qPrefPrivate::instance()->setting.value(group + "/displayinvalid", default_prefs.display_invalid_dives).toBool();
} }

View file

@ -29,8 +29,11 @@ private:
qPrefPrivate(QObject *parent = NULL); qPrefPrivate(QObject *parent = NULL);
}; };
//****** Macros to be used in the disk functions, which are special ******
#define LOADSYNC_BOOL(name, field) \
//******* Macros to generate disk function
#define DISK_LOADSYNC_BOOL(usegroup, name, field) \
void qPref ## usegroup::disk_ ## field(bool doSync) \
{ \ { \
if (doSync) \ if (doSync) \
qPrefPrivate::instance()->setting.setValue(group + name, prefs.field); \ qPrefPrivate::instance()->setting.setValue(group + name, prefs.field); \
@ -38,7 +41,8 @@ private:
prefs.field = qPrefPrivate::instance()->setting.value(group + name, default_prefs.field).toBool(); \ prefs.field = qPrefPrivate::instance()->setting.value(group + name, default_prefs.field).toBool(); \
} }
#define LOADSYNC_DOUBLE(name, field) \ #define DISK_LOADSYNC_DOUBLE(usegroup, name, field) \
void qPref ## usegroup::disk_ ## field(bool doSync) \
{ \ { \
if (doSync) \ if (doSync) \
qPrefPrivate::instance()->setting.setValue(group + name, prefs.field); \ qPrefPrivate::instance()->setting.setValue(group + name, prefs.field); \
@ -46,7 +50,8 @@ private:
prefs.field = qPrefPrivate::instance()->setting.value(group + name, default_prefs.field).toDouble(); \ prefs.field = qPrefPrivate::instance()->setting.value(group + name, default_prefs.field).toDouble(); \
} }
#define LOADSYNC_ENUM(name, type, field) \ #define DISK_LOADSYNC_ENUM(usegroup, name, type, field) \
void qPref ## usegroup::disk_ ## field(bool doSync) \
{ \ { \
if (doSync) \ if (doSync) \
qPrefPrivate::instance()->setting.setValue(group + name, prefs.field); \ qPrefPrivate::instance()->setting.setValue(group + name, prefs.field); \
@ -54,7 +59,8 @@ private:
prefs.field = (enum type)qPrefPrivate::instance()->setting.value(group + name, default_prefs.field).toInt(); \ prefs.field = (enum type)qPrefPrivate::instance()->setting.value(group + name, default_prefs.field).toInt(); \
} }
#define LOADSYNC_INT(name, field) \ #define DISK_LOADSYNC_INT(usegroup, name, field) \
void qPref ## usegroup::disk_ ## field(bool doSync) \
{ \ { \
if (doSync) \ if (doSync) \
qPrefPrivate::instance()->setting.setValue(group + name, prefs.field); \ qPrefPrivate::instance()->setting.setValue(group + name, prefs.field); \
@ -62,7 +68,8 @@ private:
prefs.field = qPrefPrivate::instance()->setting.value(group + name, default_prefs.field).toInt(); \ prefs.field = qPrefPrivate::instance()->setting.value(group + name, default_prefs.field).toInt(); \
} }
#define LOADSYNC_INT_DEF(name, field, defval) \ #define DISK_LOADSYNC_INT_DEF(usegroup, name, field, defval) \
void qPref ## usegroup::disk_ ## field(bool doSync) \
{ \ { \
if (doSync) \ if (doSync) \
qPrefPrivate::instance()->setting.setValue(group + name, prefs.field); \ qPrefPrivate::instance()->setting.setValue(group + name, prefs.field); \
@ -70,7 +77,8 @@ private:
prefs.field = qPrefPrivate::instance()->setting.value(group + name, defval).toInt(); \ prefs.field = qPrefPrivate::instance()->setting.value(group + name, defval).toInt(); \
} }
#define LOADSYNC_TXT(name, field) \ #define DISK_LOADSYNC_TXT(usegroup, name, field) \
void qPref ## usegroup::disk_ ## field(bool doSync) \
{ \ { \
if (doSync) \ if (doSync) \
qPrefPrivate::instance()->setting.setValue(group + name, prefs.field); \ qPrefPrivate::instance()->setting.setValue(group + name, prefs.field); \
@ -78,43 +86,6 @@ private:
prefs.field = copy_qstring(qPrefPrivate::instance()->setting.value(group + name, default_prefs.field).toString()); \ prefs.field = copy_qstring(qPrefPrivate::instance()->setting.value(group + name, default_prefs.field).toString()); \
} }
//******* Macros to generate disk function
#define DISK_LOADSYNC_BOOL(usegroup, name, field) \
void qPref ## usegroup::disk_ ## field(bool doSync) \
{ \
LOADSYNC_BOOL(name, field); \
}
#define DISK_LOADSYNC_DOUBLE(usegroup, name, field) \
void qPref ## usegroup::disk_ ## field(bool doSync) \
{ \
LOADSYNC_DOUBLE(name, field); \
}
#define DISK_LOADSYNC_ENUM(usegroup, name, type, field) \
void qPref ## usegroup::disk_ ## field(bool doSync) \
{ \
LOADSYNC_ENUM(name, type, field); \
}
#define DISK_LOADSYNC_INT(usegroup, name, field) \
void qPref ## usegroup::disk_ ## field(bool doSync) \
{ \
LOADSYNC_INT(name, field); \
}
#define DISK_LOADSYNC_INT_DEF(usegroup, name, field, defval) \
void qPref ## usegroup::disk_ ## field(bool doSync) \
{ \
LOADSYNC_INT_DEF(name, field, defval); \
}
#define DISK_LOADSYNC_TXT(usegroup, name, field) \
void qPref ## usegroup::disk_ ## field(bool doSync) \
{ \
LOADSYNC_TXT(name, field); \
}
//******* Macros to generate set function //******* Macros to generate set function
#define SET_PREFERENCE_BOOL(usegroup, field) \ #define SET_PREFERENCE_BOOL(usegroup, field) \
void qPref ## usegroup::set_ ## field (bool value) \ void qPref ## usegroup::set_ ## field (bool value) \