1 | #include "prison.h" |
2 | |
3 | #include <QLineEdit> |
4 | #include <QPushButton> |
5 | #include "prison/BarcodeItem" |
6 | #include "prison/BarcodeWidget" |
7 | #include "prison/DataMatrixBarcode" |
8 | #include "prison/QRCodeBarcode" |
9 | #include "prison/Code39Barcode" |
10 | #include "prison/Code93Barcode" |
11 | #include <QHBoxLayout> |
12 | #include <QGraphicsScene> |
13 | #include <QGraphicsView> |
14 | #include <QGraphicsLinearLayout> |
15 | #include <QSplitter> |
16 | |
17 | void main_window::data_changed() { |
18 | QString result = m_lineedit->text(); |
19 | m_dmi->setData(result); |
20 | m_dmw->setData(result); |
21 | m_qri->setData(result); |
22 | m_qrw->setData(result); |
23 | m_39i->setData(result); |
24 | m_39w->setData(result); |
25 | m_93i->setData(result); |
26 | m_93w->setData(result); |
27 | m_nulli->setData(result); |
28 | m_nullw->setData(result); |
29 | m_dmcolor->setData(result); |
30 | m_qrcolor->setData(result); |
31 | m_39color->setData(result); |
32 | m_93color->setData(result); |
33 | |
34 | } |
35 | |
36 | main_window::main_window() { |
37 | QHBoxLayout* lay = new QHBoxLayout(); |
38 | m_lineedit = new QLineEdit(this); |
39 | QPushButton* but = new QPushButton(this); |
40 | connect(but,SIGNAL(clicked()),SLOT(data_changed())); |
41 | lay->addWidget(m_lineedit); |
42 | lay->addWidget(but); |
43 | |
44 | QVBoxLayout* mainlay = new QVBoxLayout(); |
45 | |
46 | m_dmw = new prison::BarcodeWidget(new prison::DataMatrixBarcode(),this); |
47 | m_qrw = new prison::BarcodeWidget(new prison::QRCodeBarcode(),this); |
48 | m_39w = new prison::BarcodeWidget(new prison::Code39Barcode(),this); |
49 | m_93w = new prison::BarcodeWidget(new prison::Code93Barcode(),this); |
50 | m_dmcolor = new prison::BarcodeWidget(this); |
51 | { |
52 | prison::DataMatrixBarcode* dmcolorcode = new prison::DataMatrixBarcode(); |
53 | dmcolorcode->setForegroundColor(Qt::red); |
54 | dmcolorcode->setBackgroundColor(Qt::darkBlue); |
55 | m_dmcolor->setBarcode(dmcolorcode); |
56 | } |
57 | m_qrcolor = new prison::BarcodeWidget(this); |
58 | { |
59 | prison::QRCodeBarcode* qrcolorcode = new prison::QRCodeBarcode(); |
60 | qrcolorcode->setForegroundColor(Qt::red); |
61 | qrcolorcode->setBackgroundColor(Qt::darkBlue); |
62 | m_qrcolor->setBarcode(qrcolorcode); |
63 | } |
64 | m_39color = new prison::BarcodeWidget(this); |
65 | { |
66 | prison::Code39Barcode* c39colorcode = new prison::Code39Barcode(); |
67 | c39colorcode->setForegroundColor(Qt::red); |
68 | c39colorcode->setBackgroundColor(Qt::darkBlue); |
69 | m_39color->setBarcode(c39colorcode); |
70 | } |
71 | m_93color = new prison::BarcodeWidget(this); |
72 | { |
73 | prison::Code93Barcode* c93colorcode = new prison::Code93Barcode(); |
74 | c93colorcode->setForegroundColor(Qt::red); |
75 | c93colorcode->setBackgroundColor(Qt::darkBlue); |
76 | m_93color->setBarcode(c93colorcode); |
77 | } |
78 | |
79 | QGraphicsScene* scene = new QGraphicsScene(this); |
80 | |
81 | m_dmi = new prison::BarcodeItem(new prison::DataMatrixBarcode()); |
82 | m_qri = new prison::BarcodeItem(new prison::QRCodeBarcode()); |
83 | m_39i = new prison::BarcodeItem(new prison::Code39Barcode()); |
84 | m_93i = new prison::BarcodeItem(new prison::Code93Barcode()); |
85 | |
86 | m_nulli = new prison::BarcodeItem(); |
87 | m_nullw = new prison::BarcodeWidget(); |
88 | |
89 | scene->addItem(m_dmi); |
90 | m_dmi->setPos(0,0); |
91 | scene->addItem(m_qri); |
92 | m_qri->setPos(200,200); |
93 | scene->addItem(m_39i); |
94 | m_39i->setPos(0,400); |
95 | scene->addItem(m_93i); |
96 | m_93i->setPos(200,400); |
97 | scene->addItem(m_nulli); |
98 | m_nulli->setPos(0,200); |
99 | |
100 | prison::BarcodeItem* with_value = new prison::BarcodeItem(); |
101 | with_value->setBarcode(new prison::QRCodeBarcode()); |
102 | with_value->setData("hello" ); |
103 | scene->addItem(with_value); |
104 | with_value->setPos(200,0); |
105 | |
106 | QGraphicsView* v = new QGraphicsView(this); |
107 | v->setScene(scene); |
108 | |
109 | QSplitter* splitter = new QSplitter(Qt::Vertical); |
110 | splitter->addWidget(v); |
111 | splitter->addWidget(m_dmw); |
112 | splitter->addWidget(m_qrw); |
113 | splitter->addWidget(m_39w); |
114 | splitter->addWidget(m_93w); |
115 | splitter->addWidget(m_dmcolor); |
116 | splitter->addWidget(m_qrcolor); |
117 | splitter->addWidget(m_39color); |
118 | splitter->addWidget(m_93color); |
119 | splitter->addWidget(m_nullw); |
120 | |
121 | mainlay->addLayout(lay); |
122 | mainlay->addWidget(splitter); |
123 | setLayout(mainlay); |
124 | |
125 | m_lineedit->setText("AOEUIAOEUIAOEUI" ); |
126 | data_changed(); |
127 | |
128 | } |
129 | |
130 | |
131 | |
132 | |
133 | #include "prison.moc" |
134 | |