Quark  0.1
ActivityIndicator.h++
Go to the documentation of this file.
1 
2 #ifndef __libquark_gui_ActivityIndicator_hxx
3 #define __libquark_gui_ActivityIndicator_hxx
4 
5 #include <QColor>
6 #include <QPaintEvent>
7 #include <QResizeEvent>
8 #include <QTimer>
9 #include <QWidget>
10 
11 #include <quark/Quark.h++>
12 
13 namespace quark {
14 namespace gui {
15 
22 class LIBQUARK_API ActivityIndicator : public QWidget
23 {
24  Q_OBJECT;
25 
26  public:
27 
29  explicit ActivityIndicator(QWidget *parent = NULL);
30 
32  virtual ~ActivityIndicator();
33 
34  public slots:
35 
37  void setColor(const QColor &color);
38 
40  void setActive(bool busy);
41 
43  void start();
44 
46  void stop();
47 
48  protected:
49 
50  virtual void paintEvent(QPaintEvent *event);
51  virtual void resizeEvent(QResizeEvent *event);
52 
53  private slots:
54 
55  void animate();
56 
57  private:
58 
59  QTimer _timer;
60  QColor _color;
61  int _position;
62  int _barWidth;
63  int _barHalfWidth;
64  int _barLength;
65  int _radius;
66  int _cornerRadius;
67  int _x0;
68  int _y0;
69 };
70 
71 } // namespace gui
72 } // namespace quark
73 
74 #endif // __libquark_gui_ActivityIndicator_hxx
An animated component (a "throbber") that indicates ongoing activity in an application.
Definition: ActivityIndicator.h++:22
Definition: BarChartView.h++:6
#define LIBQUARK_API
Definition: Quark.h++:18