summaryrefslogtreecommitdiffhomepage
path: root/filter-ewma2/ftnoir_filter_ewma2_dialog.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'filter-ewma2/ftnoir_filter_ewma2_dialog.cpp')
-rw-r--r--filter-ewma2/ftnoir_filter_ewma2_dialog.cpp26
1 files changed, 14 insertions, 12 deletions
diff --git a/filter-ewma2/ftnoir_filter_ewma2_dialog.cpp b/filter-ewma2/ftnoir_filter_ewma2_dialog.cpp
index ad07737b..55e9782e 100644
--- a/filter-ewma2/ftnoir_filter_ewma2_dialog.cpp
+++ b/filter-ewma2/ftnoir_filter_ewma2_dialog.cpp
@@ -1,7 +1,10 @@
#include "ftnoir_filter_ewma2.h"
+
#include <cmath>
+
#include <QDebug>
#include <QString>
+
#include "api/plugin-api.hpp"
#include "ui_ftnoir_ewma_filtercontrols.h"
@@ -16,17 +19,23 @@ dialog_ewma::dialog_ewma()
tie_setting(s.kMinSmoothing, ui.minSmooth);
tie_setting(s.kSmoothingScaleCurve, ui.powCurve);
- connect(ui.powCurve, &QSlider::valueChanged, this, &dialog_ewma::update_labels);
- connect(ui.minSmooth, &QSlider::valueChanged, this, &dialog_ewma::update_labels);
- connect(ui.maxSmooth, &QSlider::valueChanged, this, &dialog_ewma::update_labels);
+ tie_setting(s.kSmoothingScaleCurve, ui.curve_label,
+ [](auto& x) { return x * 100; },
+ "%1%", 0, 'f', 2);
+
+ tie_setting(s.kMinSmoothing, ui.min_label,
+ [](auto& x) { return x * 100; },
+ "%1%", 0, 'f', 2);
+
+ tie_setting(s.kMaxSmoothing, ui.max_label,
+ [](auto& x) { return x * 100; },
+ "%1%", 0, 'f', 2);
connect(ui.minSmooth, &QSlider::valueChanged, this,
[&](int v) -> void { if (ui.maxSmooth->value() < v) ui.maxSmooth->setValue(v); });
connect(ui.maxSmooth, &QSlider::valueChanged, this,
[&](int v) -> void { if (ui.minSmooth->value() > v) ui.minSmooth->setValue(v); });
-
- update_labels(0);
}
void dialog_ewma::doOK()
@@ -39,10 +48,3 @@ void dialog_ewma::doCancel()
{
close();
}
-
-void dialog_ewma::update_labels(int)
-{
- ui.curve_label->setText(QString::number(static_cast<slider_value>(s.kSmoothingScaleCurve).cur() * 100, 'f', 2) + "%");
- ui.min_label->setText(QString::number(static_cast<slider_value>(s.kMinSmoothing).cur() * 100, 'f', 2) + "%");
- ui.max_label->setText(QString::number(static_cast<slider_value>(s.kMaxSmoothing).cur() * 100, 'f', 2) + "%");
-}