1 files changed, 49 insertions, 0 deletions
diff --git a/include/ui/LoadingIndicator.h b/include/ui/LoadingIndicator.h
new file mode 100644
index 00000000..2641955a
--- /dev/null
+++ b/include/ui/LoadingIndicator.h
@@ -0,0 +1,49 @@
+#pragma once
+
+#include <QColor>
+#include <QPaintEvent>
+#include <QPainter>
+#include <QTimer>
+#include <QWidget>
+
+class LoadingIndicator : public QWidget
+{
+ Q_OBJECT
+
+public:
+ LoadingIndicator(QWidget *parent = 0);
+ virtual ~LoadingIndicator();
+
+ void paintEvent(QPaintEvent *e);
+
+ void start();
+ void stop();
+
+ QColor color()
+ {
+ return color_;
+ }
+ void setColor(QColor color)
+ {
+ color_ = color;
+ }
+
+ int interval()
+ {
+ return interval_;
+ }
+ void setInterval(int interval)
+ {
+ interval_ = interval;
+ }
+
+private slots:
+ void onTimeout();
+
+private:
+ int interval_;
+ int angle_;
+
+ QColor color_;
+ QTimer *timer_;
+};
|