#ifndef QMODERNPROGRESSBAR_H #define QMODERNPROGRESSBAR_H #include #include #include #include #include #include #include class QModernProgressBar : public QProgressBar { Q_OBJECT public: QModernProgressBar(QWidget* parent = nullptr); void setIndeterminate(bool indeterminate); bool getIndeterminate(); protected: QTimer* refreshTimer; QPropertyAnimation* indeterminateAnimtion; void paintEvent(QPaintEvent *e) override; private: bool indeterminate; int preIndeterminateValue; protected slots: void updateIndeterminate(); }; #endif // QMODERNPROGRESSBAR_H