summaryrefslogtreecommitdiff
path: root/src/ui/balanceknob.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/ui/balanceknob.h')
-rw-r--r--src/ui/balanceknob.h34
1 files changed, 34 insertions, 0 deletions
diff --git a/src/ui/balanceknob.h b/src/ui/balanceknob.h
new file mode 100644
index 0000000..e8d0be2
--- /dev/null
+++ b/src/ui/balanceknob.h
@@ -0,0 +1,34 @@
+#pragma once
+
+#include <tqwidget.h>
+
+class BalanceKnob : public TQWidget
+{
+ TQ_OBJECT
+
+public:
+ BalanceKnob( int minVal, int maxVal, int val, TQWidget *parent = 0 );
+
+ int value() const { return m_value; }
+ TQSize sizeHint() const { return TQSize(30, 30); }
+
+public slots:
+ void setValue( int v );
+
+signals:
+ void valueChanged( int v );
+
+protected:
+ void paintEvent( TQPaintEvent * );
+ void mousePressEvent( TQMouseEvent *e );
+ void mouseMoveEvent( TQMouseEvent *e );
+ void mouseReleaseEvent( TQMouseEvent *e );
+ void mouseDoubleClickEvent( TQMouseEvent *e );
+ void wheelEvent( TQWheelEvent *e );
+
+private:
+ int m_min, m_max, m_value;
+ int m_dragY;
+ int m_dragValue;
+ bool m_dragging;
+};