ifw-fcf  4.1.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
QeHeater::flash_color
QColor flash_color
Definition: qeheater.hpp:15
QeHeater::other_side
bool other_side
Definition: qeheater.hpp:13
QeHeater::paintEvent
void paintEvent(QPaintEvent *event)
Definition: qeheater.cpp:27
QeHeater::m_flash_color
QColor m_flash_color
Definition: qeheater.hpp:38
QeHeater::m_vertical
bool m_vertical
Definition: qeheater.hpp:34
QeHeater::minimumSizeHint
QSize minimumSizeHint() const
Definition: qeheater.cpp:64
QeHeater::set_vertical
void set_vertical(bool arg)
Definition: qeheater.hpp:24
QeHeater::m_other_side
bool m_other_side
Definition: qeheater.hpp:35
QeHeater::set_flashing
void set_flashing(bool arg)
Definition: qeheater.hpp:26
QeHeater::sizeHint
QSize sizeHint() const
Definition: qeheater.cpp:77
QeHeater::set_font_size
void set_font_size(const int &arg)
Definition: qeheater.hpp:28
QeHeater::vertical
bool vertical
Definition: qeheater.hpp:12
QeHeater::QeHeater
QeHeater(QWidget *parent=nullptr)
Definition: qeheater.cpp:13
QeHeater
Definition: qeheater.hpp:10
QeHeater::flashing
bool flashing
Definition: qeheater.hpp:14
QeHeater::m_flashing
bool m_flashing
Definition: qeheater.hpp:36
QeHeater::font_size
int font_size
Definition: qeheater.hpp:16
QeHeater::set_other_side
void set_other_side(bool arg)
Definition: qeheater.hpp:25
QeHeater::timer
QTimer * timer
Definition: qeheater.hpp:39
QeHeater::set_flash_color
void set_flash_color(const QColor &arg)
Definition: qeheater.hpp:27
QeHeater::m_font_size
int m_font_size
Definition: qeheater.hpp:37