-
Notifications
You must be signed in to change notification settings - Fork 9
/
mynewled.h
121 lines (92 loc) · 2.29 KB
/
mynewled.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
#ifndef MYNEWLED_H
#define MYNEWLED_H
#define PYL_LEFT_SPACE 10
#define PYL_TOP_SPACE 10
#define PYL_WIDGET_SPACE 2
#define PYL_RECT_RADIUS 3
#define PYL_H_COUNT 9
#define PYL_V_COUNT 9
#define PYL_BG_COLOR QColor(45,45,45)
#define PYL_NON_START_COLOR QColor(119,119,119)
#define PYL_NON_END_COLOR QColor(89,89,89)
#define PYL_SCHEME1
#ifdef PYL_SCHEME1
#define PYL_QUI_START_COLOR QColor(55,142,234)
#define PYL_QUI_END_COLOR QColor(48,125,207)
#endif
#ifdef PYL_SCHEME2
#define PYL_QUI_START_COLOR QColor(228,93,255)
#define PYL_QUI_END_COLOR QColor(195,79,218)
#endif
#ifdef PYL_SCHEME3
#define PYL_QUI_START_COLOR QColor(162,255,41)
#define PYL_QUI_END_COLOR QColor(138,217,35)
#endif
#include <QDebug>
#ifdef DEBUG_VAR
#undef DEBUG_VAR
#endif
#define DEBUG_VAR(VAR) qDebug() << __FILE__ << ":" << __LINE__ << ":" << __FUNCTION__ << #VAR << ":" << VAR;
#include <QWidget>
#include <QtGui>
class NumberObj : public QObject
{
Q_OBJECT
public:
NumberObj(){}
void addPair(int hCoor,int vCoor)
{
DEBUG_VAR(hCoor);
DEBUG_VAR(vCoor);
m_CoorPairVec.push_back(qMakePair(hCoor,vCoor));
DEBUG_VAR(m_CoorPairVec.count());
}
void clear()
{
m_CoorPairVec.clear();
}
int pairCount() const
{
return m_CoorPairVec.count();
}
bool hasThisPair(int hCoor,int vCoor)
{
int PairCnt = m_CoorPairVec.count();
for(int PairIndex = 0;PairIndex < PairCnt ; PairIndex++)
{
if(m_CoorPairVec.at(PairIndex).first == hCoor &&
m_CoorPairVec.at(PairIndex).second == vCoor)
{
return true;
}
}
return false;
}
private:
QVector< QPair<int,int> > m_CoorPairVec;
};
class myNewLed : public QWidget
{
Q_OBJECT
public:
explicit myNewLed(QWidget *parent = 0);
public:
void setNumber(int num);
void SetmyLedColor(QColor c1,QColor c2);
protected:
void paintEvent(QPaintEvent *);
QSize sizeHint() const
{
return QSize(300,300);
}
private:
void drawBg(QPainter* painter);
void drawLed(QPainter* painter);
QColor myledColor1;
QColor myledColor2;
private:
void initVariables();
NumberObj* zero,*one,*two,*three,*four,*five,*six,*seven,*eight,*nine;
int m_nNum;
};
#endif // MYNEWLED_H