1 #pragma once
2 
3 #include "widget/wnumber.h"
4 
5 class ControlProxy;
6 
7 enum class VerticalPosition {
8     Top,
9     Bottom
10 };
11 
12 enum class DisplayType {
13     Default,
14     Prefix,
15     Range
16 };
17 
18 class WRateRange : public WNumber {
19     Q_OBJECT
20   public:
21     explicit WRateRange(const QString& group, QWidget* parent = nullptr);
22     void setup(const QDomNode& node, const SkinContext& context) override;
23 
24   private slots:
25     void slotRateDirChanged(double dir);
26     void setValue(double range) override;
27 
28   private:
29     ControlProxy* m_pRateRangeControl;
30     ControlProxy* m_pRateDirControl;
31     VerticalPosition m_nodePosition;
32     DisplayType m_nodeDisplay;
33     QString m_nodeText;
34 };
35