obs-studio/UI/absolute-slider.hpp
2024-05-23 18:55:43 -04:00

27 lines
647 B
C++

#pragma once
#include <QMouseEvent>
#include "slider-ignorewheel.hpp"
class AbsoluteSlider : public SliderIgnoreScroll {
Q_OBJECT
public:
AbsoluteSlider(QWidget *parent = nullptr);
AbsoluteSlider(Qt::Orientation orientation, QWidget *parent = nullptr);
signals:
void absoluteSliderHovered(int value);
protected:
virtual void mouseMoveEvent(QMouseEvent *event) override;
virtual void mousePressEvent(QMouseEvent *event) override;
virtual void mouseReleaseEvent(QMouseEvent *event) override;
virtual bool eventFilter(QObject *obj, QEvent *event) override;
int posToRangeValue(QMouseEvent *event);
private:
bool dragging = false;
};