ifw-fcf  5.0.0-pre2
qeansipump.hpp
Go to the documentation of this file.
1 #ifndef QEANSIPUMP_H
2 #define QEANSIPUMP_H
3 
4 #include <QObject>
5 #include <QTimer>
6 #include <QWidget>
7 #include <QDebug>
8 
9 
10 class QeAnsiPump : public QWidget
11 {
12  Q_OBJECT
13  Q_PROPERTY(bool vertical MEMBER m_vertical WRITE set_vertical)
14  Q_PROPERTY(bool flashing MEMBER m_flashing WRITE set_flashing)
15  Q_PROPERTY(QColor flash_color MEMBER m_flash_color WRITE set_flash_color)
16  Q_PROPERTY(QColor bg_color MEMBER m_bg_color WRITE setBgColor)
17 
18 public:
19  QeAnsiPump(QWidget *parent = 0);
20 
21 public slots:
22  void set_vertical( bool arg ){ m_vertical = arg; update(); }
23  void set_flashing( bool arg ){ m_flashing = arg; arg ? timer->start(1000): timer->stop(); update(); }
24  void set_flash_color( const QColor &arg ){ m_flash_color = arg; update(); }
25  void setBgColor( const QColor &arg ){ m_bg_color = arg; update(); }
26 
27 protected:
28  void paintEvent(QPaintEvent *event);
29  QSize sizeHint();
30  bool m_vertical;
31  bool m_flashing;
32  QColor m_flash_color;
33  QColor m_bg_color;
34  QTimer *timer;
35 
36  void resizeEvent(QResizeEvent *event);
37 private:
38  virtual void paint_feature(QPainter &painter, QPen &pen, QBrush &lineBrush, QBrush &fillBrush) = 0;
39  void paint_body(QPainter &painter, QPen &pen, QBrush &lineBrush, QBrush &fillBrush);
40 
41 
42 };
43 
44 #endif // QEANSIPUMP_H
Definition: qeansipump.hpp:11
QTimer * timer
Definition: qeansipump.hpp:34
bool m_flashing
Definition: qeansipump.hpp:31
QeAnsiPump(QWidget *parent=0)
Definition: qeansipump.cpp:15
void setBgColor(const QColor &arg)
Definition: qeansipump.hpp:25
bool m_vertical
Definition: qeansipump.hpp:30
QColor bg_color
Definition: qeansipump.hpp:16
void resizeEvent(QResizeEvent *event)
Definition: qeansipump.cpp:79
QColor m_flash_color
Definition: qeansipump.hpp:32
QSize sizeHint()
Definition: qeansipump.cpp:74
void set_flash_color(const QColor &arg)
Definition: qeansipump.hpp:24
bool flashing
Definition: qeansipump.hpp:14
void paintEvent(QPaintEvent *event)
Definition: qeansipump.cpp:38
QColor m_bg_color
Definition: qeansipump.hpp:33
void set_vertical(bool arg)
Definition: qeansipump.hpp:22
bool vertical
Definition: qeansipump.hpp:13
void set_flashing(bool arg)
Definition: qeansipump.hpp:23
QColor flash_color
Definition: qeansipump.hpp:15