aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/options.cpp10
-rw-r--r--src/options.h4
-rw-r--r--src/widgets/aooptionsdialog.cpp17
-rw-r--r--src/widgets/aooptionsdialog.h2
4 files changed, 23 insertions, 10 deletions
diff --git a/src/options.cpp b/src/options.cpp
index 0827399a..818ad852 100644
--- a/src/options.cpp
+++ b/src/options.cpp
@@ -92,17 +92,17 @@ void Options::setTheme(QString value)
config.setValue("theme", value);
}
-int Options::themeScalingFactor() const
+double Options::themeScalingFactor() const
{
- int value = config.value("theme_scaling_factor", "1").toInt();
- if (value <= 0)
+ double value = config.value("theme_scaling_factor", "1").toDouble();
+ if (value < 0.1)
{
- value = 1;
+ value = 0.1;
}
return value;
}
-void Options::setThemeScalingFactor(int value)
+void Options::setThemeScalingFactor(double value)
{
config.setValue("theme_scaling_factor", value);
}
diff --git a/src/options.h b/src/options.h
index 58b02253..dfa7c2c3 100644
--- a/src/options.h
+++ b/src/options.h
@@ -30,8 +30,8 @@ public:
QString theme() const;
void setTheme(QString value);
- int themeScalingFactor() const;
- void setThemeScalingFactor(int value);
+ double themeScalingFactor() const;
+ void setThemeScalingFactor(double value);
// Returns the blip rate from config.ini (once per X symbols)
int blipRate() const;
diff --git a/src/widgets/aooptionsdialog.cpp b/src/widgets/aooptionsdialog.cpp
index 67f9c1ca..81d5eb70 100644
--- a/src/widgets/aooptionsdialog.cpp
+++ b/src/widgets/aooptionsdialog.cpp
@@ -10,6 +10,7 @@
#include <bass.h>
#include <QCollator>
+#include <QDoubleSpinBox>
#include <QGroupBox>
#include <QResource>
#include <QUiLoader>
@@ -98,6 +99,18 @@ int AOOptionsDialog::widgetData(QSpinBox *widget) const
}
template <>
+void AOOptionsDialog::setWidgetData(QDoubleSpinBox *widget, const double &value)
+{
+ widget->setValue(value);
+}
+
+template <>
+double AOOptionsDialog::widgetData(QDoubleSpinBox *widget) const
+{
+ return widget->value();
+}
+
+template <>
void AOOptionsDialog::setWidgetData(QComboBox *widget, const QString &value)
{
for (auto i = 0; i < widget->count(); i++)
@@ -344,7 +357,7 @@ void AOOptionsDialog::setupUI()
QDesktopServices::openUrl(QUrl::fromLocalFile(p_path));
});
- FROM_UI(QSpinBox, theme_scaling_factor_sb);
+ FROM_UI(QDoubleSpinBox, theme_scaling_factor_sb);
FROM_UI(QCheckBox, animated_theme_cb);
FROM_UI(QSpinBox, stay_time_spinbox);
FROM_UI(QCheckBox, instant_objection_cb);
@@ -374,7 +387,7 @@ void AOOptionsDialog::setupUI()
FROM_UI(QCheckBox, restoreposition_cb);
FROM_UI(QLineEdit, playerlist_format_edit);
- registerOption<QSpinBox, int>("theme_scaling_factor_sb", &Options::themeScalingFactor, &Options::setThemeScalingFactor);
+ registerOption<QDoubleSpinBox, double>("theme_scaling_factor_sb", &Options::themeScalingFactor, &Options::setThemeScalingFactor);
registerOption<QCheckBox, bool>("animated_theme_cb", &Options::animatedThemeEnabled, &Options::setAnimatedThemeEnabled);
registerOption<QSpinBox, int>("stay_time_spinbox", &Options::textStayTime, &Options::setTextStayTime);
registerOption<QCheckBox, bool>("instant_objection_cb", &Options::objectionSkipQueueEnabled, &Options::setObjectionSkipQueueEnabled);
diff --git a/src/widgets/aooptionsdialog.h b/src/widgets/aooptionsdialog.h
index 4409c9ef..b89607dc 100644
--- a/src/widgets/aooptionsdialog.h
+++ b/src/widgets/aooptionsdialog.h
@@ -43,7 +43,7 @@ private:
QWidget *ui_settings_widget;
QComboBox *ui_theme_combobox;
QComboBox *ui_subtheme_combobox;
- QSpinBox *ui_theme_scaling_factor_sb;
+ QDoubleSpinBox *ui_theme_scaling_factor_sb;
QPushButton *ui_theme_reload_button;
QPushButton *ui_theme_folder_button;
QCheckBox *ui_evidence_double_click_cb;