개정판 e0b4e318
1. Symbol 속성 창 Readonly 수정
2. Symbol Id Column 삭제
#477
DTI_PID/DTI_PID/AppDocData.py | ||
---|---|---|
307 | 307 |
conn = sqlite3.connect(dbPath) |
308 | 308 |
|
309 | 309 |
INSERT_SYMBOL_SQL = ''' |
310 |
INSERT INTO Symbol(symId, name, type, threshold, minMatchPoint, isDetectOrigin, rotationCount, ocrOption, isContainChild, originalPoint, connectionPoint, baseSymbol, additionalSymbol, isExceptDetect, hasInstrumentLabel)
|
|
311 |
VALUES(?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?);
|
|
310 |
INSERT INTO Symbol(name, type, threshold, minMatchPoint, isDetectOrigin, rotationCount, ocrOption, isContainChild, originalPoint, connectionPoint, baseSymbol, additionalSymbol, isExceptDetect, hasInstrumentLabel) |
|
311 |
VALUES(?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?); |
|
312 | 312 |
''' |
313 | 313 | |
314 | 314 |
cursor = conn.cursor() |
315 |
query = (symbol.getId(), symbol.getName(), symbol.getType(), symbol.getThreshold()
|
|
315 |
query = ( symbol.getName(), symbol.getType(), symbol.getThreshold() |
|
316 | 316 |
, symbol.getMinMatchCount(), symbol.getIsDetectOnOrigin(), symbol.getRotationCount() |
317 | 317 |
, symbol.getOcrOption(), symbol.getIsContainChild() |
318 | 318 |
, symbol.getOriginalPoint(), symbol.getConnectionPoint() |
... | ... | |
343 | 343 |
UPDATE_SYMBOL_SQL = ''' |
344 | 344 |
UPDATE Symbol |
345 | 345 |
SET |
346 |
symId = ?, name = ?, type = ?, threshold = ?, minMatchPoint = ?, isDetectOrigin = ?,
|
|
346 |
name = ?, type = ?, threshold = ?, minMatchPoint = ?, isDetectOrigin = ?, |
|
347 | 347 |
rotationCount = ?, ocrOption = ?, isContainChild = ?, originalPoint = ?, connectionPoint = ?, |
348 | 348 |
baseSymbol = ?, additionalSymbol = ?, isExceptDetect = ?, hasInstrumentLabel = ? |
349 | 349 |
WHERE uid = ? |
350 | 350 |
''' |
351 | 351 |
|
352 | 352 |
cursor = conn.cursor() |
353 |
query = (symbol.getId(), symbol.getName(), symbol.getType(), symbol.getThreshold()
|
|
353 |
query = (symbol.getName(), symbol.getType(), symbol.getThreshold() |
|
354 | 354 |
, symbol.getMinMatchCount(), symbol.getIsDetectOnOrigin(), symbol.getRotationCount() |
355 | 355 |
, symbol.getOcrOption(), symbol.getIsContainChild() |
356 | 356 |
, symbol.getOriginalPoint(), symbol.getConnectionPoint() |
... | ... | |
1048 | 1048 |
rows = cursor.fetchall() |
1049 | 1049 |
if rows is not None and len(rows) > 0: |
1050 | 1050 |
symbolTuple = rows[0] |
1051 |
ret = symbol.SymbolBase(symbolTuple[1], symbolTuple[2], symbolTuple[3], symbolTuple[4]
|
|
1052 |
, symbolTuple[5], symbolTuple[6], symbolTuple[7], symbolTuple[8], symbolTuple[9]
|
|
1053 |
, symbolTuple[10], symbolTuple[11], symbolTuple[12], symbolTuple[13], symbolTuple[14], symbolTuple[15], symbolTuple[0]) ## uid is last item
|
|
1051 |
ret = symbol.SymbolBase(symbolTuple[1], symbolTuple[2], symbolTuple[3] |
|
1052 |
, symbolTuple[4], symbolTuple[5], symbolTuple[6], symbolTuple[7], symbolTuple[8]
|
|
1053 |
, symbolTuple[9], symbolTuple[10], symbolTuple[11], symbolTuple[12], symbolTuple[13], symbolTuple[14], symbolTuple[0]) ## uid is last item
|
|
1054 | 1054 |
#ret = symbol.SymbolBase(symbolTuple[1], symbolTuple[2], symbolTuple[3], symbolTuple[4] |
1055 | 1055 |
# , symbolTuple[5], symbolTuple[6], symbolTuple[7], symbolTuple[8], symbolTuple[9] |
1056 | 1056 |
# , symbolTuple[10], symbolTuple[11], symbolTuple[12], symbolTuple[13], symbolTuple[14], symbolTuple[0]) ## uid is last item |
DTI_PID/DTI_PID/DTI_PID.py | ||
---|---|---|
75 | 75 | |
76 | 76 |
result = False |
77 | 77 |
for sym in searchedSymbolList: |
78 |
symId = sym.getId() |
|
78 |
#symId = sym.getId()
|
|
79 | 79 |
symSp = sym.getSp() |
80 | 80 |
symWidth = sym.getWidth() |
81 | 81 |
symHeight = sym.getHeight() |
... | ... | |
323 | 323 |
global maxProgressValue |
324 | 324 |
|
325 | 325 |
try: |
326 |
symId = targetSymbol.getId() |
|
326 |
#symId = targetSymbol.getId()
|
|
327 | 327 |
symbolName = targetSymbol.getName() |
328 | 328 |
symbolType = targetSymbol.getType() |
329 | 329 |
symbolPath = targetSymbol.getPath() |
... | ... | |
547 | 547 |
global searchedSymbolList |
548 | 548 |
global textInfoList |
549 | 549 | |
550 |
symbolId = symbol.getId() |
|
550 |
#symbolId = symbol.getId()
|
|
551 | 551 |
symbolPath = symbol.getPath() |
552 | 552 |
symbolSp = symbol.getSp() |
553 | 553 |
symbolWidth = symbol.getWidth() |
DTI_PID/DTI_PID/DTI_PID.pyproj | ||
---|---|---|
57 | 57 |
<Compile Include="SymbolBase.py"> |
58 | 58 |
<SubType>Code</SubType> |
59 | 59 |
</Compile> |
60 |
<Compile Include="SymbolEditor_UI.py" /> |
|
60 | 61 |
<Compile Include="tesseract_ocr_module.py"> |
61 | 62 |
<SubType>Code</SubType> |
62 | 63 |
</Compile> |
DTI_PID/DTI_PID/QPropertyTableWidget.py | ||
---|---|---|
20 | 20 |
self.initPropertyTableWidget() |
21 | 21 |
self.symData = None |
22 | 22 | |
23 |
''' |
|
24 |
@Auther Yecheol |
|
25 |
@Date 2018-07-04 |
|
26 |
@History Add Instrument Label YN Column |
|
27 |
''' |
|
28 | ||
23 | 29 |
def initPropertyTableWidget(self): |
24 | 30 |
self.setColumnCount(2) |
25 | 31 |
self.setRowCount(12) |
... | ... | |
34 | 40 |
rotationCountSpinBox.setRange(0, 3) |
35 | 41 |
rotationCountSpinBox.setSingleStep(1) |
36 | 42 |
rotationCountSpinBox.setValue(0) |
37 |
self.setCellWidget(4, 1, rotationCountSpinBox) |
|
43 |
rotationCountSpinBox.setEnabled(False) |
|
44 |
self.setCellWidget(3, 1, rotationCountSpinBox) |
|
38 | 45 | |
39 | 46 |
### IsContainChild CheckBox Init |
40 | 47 |
isContainChildCheckBox = QCheckBox() |
41 |
self.setCellWidget(5, 1, isContainChildCheckBox) |
|
48 |
isContainChildCheckBox.setEnabled(False) |
|
49 |
self.setCellWidget(4, 1, isContainChildCheckBox) |
|
42 | 50 | |
43 | 51 |
### Symbol Type ComboBox Init |
44 | 52 |
symbolTypeComboBox = QComboBox() |
45 | 53 |
for name in AppDocData.instance().getSymbolTypeComboBoxItems(): |
46 | 54 |
symbolTypeComboBox.addItem(name) |
47 |
self.setCellWidget(6, 1, symbolTypeComboBox) |
|
55 |
symbolTypeComboBox.setEnabled(False) |
|
56 |
self.setCellWidget(5, 1, symbolTypeComboBox) |
|
48 | 57 | |
49 | 58 |
### Base Symbol ComboBox Init |
50 | 59 |
baseSymbolComboBox = QComboBox() |
51 | 60 |
for name in AppDocData.instance().getBaseSymbolComboBoxItems(): |
52 | 61 |
baseSymbolComboBox.addItem(name) |
53 |
self.setCellWidget(7, 1, baseSymbolComboBox) |
|
62 |
baseSymbolComboBox.setEnabled(False) |
|
63 |
self.setCellWidget(6, 1, baseSymbolComboBox) |
|
54 | 64 | |
55 | 65 |
### IsExceptDetect CheckBox Init |
56 | 66 |
isExceptDetectCheckBox = QCheckBox() |
57 |
self.setCellWidget(11, 1, isExceptDetectCheckBox) |
|
67 |
isExceptDetectCheckBox.setEnabled(False) |
|
68 |
self.setCellWidget(10, 1, isExceptDetectCheckBox) |
|
69 | ||
70 |
### hasInstrumentLabel CheckBox Init |
|
71 |
hasInstrumentLabelCheckBox = QCheckBox() |
|
72 |
hasInstrumentLabelCheckBox.setEnabled(False) |
|
73 |
self.setCellWidget(11, 1, hasInstrumentLabelCheckBox) |
|
58 | 74 | |
59 | 75 |
''' |
60 | 76 |
@brief Init contents and background color in Title cell |
61 | 77 |
''' |
62 | 78 |
def initTitleCell(self): |
63 |
self.setItem(0, 0, QTableWidgetItem("심볼ID")) |
|
64 |
self.setItem(1, 0, QTableWidgetItem("심볼명")) |
|
65 |
self.setItem(2, 0, QTableWidgetItem("임계값(%)")) |
|
66 |
self.setItem(3, 0, QTableWidgetItem("최소 특징점 수")) |
|
67 |
self.setItem(4, 0, QTableWidgetItem("검출 시 심볼 회전 수")) |
|
68 |
self.setItem(5, 0, QTableWidgetItem("자식 심볼 포함 여부")) |
|
69 |
self.setItem(6, 0, QTableWidgetItem("심볼 타입")) |
|
70 |
self.setItem(7, 0, QTableWidgetItem("기초 심볼")) |
|
71 |
self.setItem(8, 0, QTableWidgetItem("부가 심볼")) |
|
72 |
self.setItem(9, 0, QTableWidgetItem("Original Point")) |
|
73 |
self.setItem(10, 0, QTableWidgetItem("Connection Point")) |
|
74 |
self.setItem(11, 0, QTableWidgetItem("검출 시 미포함 여부")) |
|
79 |
#self.setItem(0, 0, QTableWidgetItem("심볼ID")) |
|
80 |
#self.setItem(0, 0, QTableWidgetItem("심볼명")) |
|
81 |
#self.setItem(1, 0, QTableWidgetItem("임계값(%)")) |
|
82 |
#self.setItem(2, 0, QTableWidgetItem("최소 특징점 수")) |
|
83 |
#self.setItem(3, 0, QTableWidgetItem("검출 시 심볼 회전 수")) |
|
84 |
#self.setItem(4, 0, QTableWidgetItem("자식 심볼 포함 여부")) |
|
85 |
#self.setItem(5, 0, QTableWidgetItem("심볼 타입")) |
|
86 |
#self.setItem(6, 0, QTableWidgetItem("기초 심볼")) |
|
87 |
#self.setItem(7, 0, QTableWidgetItem("부가 심볼")) |
|
88 |
#self.setItem(8, 0, QTableWidgetItem("Original Point")) |
|
89 |
#self.setItem(9, 0, QTableWidgetItem("Connection Point")) |
|
90 |
#self.setItem(10, 0, QTableWidgetItem("검출 시 미포함 여부")) |
|
91 |
#self.setItem(11, 0, QTableWidgetItem("Instrument Label 여부")) |
|
92 | ||
93 |
item1 = QTableWidgetItem("심볼명") |
|
94 |
item1.setFlags(Qt.ItemIsEnabled) |
|
95 |
self.setItem(0, 0, item1) |
|
96 | ||
97 |
item2 = QTableWidgetItem("임계값(%)") |
|
98 |
item2.setFlags(Qt.ItemIsEnabled) |
|
99 |
self.setItem(1, 0, item2) |
|
100 | ||
101 |
item3 = QTableWidgetItem("최소 특징점 수") |
|
102 |
item3.setFlags(Qt.ItemIsEnabled) |
|
103 |
self.setItem(2, 0, item3) |
|
104 | ||
105 |
item4 = QTableWidgetItem("검출 시 심볼 회전 수") |
|
106 |
item4.setFlags(Qt.ItemIsEnabled) |
|
107 |
self.setItem(3, 0, item4) |
|
108 | ||
109 |
item5 = QTableWidgetItem("자식 심볼 포함 여부") |
|
110 |
item5.setFlags(Qt.ItemIsEnabled) |
|
111 |
self.setItem(4, 0, item5) |
|
112 | ||
113 |
item6 = QTableWidgetItem("심볼 타입") |
|
114 |
item6.setFlags(Qt.ItemIsEnabled) |
|
115 |
self.setItem(5, 0, item6) |
|
116 | ||
117 |
item7 = QTableWidgetItem("기초 심볼") |
|
118 |
item7.setFlags(Qt.ItemIsEnabled) |
|
119 |
self.setItem(6, 0, item7) |
|
120 | ||
121 |
item8 = QTableWidgetItem("부가 심볼") |
|
122 |
item8.setFlags(Qt.ItemIsEnabled) |
|
123 |
self.setItem(7, 0, item8) |
|
124 | ||
125 |
item9 = QTableWidgetItem("Original Point") |
|
126 |
item9.setFlags(Qt.ItemIsEnabled) |
|
127 |
self.setItem(8, 0, item9) |
|
128 | ||
129 |
item10 = QTableWidgetItem("Connection Point") |
|
130 |
item10.setFlags(Qt.ItemIsEnabled) |
|
131 |
self.setItem(9, 0, item10) |
|
132 | ||
133 |
item11 = QTableWidgetItem("검출 시 미포함 여부") |
|
134 |
item11.setFlags(Qt.ItemIsEnabled) |
|
135 |
self.setItem(10, 0, item11) |
|
136 | ||
137 |
item12 = QTableWidgetItem("Ins't 라벨 포함 여부") |
|
138 |
item12.setFlags(Qt.ItemIsEnabled) |
|
139 |
self.setItem(11, 0, item12) |
|
75 | 140 | |
76 | 141 |
for index in range(self.rowCount()): |
77 | 142 |
self.item(index, 0).setBackground(QColor(220, 220, 220)) |
... | ... | |
85 | 150 |
@pyqtSlot(SymbolBase.SymbolBase) |
86 | 151 |
def getClickedSymbol(self, symbol): |
87 | 152 |
if self.symData != symbol: |
88 |
self.symData = symbol if symbol.getId() != -1 else None |
|
153 |
self.symData = symbol #if symbol.getId() != -1 else None
|
|
89 | 154 |
self.symbolChanged() |
90 | 155 | |
91 | 156 |
''' |
... | ... | |
94 | 159 |
@history 18.04.24 Jeongwoo Add 14th row(isExceptDetect CheckBox) |
95 | 160 |
''' |
96 | 161 |
def symbolChanged(self): |
97 |
if self.symData is not None: |
|
98 |
self.setItem(0, 1, QTableWidgetItem(str(self.symData.getId()))) |
|
99 |
self.setItem(1, 1, QTableWidgetItem(self.symData.getName())) |
|
100 |
self.setItem(2, 1, QTableWidgetItem(str(int(self.symData.getThreshold() * 100)))) |
|
101 |
self.setItem(3, 1, QTableWidgetItem(str(self.symData.getMinMatchCount()))) |
|
162 |
if self.symData.baseSymbol is not None: |
|
163 |
#self.setItem(0, 1, QTableWidgetItem(str(self.symData.getId()))) |
|
164 |
#self.setItem(0, 1, QTableWidgetItem(self.symData.getName())) |
|
165 |
#self.setItem(1, 1, QTableWidgetItem(str(int(self.symData.getThreshold() * 100)))) |
|
166 |
#self.setItem(2, 1, QTableWidgetItem(str(self.symData.getMinMatchCount()))) |
|
167 | ||
168 |
Symboldata = QTableWidgetItem(self.symData.getName()) |
|
169 |
Symboldata.setFlags(Qt.ItemIsEnabled) |
|
170 |
self.setItem(0, 1, Symboldata) |
|
102 | 171 | |
103 |
rotationCountSpinBox = self.cellWidget(4, 1) |
|
172 |
SymbolThreshold = QTableWidgetItem(self.symData.getThreshold() *100) |
|
173 |
SymbolThreshold.setFlags(Qt.ItemIsEnabled) |
|
174 |
self.setItem(1, 1, SymbolThreshold) |
|
175 | ||
176 |
SymbolMinMatchCount = QTableWidgetItem(self.symData.getMinMatchCount()) |
|
177 |
SymbolMinMatchCount.setFlags(Qt.ItemIsEnabled) |
|
178 |
self.setItem(2, 1, SymbolMinMatchCount) |
|
179 | ||
180 |
rotationCountSpinBox = self.cellWidget(3, 1) |
|
104 | 181 |
rotationCountSpinBox.setValue(self.symData.getRotationCount()) |
105 | 182 | |
106 |
isContainChildCheckBox = self.cellWidget(5, 1)
|
|
183 |
isContainChildCheckBox = self.cellWidget(4, 1)
|
|
107 | 184 |
isContainChildCheckBox.setChecked(True if self.symData.getIsContainChild() == 1 else False) |
108 | 185 | |
109 |
symbolTypeComboBox = self.cellWidget(6, 1)
|
|
186 |
symbolTypeComboBox = self.cellWidget(5, 1)
|
|
110 | 187 |
symbolTypeComboBox.setCurrentIndex(symbolTypeComboBox.findText(self.symData.getType())) ##### USED FIND TEXT |
111 | 188 |
|
112 |
baseSymbolComboBox = self.cellWidget(7, 1)
|
|
189 |
baseSymbolComboBox = self.cellWidget(6, 1)
|
|
113 | 190 |
baseSymbolComboBox.clear() |
114 | 191 |
for name in AppDocData.instance().getBaseSymbolComboBoxItems(self.symData.getType()): |
115 | 192 |
baseSymbolComboBox.addItem(name) |
... | ... | |
117 | 194 | |
118 | 195 |
additionalSymbolItem = QTableWidgetItem(self.symData.getAdditionalSymbol()) |
119 | 196 |
additionalSymbolItem.setFlags(Qt.ItemIsEnabled) |
120 |
self.setItem(8, 1, additionalSymbolItem)
|
|
197 |
self.setItem(7, 1, additionalSymbolItem)
|
|
121 | 198 | |
122 | 199 |
originalPointItem = QTableWidgetItem(self.symData.getOriginalPoint()) |
123 | 200 |
originalPointItem.setFlags(Qt.ItemIsEnabled) |
124 |
self.setItem(9, 1, originalPointItem)
|
|
201 |
self.setItem(8, 1, originalPointItem)
|
|
125 | 202 | |
126 | 203 |
connectionPointItem = QTableWidgetItem(self.symData.getConnectionPoint()) |
127 | 204 |
connectionPointItem.setFlags(Qt.ItemIsEnabled) |
128 |
self.setItem(10, 1, connectionPointItem)
|
|
205 |
self.setItem(9, 1, connectionPointItem)
|
|
129 | 206 |
|
130 |
isExceptDetectCheckBox = self.cellWidget(11, 1)
|
|
207 |
isExceptDetectCheckBox = self.cellWidget(10, 1)
|
|
131 | 208 |
isExceptDetectCheckBox.setChecked(True if self.symData.getIsExceptDetect() == 1 else False) |
209 | ||
210 |
hasInstrumentLabelCheckBox = self.cellWidget(11, 1) |
|
211 |
hasInstrumentLabelCheckBox.setChecked(True if self.symData.getHasInstrumentLabel() == 1 else False) |
|
212 | ||
132 | 213 |
else: |
133 |
self.setItem(0, 1, QTableWidgetItem("")) |
|
134 |
self.setItem(1, 1, QTableWidgetItem("")) |
|
135 |
self.setItem(2, 1, QTableWidgetItem("")) |
|
136 |
self.setItem(3, 1, QTableWidgetItem("")) |
|
214 |
#self.setItem(0, 1, QTableWidgetItem("")) |
|
215 |
#self.setItem(0, 1, QTableWidgetItem("")) |
|
216 |
#self.setItem(1, 1, QTableWidgetItem("")) |
|
217 |
#self.setItem(2, 1, QTableWidgetItem("")) |
|
218 | ||
219 |
item1 = QTableWidgetItem("") |
|
220 |
item1.setFlags(Qt.ItemIsEnabled) |
|
221 |
self.setItem(0, 1, item1) |
|
222 | ||
223 |
item2 = QTableWidgetItem("") |
|
224 |
item2.setFlags(Qt.ItemIsEnabled) |
|
225 |
self.setItem(1, 1, item2) |
|
137 | 226 | |
138 |
rotationCountSpinBox = self.cellWidget(4, 1) |
|
227 |
item3 = QTableWidgetItem("") |
|
228 |
item3.setFlags(Qt.ItemIsEnabled) |
|
229 |
self.setItem(2, 1, item3) |
|
230 | ||
231 | ||
232 |
rotationCountSpinBox = self.cellWidget(3, 1) |
|
139 | 233 |
rotationCountSpinBox.setValue(0) |
140 | 234 | |
141 |
isContainChildCheckBox = self.cellWidget(5, 1)
|
|
235 |
isContainChildCheckBox = self.cellWidget(4, 1)
|
|
142 | 236 |
isContainChildCheckBox.setChecked(False) |
143 | 237 | |
144 |
symbolTypeComboBox = self.cellWidget(6, 1)
|
|
238 |
symbolTypeComboBox = self.cellWidget(5, 1)
|
|
145 | 239 |
symbolTypeComboBox.setCurrentIndex(0) |
146 | 240 | |
147 |
baseSymbolComboBox = self.cellWidget(7, 1)
|
|
241 |
baseSymbolComboBox = self.cellWidget(6, 1)
|
|
148 | 242 |
baseSymbolComboBox.setCurrentIndex(0) |
149 | 243 | |
150 | 244 |
additionalSymbolItem = QTableWidgetItem("") |
151 | 245 |
additionalSymbolItem.setFlags(Qt.ItemIsEnabled) |
152 |
self.setItem(8, 1, additionalSymbolItem)
|
|
246 |
self.setItem(7, 1, additionalSymbolItem)
|
|
153 | 247 | |
154 | 248 |
originalPointItem = QTableWidgetItem("") |
155 | 249 |
originalPointItem.setFlags(Qt.ItemIsEnabled) |
156 |
self.setItem(9, 1, originalPointItem)
|
|
250 |
self.setItem(8, 1, originalPointItem)
|
|
157 | 251 | |
158 | 252 |
connectionPointItem = QTableWidgetItem("") |
159 | 253 |
connectionPointItem.setFlags(Qt.ItemIsEnabled) |
160 |
self.setItem(10, 1, connectionPointItem)
|
|
254 |
self.setItem(9, 1, connectionPointItem)
|
|
161 | 255 |
|
162 |
isExceptDetectCheckBox = self.cellWidget(11, 1) |
|
163 |
isExceptDetectCheckBox.setChecked(False) |
|
256 |
isExceptDetectCheckBox = self.cellWidget(10, 1) |
|
257 |
isExceptDetectCheckBox.setChecked(False) |
|
258 | ||
259 |
hasInstrumentLabelCheckBox = self.cellWidget(11, 1) |
|
260 |
hasInstrumentLabelCheckBox.setChecked(False) |
DTI_PID/DTI_PID/QSymbolEditorDialog.py | ||
---|---|---|
120 | 120 |
@brief Init Forms with type and default values |
121 | 121 |
''' |
122 | 122 |
def initForms(self): |
123 |
self.ui.idLineEdit.setValidator(QRegExpValidator(QtCore.QRegExp("^[1-9]\d+$"))) |
|
123 |
#self.ui.idLineEdit.setValidator(QRegExpValidator(QtCore.QRegExp("^[1-9]\d+$")))
|
|
124 | 124 |
self.ui.thresholdLineEdit.setValidator(QRegExpValidator(QtCore.QRegExp("^[0-9]\d+$"))) # ([0-1]{1}[.])?[0-9]+ |
125 | 125 |
self.ui.minMatchPointLineEdit.setValidator(QRegExpValidator(QtCore.QRegExp("^[0-9]\d+$"))) |
126 | 126 |
self.initDefaultSymbolDirectionComboBoxItems() |
... | ... | |
148 | 148 |
''' |
149 | 149 |
@brief Set data on forms, For modifying symbol |
150 | 150 |
@history 2018.05.02 Jeongwoo When modifying symbol, Make immediateInsertCheckBox disable |
151 |
@ 2018.07.04 Yecheol Remove is Symbol ID(idLineEdit) |
|
151 | 152 |
''' |
152 | 153 |
def initContents(self): |
153 | 154 |
if self.selectedSymbol is not None: |
154 | 155 |
self.ui.immediateInsertCheckBox.setDisabled(True) |
155 | 156 | |
156 |
self.ui.idLineEdit.setText(str(self.selectedSymbol.getId())) |
|
157 |
#self.ui.idLineEdit.setText(str(self.selectedSymbol.getId()))
|
|
157 | 158 |
self.ui.nameLineEdit.setText(self.selectedSymbol.getName()) |
158 | 159 |
self.ui.thresholdLineEdit.setText(str(int(self.selectedSymbol.getThreshold() * 100))) |
159 | 160 |
self.ui.minMatchPointLineEdit.setText(str(self.selectedSymbol.getMinMatchCount())) |
... | ... | |
269 | 270 |
uid = -1 |
270 | 271 |
if self.selectedSymbol is not None: |
271 | 272 |
uid = self.selectedSymbol.getUid() |
272 |
symId = self.ui.idLineEdit.text() |
|
273 |
#symId = self.ui.idLineEdit.text()
|
|
273 | 274 |
name = self.ui.nameLineEdit.text() |
274 | 275 |
type = self.ui.typeComboBox.currentText() #Empty |
275 | 276 |
self.FILE_NUMBER = 0 |
... | ... | |
302 | 303 | |
303 | 304 |
convertedThreshold = int(threshold) / 100.0 |
304 | 305 | |
305 |
self.newSym = symbol.SymbolBase(int(symId), fileName, type, convertedThreshold, int(minMatchPoint), True,
|
|
306 |
self.newSym = symbol.SymbolBase(fileName, type, convertedThreshold, int(minMatchPoint), True, |
|
306 | 307 |
rotationCount, ocrOption, isContainChild, originalPoint, connectionPoint, baseSymbol, additionalSymbol, isExceptDetect, hasInstrumentLabel, uid) |
307 | 308 | |
308 | 309 |
return self.newSym |
... | ... | |
701 | 702 |
EXCEPTION_MSG_DUPLICATED_FORMAT = "이미 저장된 {} 값입니다." |
702 | 703 |
infoTitle = "" |
703 | 704 | |
704 |
idText = self.ui.idLineEdit.text() |
|
705 |
id = int(idText) if idText else -1 |
|
706 |
if (id == -1 or id < 100): |
|
707 |
infoTitle = self.ui.idLabel.text() |
|
708 |
return (False, EXCEPTION_MSG_FORMAT.format(infoTitle)) |
|
705 |
#idText = self.ui.idLineEdit.text() |
|
706 |
''' |
|
707 |
id = int(idText) if idText else -1 |
|
708 |
if (id == -1 or id < 100): |
|
709 |
infoTitle = self.ui.idLabel.text() |
|
710 |
return (False, EXCEPTION_MSG_FORMAT.format(infoTitle)) |
|
711 |
''' |
|
709 | 712 | |
710 |
lastId = -1 |
|
711 |
if self.selectedSymbol is not None: |
|
712 |
lastId = self.selectedSymbol.getId() |
|
713 |
if lastId != id and AppDocData.instance().isExistData('symId', id): |
|
714 |
infoTitle = self.ui.idLabel.text() |
|
715 |
return (False, EXCEPTION_MSG_DUPLICATED_FORMAT.format(infoTitle)) |
|
713 |
''' |
|
714 |
lastId = -1 |
|
715 |
if self.selectedSymbol is not None: |
|
716 |
lastId = self.selectedSymbol.getId() |
|
717 |
if lastId != id and AppDocData.instance().isExistData('symId', id): |
|
718 |
infoTitle = self.ui.idLabel.text() |
|
719 |
return (False, EXCEPTION_MSG_DUPLICATED_FORMAT.format(infoTitle)) |
|
720 |
''' |
|
716 | 721 | |
717 | 722 |
if not self.ui.nameLineEdit.text(): |
718 | 723 |
infoTitle = self.ui.nameLabel.text() |
DTI_PID/DTI_PID/SymbolBase.py | ||
---|---|---|
3 | 3 |
OCR_OPTION_HALF_AND_HALF = 2 |
4 | 4 | |
5 | 5 |
class SymbolBase(): |
6 |
def __init__(self, id, sName, sType, threshold = None, minMatchCount = 0
|
|
6 |
def __init__(self, sName, sType, threshold = None, minMatchCount = 0 |
|
7 | 7 |
, isDetectOnOrigin = False, rotationCount = 4, ocrOption = OCR_OPTION_NOT_EXEC, isContainChild = 0 |
8 | 8 |
, originalPoint = None, connectionPoint = None, baseSymbol = None, additionalSymbol = None |
9 | 9 |
, isExceptDetect = 0, hasInstrumentLabel = 0, uid = None): |
... | ... | |
12 | 12 |
# , originalPoint = None, connectionPoint = None, baseSymbol = None, additionalSymbol = None |
13 | 13 |
# , uid = None): |
14 | 14 |
self.uid = uid ## Auto increased Unique Id |
15 |
self.id = id ## Symbol Id |
|
15 |
#self.id = id ## Symbol Id
|
|
16 | 16 |
self.sName = sName |
17 | 17 |
self.sType = sType |
18 | 18 |
#self.path = path |
... | ... | |
36 | 36 |
def getUid(self): |
37 | 37 |
return self.uid |
38 | 38 | |
39 |
''' |
|
39 | 40 |
def setId(self, id): |
40 | 41 |
self.id = id |
41 | ||
42 |
''' |
|
43 |
''' |
|
42 | 44 |
def getId(self): |
43 | 45 |
return self.id |
44 |
|
|
46 |
''' |
|
47 | ||
45 | 48 |
def setName(self, sName): |
46 | 49 |
self.sName = sName |
47 | 50 |
DTI_PID/DTI_PID/SymbolEditor_UI.py | ||
---|---|---|
215 | 215 |
self.scrollAreaWidgetContents.setObjectName("scrollAreaWidgetContents") |
216 | 216 |
self.formLayout = QtWidgets.QFormLayout(self.scrollAreaWidgetContents) |
217 | 217 |
self.formLayout.setObjectName("formLayout") |
218 |
self.idLabel = QtWidgets.QLabel(self.scrollAreaWidgetContents) |
|
219 |
font = QtGui.QFont() |
|
220 |
font.setBold(True) |
|
221 |
font.setWeight(75) |
|
222 |
self.idLabel.setFont(font) |
|
223 |
self.idLabel.setObjectName("idLabel") |
|
224 |
self.formLayout.setWidget(0, QtWidgets.QFormLayout.LabelRole, self.idLabel) |
|
225 |
self.idLineEdit = QtWidgets.QLineEdit(self.scrollAreaWidgetContents) |
|
226 |
self.idLineEdit.setObjectName("idLineEdit") |
|
227 |
self.formLayout.setWidget(0, QtWidgets.QFormLayout.FieldRole, self.idLineEdit) |
|
228 | 218 |
self.nameLabel = QtWidgets.QLabel(self.scrollAreaWidgetContents) |
229 | 219 |
font = QtGui.QFont() |
230 | 220 |
font.setBold(True) |
231 | 221 |
font.setWeight(75) |
232 | 222 |
self.nameLabel.setFont(font) |
233 | 223 |
self.nameLabel.setObjectName("nameLabel") |
234 |
self.formLayout.setWidget(1, QtWidgets.QFormLayout.LabelRole, self.nameLabel)
|
|
224 |
self.formLayout.setWidget(0, QtWidgets.QFormLayout.LabelRole, self.nameLabel)
|
|
235 | 225 |
self.nameLineEdit = QtWidgets.QLineEdit(self.scrollAreaWidgetContents) |
236 | 226 |
self.nameLineEdit.setObjectName("nameLineEdit") |
237 |
self.formLayout.setWidget(1, QtWidgets.QFormLayout.FieldRole, self.nameLineEdit)
|
|
227 |
self.formLayout.setWidget(0, QtWidgets.QFormLayout.FieldRole, self.nameLineEdit)
|
|
238 | 228 |
self.thresholdLabel = QtWidgets.QLabel(self.scrollAreaWidgetContents) |
239 | 229 |
font = QtGui.QFont() |
240 | 230 |
font.setBold(True) |
241 | 231 |
font.setWeight(75) |
242 | 232 |
self.thresholdLabel.setFont(font) |
243 | 233 |
self.thresholdLabel.setObjectName("thresholdLabel") |
244 |
self.formLayout.setWidget(2, QtWidgets.QFormLayout.LabelRole, self.thresholdLabel)
|
|
234 |
self.formLayout.setWidget(1, QtWidgets.QFormLayout.LabelRole, self.thresholdLabel)
|
|
245 | 235 |
self.thresholdLineEdit = QtWidgets.QLineEdit(self.scrollAreaWidgetContents) |
246 | 236 |
self.thresholdLineEdit.setObjectName("thresholdLineEdit") |
247 |
self.formLayout.setWidget(2, QtWidgets.QFormLayout.FieldRole, self.thresholdLineEdit)
|
|
237 |
self.formLayout.setWidget(1, QtWidgets.QFormLayout.FieldRole, self.thresholdLineEdit)
|
|
248 | 238 |
self.minMatchPointLabel = QtWidgets.QLabel(self.scrollAreaWidgetContents) |
249 | 239 |
font = QtGui.QFont() |
250 | 240 |
font.setBold(True) |
251 | 241 |
font.setWeight(75) |
252 | 242 |
self.minMatchPointLabel.setFont(font) |
253 | 243 |
self.minMatchPointLabel.setObjectName("minMatchPointLabel") |
254 |
self.formLayout.setWidget(3, QtWidgets.QFormLayout.LabelRole, self.minMatchPointLabel)
|
|
244 |
self.formLayout.setWidget(2, QtWidgets.QFormLayout.LabelRole, self.minMatchPointLabel)
|
|
255 | 245 |
self.minMatchPointLineEdit = QtWidgets.QLineEdit(self.scrollAreaWidgetContents) |
256 | 246 |
self.minMatchPointLineEdit.setObjectName("minMatchPointLineEdit") |
257 |
self.formLayout.setWidget(3, QtWidgets.QFormLayout.FieldRole, self.minMatchPointLineEdit)
|
|
247 |
self.formLayout.setWidget(2, QtWidgets.QFormLayout.FieldRole, self.minMatchPointLineEdit)
|
|
258 | 248 |
self.rotationCountLabel = QtWidgets.QLabel(self.scrollAreaWidgetContents) |
259 | 249 |
font = QtGui.QFont() |
260 | 250 |
font.setBold(True) |
261 | 251 |
font.setWeight(75) |
262 | 252 |
self.rotationCountLabel.setFont(font) |
263 | 253 |
self.rotationCountLabel.setObjectName("rotationCountLabel") |
264 |
self.formLayout.setWidget(4, QtWidgets.QFormLayout.LabelRole, self.rotationCountLabel)
|
|
254 |
self.formLayout.setWidget(3, QtWidgets.QFormLayout.LabelRole, self.rotationCountLabel)
|
|
265 | 255 |
self.rotationCountSpinBox = QtWidgets.QSpinBox(self.scrollAreaWidgetContents) |
266 | 256 |
self.rotationCountSpinBox.setMinimum(0) |
267 | 257 |
self.rotationCountSpinBox.setMaximum(3) |
268 | 258 |
self.rotationCountSpinBox.setProperty("value", 0) |
269 | 259 |
self.rotationCountSpinBox.setObjectName("rotationCountSpinBox") |
270 |
self.formLayout.setWidget(4, QtWidgets.QFormLayout.FieldRole, self.rotationCountSpinBox)
|
|
260 |
self.formLayout.setWidget(3, QtWidgets.QFormLayout.FieldRole, self.rotationCountSpinBox)
|
|
271 | 261 |
self.isContainChildLabel = QtWidgets.QLabel(self.scrollAreaWidgetContents) |
272 | 262 |
font = QtGui.QFont() |
273 | 263 |
font.setBold(True) |
274 | 264 |
font.setWeight(75) |
275 | 265 |
self.isContainChildLabel.setFont(font) |
276 | 266 |
self.isContainChildLabel.setObjectName("isContainChildLabel") |
277 |
self.formLayout.setWidget(5, QtWidgets.QFormLayout.LabelRole, self.isContainChildLabel)
|
|
267 |
self.formLayout.setWidget(4, QtWidgets.QFormLayout.LabelRole, self.isContainChildLabel)
|
|
278 | 268 |
self.isContainChildCheckBox = QtWidgets.QCheckBox(self.scrollAreaWidgetContents) |
279 | 269 |
self.isContainChildCheckBox.setText("") |
280 | 270 |
self.isContainChildCheckBox.setCheckable(True) |
281 | 271 |
self.isContainChildCheckBox.setObjectName("isContainChildCheckBox") |
282 |
self.formLayout.setWidget(5, QtWidgets.QFormLayout.FieldRole, self.isContainChildCheckBox)
|
|
272 |
self.formLayout.setWidget(4, QtWidgets.QFormLayout.FieldRole, self.isContainChildCheckBox)
|
|
283 | 273 |
self.typeLabel = QtWidgets.QLabel(self.scrollAreaWidgetContents) |
284 | 274 |
font = QtGui.QFont() |
285 | 275 |
font.setBold(True) |
286 | 276 |
font.setWeight(75) |
287 | 277 |
self.typeLabel.setFont(font) |
288 | 278 |
self.typeLabel.setObjectName("typeLabel") |
289 |
self.formLayout.setWidget(6, QtWidgets.QFormLayout.LabelRole, self.typeLabel)
|
|
279 |
self.formLayout.setWidget(5, QtWidgets.QFormLayout.LabelRole, self.typeLabel)
|
|
290 | 280 |
self.typeComboBox = QtWidgets.QComboBox(self.scrollAreaWidgetContents) |
291 | 281 |
self.typeComboBox.setObjectName("typeComboBox") |
292 |
self.formLayout.setWidget(6, QtWidgets.QFormLayout.FieldRole, self.typeComboBox)
|
|
282 |
self.formLayout.setWidget(5, QtWidgets.QFormLayout.FieldRole, self.typeComboBox)
|
|
293 | 283 |
self.baseSymbolLabel = QtWidgets.QLabel(self.scrollAreaWidgetContents) |
294 | 284 |
font = QtGui.QFont() |
295 | 285 |
font.setBold(True) |
296 | 286 |
font.setWeight(75) |
297 | 287 |
self.baseSymbolLabel.setFont(font) |
298 | 288 |
self.baseSymbolLabel.setObjectName("baseSymbolLabel") |
299 |
self.formLayout.setWidget(7, QtWidgets.QFormLayout.LabelRole, self.baseSymbolLabel)
|
|
289 |
self.formLayout.setWidget(6, QtWidgets.QFormLayout.LabelRole, self.baseSymbolLabel)
|
|
300 | 290 |
self.baseSymbolComboBox = QtWidgets.QComboBox(self.scrollAreaWidgetContents) |
301 | 291 |
self.baseSymbolComboBox.setObjectName("baseSymbolComboBox") |
302 |
self.formLayout.setWidget(7, QtWidgets.QFormLayout.FieldRole, self.baseSymbolComboBox)
|
|
292 |
self.formLayout.setWidget(6, QtWidgets.QFormLayout.FieldRole, self.baseSymbolComboBox)
|
|
303 | 293 |
self.additionalSymbolLabel = QtWidgets.QLabel(self.scrollAreaWidgetContents) |
304 | 294 |
font = QtGui.QFont() |
305 | 295 |
font.setBold(True) |
306 | 296 |
font.setWeight(75) |
307 | 297 |
self.additionalSymbolLabel.setFont(font) |
308 | 298 |
self.additionalSymbolLabel.setObjectName("additionalSymbolLabel") |
309 |
self.formLayout.setWidget(8, QtWidgets.QFormLayout.LabelRole, self.additionalSymbolLabel)
|
|
299 |
self.formLayout.setWidget(7, QtWidgets.QFormLayout.LabelRole, self.additionalSymbolLabel)
|
|
310 | 300 |
self.horizontalLayout_2 = QtWidgets.QHBoxLayout() |
311 | 301 |
self.horizontalLayout_2.setObjectName("horizontalLayout_2") |
312 | 302 |
self.defaultSymbolDirectionComboBox = QtWidgets.QComboBox(self.scrollAreaWidgetContents) |
... | ... | |
320 | 310 |
self.addAdditionalSymbolButton.setMaximumSize(QtCore.QSize(40, 16777215)) |
321 | 311 |
self.addAdditionalSymbolButton.setObjectName("addAdditionalSymbolButton") |
322 | 312 |
self.horizontalLayout_2.addWidget(self.addAdditionalSymbolButton) |
323 |
self.formLayout.setLayout(8, QtWidgets.QFormLayout.FieldRole, self.horizontalLayout_2)
|
|
313 |
self.formLayout.setLayout(7, QtWidgets.QFormLayout.FieldRole, self.horizontalLayout_2)
|
|
324 | 314 |
self.additionalSymbolListWidget = QtWidgets.QListWidget(self.scrollAreaWidgetContents) |
325 | 315 |
self.additionalSymbolListWidget.setObjectName("additionalSymbolListWidget") |
326 |
self.formLayout.setWidget(9, QtWidgets.QFormLayout.FieldRole, self.additionalSymbolListWidget)
|
|
316 |
self.formLayout.setWidget(8, QtWidgets.QFormLayout.FieldRole, self.additionalSymbolListWidget)
|
|
327 | 317 |
self.originalPointLabel = QtWidgets.QLabel(self.scrollAreaWidgetContents) |
328 | 318 |
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Preferred) |
329 | 319 |
sizePolicy.setHorizontalStretch(0) |
... | ... | |
336 | 326 |
self.originalPointLabel.setFont(font) |
337 | 327 |
self.originalPointLabel.setAlignment(QtCore.Qt.AlignLeading|QtCore.Qt.AlignLeft|QtCore.Qt.AlignVCenter) |
338 | 328 |
self.originalPointLabel.setObjectName("originalPointLabel") |
339 |
self.formLayout.setWidget(10, QtWidgets.QFormLayout.LabelRole, self.originalPointLabel)
|
|
329 |
self.formLayout.setWidget(9, QtWidgets.QFormLayout.LabelRole, self.originalPointLabel)
|
|
340 | 330 |
self.horizontalLayout_4 = QtWidgets.QHBoxLayout() |
341 | 331 |
self.horizontalLayout_4.setObjectName("horizontalLayout_4") |
342 | 332 |
self.originalPointLineEdit = QtWidgets.QLineEdit(self.scrollAreaWidgetContents) |
... | ... | |
347 | 337 |
self.addOriginalPointButton.setMaximumSize(QtCore.QSize(40, 16777215)) |
348 | 338 |
self.addOriginalPointButton.setObjectName("addOriginalPointButton") |
349 | 339 |
self.horizontalLayout_4.addWidget(self.addOriginalPointButton) |
350 |
self.formLayout.setLayout(10, QtWidgets.QFormLayout.FieldRole, self.horizontalLayout_4)
|
|
340 |
self.formLayout.setLayout(9, QtWidgets.QFormLayout.FieldRole, self.horizontalLayout_4)
|
|
351 | 341 |
self.connectionPointLabel = QtWidgets.QLabel(self.scrollAreaWidgetContents) |
352 | 342 |
font = QtGui.QFont() |
353 | 343 |
font.setBold(True) |
... | ... | |
355 | 345 |
self.connectionPointLabel.setFont(font) |
356 | 346 |
self.connectionPointLabel.setAlignment(QtCore.Qt.AlignLeading|QtCore.Qt.AlignLeft|QtCore.Qt.AlignVCenter) |
357 | 347 |
self.connectionPointLabel.setObjectName("connectionPointLabel") |
358 |
self.formLayout.setWidget(11, QtWidgets.QFormLayout.LabelRole, self.connectionPointLabel)
|
|
348 |
self.formLayout.setWidget(10, QtWidgets.QFormLayout.LabelRole, self.connectionPointLabel)
|
|
359 | 349 |
self.horizontalLayout_6 = QtWidgets.QHBoxLayout() |
360 | 350 |
self.horizontalLayout_6.setObjectName("horizontalLayout_6") |
361 | 351 |
self.connectionPointLineEdit = QtWidgets.QLineEdit(self.scrollAreaWidgetContents) |
... | ... | |
366 | 356 |
self.addConnectionPointButton.setMaximumSize(QtCore.QSize(40, 16777215)) |
367 | 357 |
self.addConnectionPointButton.setObjectName("addConnectionPointButton") |
368 | 358 |
self.horizontalLayout_6.addWidget(self.addConnectionPointButton) |
369 |
self.formLayout.setLayout(11, QtWidgets.QFormLayout.FieldRole, self.horizontalLayout_6)
|
|
359 |
self.formLayout.setLayout(10, QtWidgets.QFormLayout.FieldRole, self.horizontalLayout_6)
|
|
370 | 360 |
self.connectionPointList = QtWidgets.QListWidget(self.scrollAreaWidgetContents) |
371 | 361 |
self.connectionPointList.setObjectName("connectionPointList") |
372 |
self.formLayout.setWidget(12, QtWidgets.QFormLayout.FieldRole, self.connectionPointList)
|
|
362 |
self.formLayout.setWidget(11, QtWidgets.QFormLayout.FieldRole, self.connectionPointList)
|
|
373 | 363 |
self.hasInstrumentLabel = QtWidgets.QLabel(self.scrollAreaWidgetContents) |
374 | 364 |
font = QtGui.QFont() |
375 | 365 |
font.setBold(True) |
376 | 366 |
font.setWeight(75) |
377 | 367 |
self.hasInstrumentLabel.setFont(font) |
378 | 368 |
self.hasInstrumentLabel.setObjectName("hasInstrumentLabel") |
379 |
self.formLayout.setWidget(13, QtWidgets.QFormLayout.LabelRole, self.hasInstrumentLabel)
|
|
369 |
self.formLayout.setWidget(12, QtWidgets.QFormLayout.LabelRole, self.hasInstrumentLabel)
|
|
380 | 370 |
self.hasInstrumentLabelCheckBox = QtWidgets.QCheckBox(self.scrollAreaWidgetContents) |
381 | 371 |
self.hasInstrumentLabelCheckBox.setText("") |
382 | 372 |
self.hasInstrumentLabelCheckBox.setObjectName("hasInstrumentLabelCheckBox") |
383 |
self.formLayout.setWidget(13, QtWidgets.QFormLayout.FieldRole, self.hasInstrumentLabelCheckBox)
|
|
373 |
self.formLayout.setWidget(12, QtWidgets.QFormLayout.FieldRole, self.hasInstrumentLabelCheckBox)
|
|
384 | 374 |
self.isExceptDetectLabel = QtWidgets.QLabel(self.scrollAreaWidgetContents) |
385 | 375 |
font = QtGui.QFont() |
386 | 376 |
font.setBold(True) |
387 | 377 |
font.setWeight(75) |
388 | 378 |
self.isExceptDetectLabel.setFont(font) |
389 | 379 |
self.isExceptDetectLabel.setObjectName("isExceptDetectLabel") |
390 |
self.formLayout.setWidget(14, QtWidgets.QFormLayout.LabelRole, self.isExceptDetectLabel)
|
|
380 |
self.formLayout.setWidget(13, QtWidgets.QFormLayout.LabelRole, self.isExceptDetectLabel)
|
|
391 | 381 |
self.isExceptDetectCheckBox = QtWidgets.QCheckBox(self.scrollAreaWidgetContents) |
392 | 382 |
self.isExceptDetectCheckBox.setText("") |
393 | 383 |
self.isExceptDetectCheckBox.setObjectName("isExceptDetectCheckBox") |
394 |
self.formLayout.setWidget(14, QtWidgets.QFormLayout.FieldRole, self.isExceptDetectCheckBox)
|
|
384 |
self.formLayout.setWidget(13, QtWidgets.QFormLayout.FieldRole, self.isExceptDetectCheckBox)
|
|
395 | 385 |
self.immediateInsertLabel = QtWidgets.QLabel(self.scrollAreaWidgetContents) |
396 | 386 |
font = QtGui.QFont() |
397 | 387 |
font.setBold(True) |
398 | 388 |
font.setWeight(75) |
399 | 389 |
self.immediateInsertLabel.setFont(font) |
400 | 390 |
self.immediateInsertLabel.setObjectName("immediateInsertLabel") |
401 |
self.formLayout.setWidget(15, QtWidgets.QFormLayout.LabelRole, self.immediateInsertLabel)
|
|
391 |
self.formLayout.setWidget(14, QtWidgets.QFormLayout.LabelRole, self.immediateInsertLabel)
|
|
402 | 392 |
self.immediateInsertCheckBox = QtWidgets.QCheckBox(self.scrollAreaWidgetContents) |
403 | 393 |
self.immediateInsertCheckBox.setText("") |
404 | 394 |
self.immediateInsertCheckBox.setObjectName("immediateInsertCheckBox") |
405 |
self.formLayout.setWidget(15, QtWidgets.QFormLayout.FieldRole, self.immediateInsertCheckBox)
|
|
395 |
self.formLayout.setWidget(14, QtWidgets.QFormLayout.FieldRole, self.immediateInsertCheckBox)
|
|
406 | 396 |
self.buttonBox = QtWidgets.QDialogButtonBox(self.scrollAreaWidgetContents) |
407 | 397 |
self.buttonBox.setLayoutDirection(QtCore.Qt.LeftToRight) |
408 | 398 |
self.buttonBox.setStandardButtons(QtWidgets.QDialogButtonBox.Close|QtWidgets.QDialogButtonBox.Save) |
409 | 399 |
self.buttonBox.setObjectName("buttonBox") |
410 |
self.formLayout.setWidget(16, QtWidgets.QFormLayout.SpanningRole, self.buttonBox)
|
|
400 |
self.formLayout.setWidget(15, QtWidgets.QFormLayout.SpanningRole, self.buttonBox)
|
|
411 | 401 |
self.scrollArea.setWidget(self.scrollAreaWidgetContents) |
412 | 402 |
self.verticalLayout.addWidget(self.scrollArea) |
413 | 403 |
self.gridLayout_2.addLayout(self.verticalLayout, 0, 0, 1, 1) |
... | ... | |
436 | 426 |
self.flipHorizontalButton.setText(_translate("Dialog", "Flip Horizontal")) |
437 | 427 |
self.guidelineCheckbox.setText(_translate("Dialog", "Show Guideline")) |
438 | 428 |
self.initZoomButton.setText(_translate("Dialog", "Init Zoom")) |
439 |
self.idLabel.setText(_translate("Dialog", "ID")) |
|
440 | 429 |
self.nameLabel.setText(_translate("Dialog", "심볼명")) |
441 | 430 |
self.thresholdLabel.setText(_translate("Dialog", "임계값(%)")) |
442 | 431 |
self.minMatchPointLabel.setText(_translate("Dialog", "최소 특징점 개수")) |
DTI_PID/DTI_PID/UI/SymbolEditor.ui | ||
---|---|---|
364 | 364 |
</property> |
365 | 365 |
<layout class="QFormLayout" name="formLayout"> |
366 | 366 |
<item row="0" column="0"> |
367 |
<widget class="QLabel" name="idLabel"> |
|
368 |
<property name="font"> |
|
369 |
<font> |
|
370 |
<weight>75</weight> |
|
371 |
<bold>true</bold> |
|
372 |
</font> |
|
373 |
</property> |
|
374 |
<property name="text"> |
|
375 |
<string>ID</string> |
|
376 |
</property> |
|
377 |
</widget> |
|
378 |
</item> |
|
379 |
<item row="0" column="1"> |
|
380 |
<widget class="QLineEdit" name="idLineEdit"/> |
|
381 |
</item> |
|
382 |
<item row="1" column="0"> |
|
383 | 367 |
<widget class="QLabel" name="nameLabel"> |
384 | 368 |
<property name="font"> |
385 | 369 |
<font> |
... | ... | |
392 | 376 |
</property> |
393 | 377 |
</widget> |
394 | 378 |
</item> |
395 |
<item row="1" column="1">
|
|
379 |
<item row="0" column="1">
|
|
396 | 380 |
<widget class="QLineEdit" name="nameLineEdit"/> |
397 | 381 |
</item> |
398 |
<item row="2" column="0">
|
|
382 |
<item row="1" column="0">
|
|
399 | 383 |
<widget class="QLabel" name="thresholdLabel"> |
400 | 384 |
<property name="font"> |
401 | 385 |
<font> |
... | ... | |
408 | 392 |
</property> |
409 | 393 |
</widget> |
410 | 394 |
</item> |
411 |
<item row="2" column="1">
|
|
395 |
<item row="1" column="1">
|
|
412 | 396 |
<widget class="QLineEdit" name="thresholdLineEdit"/> |
413 | 397 |
</item> |
414 |
<item row="3" column="0">
|
|
398 |
<item row="2" column="0">
|
|
415 | 399 |
<widget class="QLabel" name="minMatchPointLabel"> |
416 | 400 |
<property name="font"> |
417 | 401 |
<font> |
... | ... | |
424 | 408 |
</property> |
425 | 409 |
</widget> |
426 | 410 |
</item> |
427 |
<item row="3" column="1">
|
|
411 |
<item row="2" column="1">
|
|
428 | 412 |
<widget class="QLineEdit" name="minMatchPointLineEdit"/> |
429 | 413 |
</item> |
430 |
<item row="4" column="0">
|
|
414 |
<item row="3" column="0">
|
|
431 | 415 |
<widget class="QLabel" name="rotationCountLabel"> |
432 | 416 |
<property name="font"> |
433 | 417 |
<font> |
... | ... | |
440 | 424 |
</property> |
441 | 425 |
</widget> |
442 | 426 |
</item> |
443 |
<item row="4" column="1">
|
|
427 |
<item row="3" column="1">
|
|
444 | 428 |
<widget class="QSpinBox" name="rotationCountSpinBox"> |
445 | 429 |
<property name="minimum"> |
446 | 430 |
<number>0</number> |
... | ... | |
453 | 437 |
</property> |
454 | 438 |
</widget> |
455 | 439 |
</item> |
456 |
<item row="5" column="0">
|
|
440 |
<item row="4" column="0">
|
|
457 | 441 |
<widget class="QLabel" name="isContainChildLabel"> |
458 | 442 |
<property name="font"> |
459 | 443 |
<font> |
... | ... | |
466 | 450 |
</property> |
467 | 451 |
</widget> |
468 | 452 |
</item> |
469 |
<item row="5" column="1">
|
|
453 |
<item row="4" column="1">
|
|
470 | 454 |
<widget class="QCheckBox" name="isContainChildCheckBox"> |
471 | 455 |
<property name="text"> |
472 | 456 |
<string/> |
... | ... | |
476 | 460 |
</property> |
477 | 461 |
</widget> |
478 | 462 |
</item> |
479 |
<item row="6" column="0">
|
|
463 |
<item row="5" column="0">
|
|
480 | 464 |
<widget class="QLabel" name="typeLabel"> |
481 | 465 |
<property name="font"> |
482 | 466 |
<font> |
... | ... | |
489 | 473 |
</property> |
490 | 474 |
</widget> |
491 | 475 |
</item> |
492 |
<item row="6" column="1">
|
|
476 |
<item row="5" column="1">
|
|
493 | 477 |
<widget class="QComboBox" name="typeComboBox"/> |
494 | 478 |
</item> |
495 |
<item row="7" column="0">
|
|
479 |
<item row="6" column="0">
|
|
496 | 480 |
<widget class="QLabel" name="baseSymbolLabel"> |
497 | 481 |
<property name="font"> |
498 | 482 |
<font> |
... | ... | |
505 | 489 |
</property> |
506 | 490 |
</widget> |
507 | 491 |
</item> |
508 |
<item row="7" column="1">
|
|
492 |
<item row="6" column="1">
|
|
509 | 493 |
<widget class="QComboBox" name="baseSymbolComboBox"/> |
510 | 494 |
</item> |
511 |
<item row="8" column="0">
|
|
495 |
<item row="7" column="0">
|
|
512 | 496 |
<widget class="QLabel" name="additionalSymbolLabel"> |
513 | 497 |
<property name="font"> |
514 | 498 |
<font> |
... | ... | |
521 | 505 |
</property> |
522 | 506 |
</widget> |
523 | 507 |
</item> |
524 |
<item row="8" column="1">
|
|
508 |
<item row="7" column="1">
|
|
525 | 509 |
<layout class="QHBoxLayout" name="horizontalLayout_2"> |
526 | 510 |
<item> |
527 | 511 |
<widget class="QComboBox" name="defaultSymbolDirectionComboBox"> |
... | ... | |
551 | 535 |
</item> |
552 | 536 |
</layout> |
553 | 537 |
</item> |
554 |
<item row="9" column="1">
|
|
538 |
<item row="8" column="1">
|
|
555 | 539 |
<widget class="QListWidget" name="additionalSymbolListWidget"/> |
556 | 540 |
</item> |
557 |
<item row="10" column="0">
|
|
541 |
<item row="9" column="0">
|
|
558 | 542 |
<widget class="QLabel" name="originalPointLabel"> |
559 | 543 |
<property name="sizePolicy"> |
560 | 544 |
<sizepolicy hsizetype="Preferred" vsizetype="Preferred"> |
... | ... | |
576 | 560 |
</property> |
577 | 561 |
</widget> |
578 | 562 |
</item> |
579 |
<item row="10" column="1">
|
|
563 |
<item row="9" column="1">
|
|
580 | 564 |
<layout class="QHBoxLayout" name="horizontalLayout_4"> |
581 | 565 |
<item> |
582 | 566 |
<widget class="QLineEdit" name="originalPointLineEdit"> |
... | ... | |
600 | 584 |
</item> |
601 | 585 |
</layout> |
602 | 586 |
</item> |
603 |
<item row="11" column="0">
|
|
587 |
<item row="10" column="0">
|
|
604 | 588 |
<widget class="QLabel" name="connectionPointLabel"> |
605 | 589 |
<property name="font"> |
606 | 590 |
<font> |
... | ... | |
616 | 600 |
</property> |
617 | 601 |
</widget> |
618 | 602 |
</item> |
619 |
<item row="11" column="1">
|
|
603 |
<item row="10" column="1">
|
|
620 | 604 |
<layout class="QHBoxLayout" name="horizontalLayout_6"> |
621 | 605 |
<item> |
622 | 606 |
<widget class="QLineEdit" name="connectionPointLineEdit"> |
... | ... | |
640 | 624 |
</item> |
641 | 625 |
</layout> |
642 | 626 |
</item> |
643 |
<item row="12" column="1">
|
|
627 |
<item row="11" column="1">
|
|
644 | 628 |
<widget class="QListWidget" name="connectionPointList"/> |
645 | 629 |
</item> |
646 |
<item row="13" column="0">
|
|
630 |
<item row="12" column="0">
|
|
647 | 631 |
<widget class="QLabel" name="hasInstrumentLabel"> |
648 | 632 |
<property name="font"> |
649 | 633 |
<font> |
... | ... | |
656 | 640 |
</property> |
657 | 641 |
</widget> |
658 | 642 |
</item> |
659 |
<item row="13" column="1">
|
|
643 |
<item row="12" column="1">
|
|
660 | 644 |
<widget class="QCheckBox" name="hasInstrumentLabelCheckBox"> |
661 | 645 |
<property name="text"> |
662 | 646 |
<string/> |
663 | 647 |
</property> |
664 | 648 |
</widget> |
665 | 649 |
</item> |
666 |
<item row="14" column="0">
|
|
650 |
<item row="13" column="0">
|
|
667 | 651 |
<widget class="QLabel" name="isExceptDetectLabel"> |
668 | 652 |
<property name="font"> |
669 | 653 |
<font> |
... | ... | |
676 | 660 |
</property> |
677 | 661 |
</widget> |
678 | 662 |
</item> |
679 |
<item row="14" column="1">
|
|
663 |
<item row="13" column="1">
|
|
680 | 664 |
<widget class="QCheckBox" name="isExceptDetectCheckBox"> |
681 | 665 |
<property name="text"> |
682 | 666 |
<string/> |
683 | 667 |
</property> |
684 | 668 |
</widget> |
685 | 669 |
</item> |
686 |
<item row="15" column="0">
|
|
670 |
<item row="14" column="0">
|
|
687 | 671 |
<widget class="QLabel" name="immediateInsertLabel"> |
688 | 672 |
<property name="font"> |
689 | 673 |
<font> |
... | ... | |
697 | 681 |
</property> |
698 | 682 |
</widget> |
699 | 683 |
</item> |
700 |
<item row="15" column="1">
|
|
684 |
<item row="14" column="1">
|
|
701 | 685 |
<widget class="QCheckBox" name="immediateInsertCheckBox"> |
702 | 686 |
<property name="text"> |
703 | 687 |
<string/> |
704 | 688 |
</property> |
705 | 689 |
</widget> |
706 | 690 |
</item> |
707 |
<item row="16" column="0" colspan="2">
|
|
691 |
<item row="15" column="0" colspan="2">
|
|
708 | 692 |
<widget class="QDialogButtonBox" name="buttonBox"> |
709 | 693 |
<property name="layoutDirection"> |
710 | 694 |
<enum>Qt::LeftToRight</enum> |
내보내기 Unified diff