]> git.sesse.net Git - nageru/blob - nonlinear_fader.h
4126fbd5bd1e6963908b8d885272ceeb955d1ee3
[nageru] / nonlinear_fader.h
1 #ifndef _NONLINEAR_FADER_H
2 #define _NONLINEAR_FADER_H 1
3
4 #include <QSlider>
5
6 class NonLinearFader : public QSlider {
7         Q_OBJECT
8
9 public:
10         NonLinearFader(QWidget *parent);
11         void setDbValue(double db);
12
13 signals:
14         void dbValueChanged(double db);
15
16 protected:
17         void paintEvent(QPaintEvent *event) override;
18         void resizeEvent(QResizeEvent *event) override;
19         void sliderChange(SliderChange change) override;
20
21 private:
22         void update_slider_position();
23
24         bool inhibit_updates = false;
25         double db_value = 0.0;
26 };
27
28 #endif  // !defined(_NONLINEAR_FADER_H)