ifw-fcf  5.0.0-pre2
qeheater.hpp
Go to the documentation of this file.
1 #ifndef QEHEATER_H
2 #define QEHEATER_H
3 
4 #include <QObject>
5 #include <QWidget>
6 #include <QLabel>
7 #include <QTimer>
8 
9 class QeHeater : public QLabel
10 {
11  Q_OBJECT
12  Q_PROPERTY(bool vertical MEMBER m_vertical WRITE set_vertical)
13  Q_PROPERTY(bool other_side MEMBER m_other_side WRITE set_other_side)
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(int font_size MEMBER m_font_size WRITE set_font_size)
17 
18 public:
19  explicit QeHeater(QWidget *parent = nullptr);
20 
21 signals:
22 
23 public slots:
24  void set_vertical( bool arg ){ m_vertical = arg; update(); }
25  void set_other_side( bool arg ){ m_other_side = arg; update(); }
26  void set_flashing( bool arg ){ m_flashing = arg; arg ? timer->start(1000): timer->stop(); update(); }
27  void set_flash_color( const QColor &arg ){ m_flash_color = arg; update(); }
28  void set_font_size( const int &arg ){ m_font_size = arg; update(); }
29 
30 protected:
31  QSize sizeHint() const ;
32  QSize minimumSizeHint() const;
33  void paintEvent(QPaintEvent *event);
34  bool m_vertical = false;
35  bool m_other_side = false;
36  bool m_flashing = false;
37  int m_font_size = 0;
38  QColor m_flash_color;
39  QTimer *timer;
40 
41 };
42 
43 #endif // QEHEATER_H
Definition: qeheater.hpp:10
void paintEvent(QPaintEvent *event)
Definition: qeheater.cpp:27
int m_font_size
Definition: qeheater.hpp:37
QColor m_flash_color
Definition: qeheater.hpp:38
bool m_other_side
Definition: qeheater.hpp:35
void set_flashing(bool arg)
Definition: qeheater.hpp:26
void set_vertical(bool arg)
Definition: qeheater.hpp:24
bool other_side
Definition: qeheater.hpp:13
void set_other_side(bool arg)
Definition: qeheater.hpp:25
QeHeater(QWidget *parent=nullptr)
Definition: qeheater.cpp:13
QSize sizeHint() const
Definition: qeheater.cpp:77
QTimer * timer
Definition: qeheater.hpp:39
bool flashing
Definition: qeheater.hpp:14
bool m_flashing
Definition: qeheater.hpp:36
QColor flash_color
Definition: qeheater.hpp:15
bool m_vertical
Definition: qeheater.hpp:34
void set_flash_color(const QColor &arg)
Definition: qeheater.hpp:27
QSize minimumSizeHint() const
Definition: qeheater.cpp:64
bool vertical
Definition: qeheater.hpp:12
void set_font_size(const int &arg)
Definition: qeheater.hpp:28
int font_size
Definition: qeheater.hpp:16