mirror of
https://github.com/subsurface/subsurface.git
synced 2025-01-19 14:25:27 +00:00
Added Display Settings
Signed-off-by: Tomaz Canabrava <tomaz.canabrava@intel.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
This commit is contained in:
parent
e7412b11b9
commit
15fece7da2
2 changed files with 81 additions and 4 deletions
|
@ -1,5 +1,8 @@
|
|||
#include "SettingsObjectWrapper.h"
|
||||
#include <QSettings>
|
||||
#include <QApplication>
|
||||
#include <QFont>
|
||||
|
||||
#include "../dive.h" // TODO: remove copy_string from dive.h
|
||||
|
||||
|
||||
|
@ -1331,3 +1334,58 @@ void GeneralSettingsObjectWrapper::setPscrRatio(int value)
|
|||
prefs.pscr_ratio = value.;
|
||||
emit pscrRatioChanged(value);
|
||||
}
|
||||
|
||||
DisplaySettingsObjectWrapper::DisplaySettingsObjectWrapper(QObject *parent) :
|
||||
QObject(parent),
|
||||
group(QStringLiteral("Display"))
|
||||
{
|
||||
}
|
||||
|
||||
QString DisplaySettingsObjectWrapper::divelistFont() const
|
||||
{
|
||||
return prefs.divelist_font;
|
||||
}
|
||||
|
||||
double DisplaySettingsObjectWrapper::fontSize() const
|
||||
{
|
||||
return prefs.font_size;
|
||||
}
|
||||
|
||||
short DisplaySettingsObjectWrapper::displayInvalidDives() const
|
||||
{
|
||||
return prefs.display_invalid_dives;
|
||||
}
|
||||
|
||||
void DisplaySettingsObjectWrapper::setDivelistFont(const QString& value)
|
||||
{
|
||||
QSettings s;
|
||||
s.setValue("divelist_font", value);
|
||||
if (value.contains(","))
|
||||
value = value.left(value.indexOf(","));
|
||||
|
||||
if (!subsurface_ignore_font(value.toUtf8().constData())) {
|
||||
free((void *)prefs.divelist_font);
|
||||
prefs.divelist_font = strdup(value.toUtf8().constData());
|
||||
qApp->setFont(QFont(value));
|
||||
}
|
||||
emit divelistFontChanged(value);
|
||||
}
|
||||
|
||||
void DisplaySettingsObjectWrapper::setFontSize(double value)
|
||||
{
|
||||
QSettings s;
|
||||
s.setValue("font_size", value);
|
||||
prefs.font_size = value.;
|
||||
QFont defaultFont = qApp->font();
|
||||
defaultFont.setPointSizeF(prefs.font_size);
|
||||
qApp->setFont(defaultFont);
|
||||
emit fontSizeChanged(value);
|
||||
}
|
||||
|
||||
void DisplaySettingsObjectWrapper::setDisplayInvalidDives(short value)
|
||||
{
|
||||
QSettings s;
|
||||
s.setValue("displayinvalid", value);
|
||||
prefs.display_invalid_dives = value.;
|
||||
emit displayInvalidDivesChanged(value);
|
||||
}
|
||||
|
|
|
@ -489,20 +489,38 @@ signals:
|
|||
void pscrRatioChanged(int value);
|
||||
private:
|
||||
QString group;
|
||||
};
|
||||
|
||||
class DisplaySettingsObjectWrapper : public QObject {
|
||||
Q_OBJECT
|
||||
Q_PROPERTY(QString divelist_font READ divelistFont WRITE setDivelistFont NOTIFY divelistFontChanged)
|
||||
Q_PROPERTY(double font_size READ fontSize WRITE setFontSize NOTIFY fontSizeChanged)
|
||||
Q_PROPERTY(short display_invalid_dives READ displayInvalidDives WRITE setDisplayInvalidDives NOTIFY displayInvalidDivesChanged)
|
||||
public:
|
||||
DisplaySettingsObjectWrapper(QObject *parent);
|
||||
QString divelistFont() const;
|
||||
double fontSize() const;
|
||||
short displayInvalidDives() const;
|
||||
public slots:
|
||||
void setDivelistFont(const QString& value);
|
||||
void setFontSize(double value);
|
||||
void setDisplayInvalidDives(short value);
|
||||
signals:
|
||||
void divelistFontChanged(const QString& value);
|
||||
void fontSizeChanged(double value);
|
||||
void displayInvalidDivesChanged(short value);
|
||||
private:
|
||||
QString group;
|
||||
};
|
||||
|
||||
class SettingsObjectWrapper : public QObject {
|
||||
Q_OBJECT
|
||||
Q_PROPERTY(QString divelist_font READ divelistFont WRITE setDivelistFont NOTIFY divelistFontChanged)
|
||||
|
||||
Q_PROPERTY(QString time_format READ timeFormat WRITE setTimeFormat NOTIFY timeFormatChanged)
|
||||
Q_PROPERTY(QString date_format READ dateFormat WRITE setDateFormat NOTIFY dateFormatChanged)
|
||||
Q_PROPERTY(QString date_format_short READ dateFormatShort WRITE setDateFormatShort NOTIFY dateFormatShortChanged)
|
||||
Q_PROPERTY(bool time_format_override READ timeFormatOverride WRITE setTimeFormatOverride NOTIFY timeFormatOverrideChanged)
|
||||
Q_PROPERTY(bool date_format_override READ dateFormatOverride WRITE setDateFormatOverride NOTIFY dateFormatOverrideChanged)
|
||||
Q_PROPERTY(double font_size READ fontSize WRITE setFontSize NOTIFY fontSizeChanged)
|
||||
Q_PROPERTY(int animation_speed READ animationSpeed WRITE setAnimationSpeed NOTIFY animationSpeedChanged)
|
||||
Q_PROPERTY(short display_invalid_dives READ displayInvalidDives WRITE setDisplayInvalidDives NOTIFY displayInvalidDivesChanged)
|
||||
Q_PROPERTY(short unit_system READ unitSystem WRITE setUnitSystem NOTIFY uintSystemChanged)
|
||||
Q_PROPERTY(bool coordinates_traditional READ coordinatesTraditional WRITE setCoordinatesTraditional NOTIFY coordinatesTraditionalChanged)
|
||||
Q_PROPERTY(short save_userid_local READ saveUserIdLocal WRITE setSaveUserIdLocal NOTIFY saveUserIdLocalChanged)
|
||||
|
@ -520,6 +538,7 @@ class SettingsObjectWrapper : public QObject {
|
|||
DivePlannerSettings *planner_settings;
|
||||
UnitsSettings *unit_settings;
|
||||
GeneralSettingsObjectWrapper *general_settings;
|
||||
DisplaySettingsObjectWrapper *display_settings;
|
||||
public:
|
||||
SettingsObjectWrapper(QObject *parent = NULL);
|
||||
};
|
||||
|
|
Loading…
Add table
Reference in a new issue