Commit af7cf494 authored by Jean-Baptiste Kempf's avatar Jean-Baptiste Kempf

Qt: InputSlider: wheeling on it will seek of 1% in position.

parent 8b5d7fe8
......@@ -107,6 +107,22 @@ void InputSlider::mouseMoveEvent(QMouseEvent *event)
setToolTip( psz_length );
}
void InputSlider::wheelEvent( QWheelEvent *event)
{
/* Don't do anything if we are for somehow reason sliding */
if( !b_sliding )
{
setValue( value() + event->delta()/12 ); /* 12 = 8 * 15 / 10
Since delta is in 1/8 of ° and mouse have steps of 15 °
and that our slider is in 0.1% and we want one step to be a 1%
increment of position */
emit sliderDragged( value()/1000.0 );
}
/* We do accept because for we don't want the parent to change the sound
vol */
event->accept();
}
/* This work is derived from Amarok's work under GPLv2+
- Mark Kretschmann
- Gábor Lehel
......
......@@ -27,9 +27,13 @@
#include "qt4.hpp"
#include <QAbstractSlider>
#include <QSlider>
#include <QMouseEvent>
#include <QWheelEvent>
/* Input Slider derived from QSlider */
class InputSlider : public QSlider
{
Q_OBJECT
......@@ -41,6 +45,7 @@ protected:
virtual void mouseMoveEvent(QMouseEvent *event);
virtual void mousePressEvent(QMouseEvent* event);
virtual void mouseReleaseEvent(QMouseEvent* event);
virtual void wheelEvent(QWheelEvent *event);
private:
bool b_sliding;
int inputLength;
......@@ -54,8 +59,9 @@ signals:
};
/* Sound Slider inherited directly from QAbstractSlider */
class QPaintEvent;
#include <QAbstractSlider>
class SoundSlider : public QAbstractSlider
{
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment