mirror of
https://github.com/subsurface/subsurface.git
synced 2024-11-28 05:00:20 +00:00
516e3421b1
change qPrefDisplay.cpp to use qPref_private macros, for each variable. The macros used depend on how standard the variable is handled. Remark: this commit is production code, but qPrefDisplay is NOT integrated into SettingsObjectWrapper and thus not active in the live system Signed-off-by: Jan Iversen <jani@apache.org>
62 lines
1.6 KiB
C++
62 lines
1.6 KiB
C++
// SPDX-License-Identifier: GPL-2.0
|
|
#include "qPref.h"
|
|
#include "qPref_private.h"
|
|
#include "core/subsurface-string.h"
|
|
|
|
#include <QApplication>
|
|
#include <QFont>
|
|
|
|
qPrefDisplay::qPrefDisplay(QObject *parent) : QObject(parent)
|
|
{
|
|
}
|
|
qPrefDisplay *qPrefDisplay::instance()
|
|
{
|
|
static qPrefDisplay *self = new qPrefDisplay;
|
|
return self;
|
|
}
|
|
|
|
void qPrefDisplay::loadSync(bool doSync)
|
|
{
|
|
disk_divelist_font(doSync);
|
|
disk_font_size(doSync);
|
|
disk_display_invalid_dives(doSync);
|
|
disk_show_developer(doSync);
|
|
disk_theme(doSync);
|
|
}
|
|
|
|
GET_PREFERENCE_TXT(Display, divelist_font);
|
|
void qPrefDisplay::set_divelist_font(const QString& value)
|
|
{
|
|
QString newValue = value;
|
|
if (value.contains(","))
|
|
newValue = value.left(value.indexOf(","));
|
|
|
|
if (newValue != prefs.divelist_font &&
|
|
!subsurface_ignore_font(qPrintable(newValue))) {
|
|
COPY_TXT(divelist_font, value);
|
|
qApp->setFont(QFont(newValue));
|
|
disk_divelist_font(true);
|
|
emit divelist_font_changed(value);
|
|
}
|
|
}
|
|
DISK_LOADSYNC_TXT(Display, "/divelist_font", divelist_font);
|
|
|
|
GET_PREFERENCE_DOUBLE(Display, font_size);
|
|
void qPrefDisplay::set_font_size(double value)
|
|
{
|
|
if (value != prefs.font_size) {
|
|
prefs.font_size = value;
|
|
QFont defaultFont = qApp->font();
|
|
defaultFont.setPointSizeF(prefs.font_size);
|
|
qApp->setFont(defaultFont);
|
|
disk_font_size(true);
|
|
emit font_size_changed(value);
|
|
}
|
|
}
|
|
DISK_LOADSYNC_DOUBLE(Display, "/font_size", font_size);
|
|
|
|
HANDLE_PREFERENCE_BOOL(Display, "/displayinvalid", display_invalid_dives);
|
|
|
|
HANDLE_PREFERENCE_BOOL(Display, "/show_developer", show_developer);
|
|
|
|
HANDLE_PREFERENCE_TXT(Display, "/theme", theme);
|