comac_desk_app/ThirdpartyLibs/Libs/windows-x86_64/ElaWidgetTools/include/ElaScrollBar.h

36 lines
1.1 KiB
C++

#ifndef ELASCROLLBAR_H
#define ELASCROLLBAR_H
#include <QAbstractScrollArea>
#include <QScrollBar>
#include "stdafx.h"
class ElaScrollBarPrivate;
class ELA_EXPORT ElaScrollBar : public QScrollBar
{
Q_OBJECT
Q_Q_CREATE(ElaScrollBar)
Q_PROPERTY_CREATE_Q_H(bool, IsAnimation)
Q_PROPERTY_CREATE_Q_H(qreal, SpeedLimit)
public:
explicit ElaScrollBar(QWidget* parent = nullptr);
explicit ElaScrollBar(Qt::Orientation orientation, QWidget* parent = nullptr);
explicit ElaScrollBar(QScrollBar* originScrollBar, QAbstractScrollArea* parent = nullptr);
~ElaScrollBar();
Q_SIGNALS:
Q_SIGNAL void rangeAnimationFinished();
protected:
virtual bool event(QEvent* event) override;
virtual bool eventFilter(QObject* watched, QEvent* event) override;
virtual void mousePressEvent(QMouseEvent* event) override;
virtual void mouseReleaseEvent(QMouseEvent* event) override;
virtual void mouseMoveEvent(QMouseEvent* event) override;
virtual void wheelEvent(QWheelEvent* event) override;
virtual void contextMenuEvent(QContextMenuEvent* event) override;
};
#endif // ELASCROLLBAR_H