ifw-fcfui 1.0.1
 
Loading...
Searching...
No Matches
qeansivalveremote.hpp
Go to the documentation of this file.
1
5
6#ifndef QEANSIVALVEREMOTE_H
7#define QEANSIVALVEREMOTE_H
8
9#include <QObject>
10#include <QWidget>
11#include <QTimer>
12
13
14class QeAnsiValveRemote : public QWidget
15{
16 Q_OBJECT
17 Q_PROPERTY(bool vertical MEMBER m_vertical WRITE set_vertical)
18 Q_PROPERTY(bool other_side MEMBER m_other_side WRITE set_other_side)
19 Q_PROPERTY(bool flashing MEMBER m_flashing WRITE set_flashing)
20 Q_PROPERTY(QColor flash_color MEMBER m_flash_color WRITE set_flash_color)
21 Q_PROPERTY(bool open MEMBER m_open READ isOpen WRITE setOpen NOTIFY openChanged)
22
23
24public:
25 QeAnsiValveRemote(QWidget *parent = 0);
26 bool isOpen(){ return m_open; };
27
28public slots:
29 void setOpen(bool new_state);
30 void set_vertical( bool arg ){ m_vertical = arg; update(); }
31 void set_other_side( bool arg ){ m_other_side = arg; update(); }
32 void set_flashing( bool arg ){ m_flashing = arg; arg ? timer->start(1000): timer->stop(); update(); }
33 void set_flash_color( const QColor &arg ){ m_flash_color = arg; update(); }
34
35signals:
36 void openChanged(bool open);
37
38
39private:
40 void paintEvent(QPaintEvent *event);
41 bool m_vertical = false;
42 bool m_other_side = false;
43 bool m_flashing = false;
44 bool m_open = false;
45 QColor m_flash_color;
46 QTimer *timer;
47 void resizeEvent(QResizeEvent *event);
48 void paint_handle(QPainter &painter, QPen &pen, QBrush &lineBrush, QBrush &fillBrush);
49 void paint_body(QPainter &painter, QPen &pen, QBrush &lineBrush, QBrush &fillBrush);
50 void paint_text(QPainter &painter, QPen &pen, QBrush &lineBrush, QBrush &fillBrush);
51 QColor m_bg_color;
52
53};
54
55#endif // QEANSIVALVEREMOTE_H
void set_other_side(bool arg)
Definition qeansivalveremote.hpp:31
bool flashing
Definition qeansivalveremote.hpp:19
bool other_side
Definition qeansivalveremote.hpp:18
void set_vertical(bool arg)
Definition qeansivalveremote.hpp:30
void set_flash_color(const QColor &arg)
Definition qeansivalveremote.hpp:33
void set_flashing(bool arg)
Definition qeansivalveremote.hpp:32
void setOpen(bool new_state)
Definition qeansivalveremote.cpp:97
void openChanged(bool open)
bool isOpen()
Definition qeansivalveremote.hpp:26
bool vertical
Definition qeansivalveremote.hpp:17
bool open
Definition qeansivalveremote.hpp:21
QeAnsiValveRemote(QWidget *parent=0)
Definition qeansivalveremote.cpp:19
QColor flash_color
Definition qeansivalveremote.hpp:20