개정판 2b474929
수정 작업 중
DTI_PID/DTI_PID/AppDocData.py | ||
---|---|---|
72 | 72 |
print("Empty folder name") |
73 | 73 |
|
74 | 74 |
''' |
75 |
@brief Insert New Project Info
|
|
75 |
@brief Update Project UpdatedDate Field
|
|
76 | 76 |
@author Jeongwoo |
77 | 77 |
@date 2018.04.06 |
78 | 78 |
@history . |
... | ... | |
210 | 210 |
finally: |
211 | 211 |
# Close the db connection |
212 | 212 |
conn.close() |
213 |
|
|
213 |
|
|
214 | 214 |
''' |
215 | 215 |
@brief get symbol name list |
216 | 216 |
''' |
... | ... | |
225 | 225 |
cursor.execute(sql) |
226 | 226 |
rows = cursor.fetchall() |
227 | 227 |
for row in rows: |
228 |
symbolNametList.append(row[1]) # Name String
|
|
228 |
symbolNametList.append(row[2]) # Name String
|
|
229 | 229 |
except Exception as ex: |
230 | 230 |
print('error occured({}) in {}:{}'.format(ex, sys.exc_info()[-1].tb_frame.f_code.co_filename, sys.exc_info()[-1].tb_lineno)) |
231 | 231 |
finally: |
... | ... | |
234 | 234 |
return symbolNametList |
235 | 235 |
|
236 | 236 |
''' |
237 |
@brief get symbol name list by symbol Type |
|
238 |
@author Jeongwoo |
|
239 |
@date 18.04.06 |
|
240 |
@history . |
|
241 |
''' |
|
242 |
def getSymbolNameListByType(self, type): |
|
243 |
symbolNametList = [] |
|
244 |
|
|
245 |
try: |
|
246 |
conn = sqlite3.connect(DB_NAME) |
|
247 |
cursor = conn.cursor() |
|
248 |
sql = '' |
|
249 |
if type is not None: |
|
250 |
sql = 'SELECT * FROM SymbolName WHERE type = "' + type + '"' |
|
251 |
try: |
|
252 |
cursor.execute(sql) |
|
253 |
rows = cursor.fetchall() |
|
254 |
for row in rows: |
|
255 |
symbolNametList.append(row[2]) # Name String |
|
256 |
except Exception as ex: |
|
257 |
print('error occured({}) in {}:{}'.format(ex, sys.exc_info()[-1].tb_frame.f_code.co_filename, sys.exc_info()[-1].tb_lineno)) |
|
258 |
finally: |
|
259 |
conn.close() |
|
260 |
|
|
261 |
return symbolNametList |
|
262 |
|
|
263 |
''' |
|
237 | 264 |
@brief delete added symbol data |
238 | 265 |
''' |
239 |
def deleteSymbol(self, imagePath):
|
|
266 |
def deleteSymbol(self, fileName):
|
|
240 | 267 |
ret = False |
241 | 268 |
try: |
242 | 269 |
dbPath = self.getCurrentProject().getPath() + "/db/ITI_PID.db" |
243 | 270 |
conn = sqlite3.connect(dbPath) |
244 | 271 |
cursor = conn.cursor() |
245 |
sql = "DELETE FROM Symbol WHERE path = ?"
|
|
272 |
sql = "DELETE FROM Symbol WHERE name = ?"
|
|
246 | 273 |
try: |
247 |
cursor.execute(sql, (imagePath,))
|
|
274 |
cursor.execute(sql, (fileName,))
|
|
248 | 275 |
conn.commit() |
249 | 276 |
ret = True |
250 | 277 |
except Exception as ex: |
... | ... | |
252 | 279 |
ret = False |
253 | 280 |
finally: |
254 | 281 |
conn.close() |
255 |
return (ret, imagePath)
|
|
282 |
return (ret, fileName)
|
|
256 | 283 |
|
257 | 284 |
''' |
258 | 285 |
@brief get symbol name list |
... | ... | |
296 | 323 |
return [("OCR 미적용", 0), ("일반 심볼", 1), ("Instrument 계통", 2)] |
297 | 324 |
|
298 | 325 |
''' |
326 |
@brief Return Symbol Type Items |
|
327 |
@author Jeongwoo |
|
328 |
@date 18.04.06 |
|
329 |
@history . |
|
330 |
''' |
|
331 |
def getSymbolTypeComboBoxItems(self): |
|
332 |
symbolTypeList = [] |
|
333 |
|
|
334 |
try: |
|
335 |
conn = sqlite3.connect(DB_NAME) |
|
336 |
cursor = conn.cursor() |
|
337 |
sql = 'SELECT * FROM SymbolType ORDER BY type ASC' |
|
338 |
try: |
|
339 |
cursor.execute(sql) |
|
340 |
rows = cursor.fetchall() |
|
341 |
for row in rows: |
|
342 |
symbolTypeList.append(row[1]) # Type String |
|
343 |
except Exception as ex: |
|
344 |
print('error occured({}) in {}:{}'.format(ex, sys.exc_info()[-1].tb_frame.f_code.co_filename, sys.exc_info()[-1].tb_lineno)) |
|
345 |
finally: |
|
346 |
conn.close() |
|
347 |
symbolTypeList.insert(0, "None") |
|
348 |
|
|
349 |
return symbolTypeList |
|
350 |
|
|
351 |
''' |
|
299 | 352 |
@brief get Base Symbol ComboBox Items |
300 | 353 |
''' |
301 |
def getBaseSymbolComboBoxItems(self): |
|
302 |
bsymbolNameList = self.getSymbolNameList()
|
|
354 |
def getBaseSymbolComboBoxItems(self, type = None):
|
|
355 |
bsymbolNameList = self.getSymbolNameListByType(type)
|
|
303 | 356 |
bsymbolNameList.sort() |
304 | 357 |
bsymbolNameList.insert(0, "None") |
305 | 358 |
return bsymbolNameList |
DTI_PID/DTI_PID/QDirTreeWidget.py | ||
---|---|---|
112 | 112 |
for element in os.listdir(startPath): |
113 | 113 |
pathInfo = startPath + "/" + element |
114 | 114 |
parentItem = QTreeWidgetItem(tree, [os.path.basename(element)]) |
115 |
if pathInfo.endswith(".png"): |
|
116 |
icon = QIcon(pathInfo) |
|
117 |
#icon.actualSize(QSize(32, 32)) |
|
118 |
#parentItem.setSizeHint(0, QSize(32, 32)) |
|
119 |
parentItem.setIcon(0, icon) |
|
115 | 120 |
if os.path.isdir(pathInfo): |
116 | 121 |
self.loadDirectoryInfo(pathInfo, parentItem) |
117 | 122 |
|
DTI_PID/DTI_PID/QPropertyTableWidget.py | ||
---|---|---|
107 | 107 |
|
108 | 108 |
ocrOptionComboBox = self.cellWidget(7, 1) |
109 | 109 |
ocrOptionComboBox.setCurrentIndex(ocrOptionComboBox.findData(self.symData.getOcrOption())) |
110 |
|
|
110 |
|
|
111 | 111 |
isContainChildCheckBox = self.cellWidget(8, 1) |
112 | 112 |
isContainChildCheckBox.setChecked(True if self.symData.getIsContainChild() == 1 else False) |
113 | 113 |
|
DTI_PID/DTI_PID/QSymbolEditorDialog.py | ||
---|---|---|
89 | 89 |
self.ui.addAdditionalSymbolButton.clicked.connect(self.addAdditionalSymbolEvent) |
90 | 90 |
self.ui.addOriginalPointButton.clicked.connect(self.addOriginalPoint) |
91 | 91 |
self.ui.addConnectionPointButton.clicked.connect(self.addConnectionPoint) |
92 |
self.initBaseSymbolComboBoxItems() |
|
92 |
self.initSymbolTypeComboBoxItems() |
|
93 |
self.initBaseSymbolComboBoxItems(None) |
|
93 | 94 |
self.initAdditionalSymbolComboBoxItems() |
95 |
|
|
96 |
''' |
|
97 |
@brief Init Symbol Type ComboBox Items |
|
98 |
@author Jeongwoo |
|
99 |
@date 2018.04.06 |
|
100 |
@history . |
|
101 |
''' |
|
102 |
def initSymbolTypeComboBoxItems(self): |
|
103 |
for item in AppDocData.instance().getSymbolTypeComboBoxItems(): |
|
104 |
self.ui.typeComboBox.addItem(item) |
|
105 |
self.ui.typeComboBox.currentTextChanged.connect(self.symbolTypeTextChagedEvent) |
|
106 |
|
|
107 |
def symbolTypeTextChagedEvent(self, value): |
|
108 |
self.initBaseSymbolComboBoxItems(value) |
|
94 | 109 |
|
95 | 110 |
''' |
96 | 111 |
@brief Set data on forms, For modifying symbol |
... | ... | |
105 | 120 |
self.ui.ocrOptionComboBox.setCurrentIndex(self.ui.ocrOptionComboBox.findData(self.selectedSymbol.getOcrOption())) |
106 | 121 |
self.ui.rotationCountSpinBox.setValue(self.selectedSymbol.getRotationCount()) |
107 | 122 |
self.ui.isContainChildCheckBox.setChecked(True if self.selectedSymbol.getIsContainChild() else False) |
123 |
self.ui.typeComboBox.setCurrentIndex(self.ui.typeComboBox.findText(self.selectedSymbol.getType())) |
|
108 | 124 |
self.ui.baseSymbolComboBox.setCurrentIndex(self.ui.baseSymbolComboBox.findText(self.selectedSymbol.getBaseSymbol())) |
109 | 125 |
|
110 | 126 |
additionalSymbol = self.selectedSymbol.getAdditionalSymbol() |
... | ... | |
150 | 166 |
''' |
151 | 167 |
@brief Init ComboBox Items For DB Field [baseSymbol] |
152 | 168 |
''' |
153 |
def initBaseSymbolComboBoxItems(self): |
|
154 |
for name in AppDocData.instance().getBaseSymbolComboBoxItems(): |
|
155 |
self.ui.baseSymbolComboBox.addItem(name) |
|
169 |
def initBaseSymbolComboBoxItems(self, type): |
|
170 |
self.ui.baseSymbolComboBox.clear() |
|
171 |
for item in AppDocData.instance().getBaseSymbolComboBoxItems(type): |
|
172 |
self.ui.baseSymbolComboBox.addItem(item) |
|
156 | 173 |
|
157 | 174 |
''' |
158 | 175 |
@brief Init ComboBox Items For symbolName of DB Field [additionalSymbol] |
... | ... | |
209 | 226 |
uid = self.selectedSymbol.getUid() |
210 | 227 |
symId = self.ui.idLineEdit.text() |
211 | 228 |
name = self.ui.nameLineEdit.text() |
212 |
type = '' #Empty
|
|
229 |
type = self.ui.typeComboBox.currentText() #Empty
|
|
213 | 230 |
self.FILE_NUMBER = 0 |
214 | 231 |
lastName = "" |
215 | 232 |
if self.selectedSymbol is not None: |
... | ... | |
286 | 303 |
print("valid symbol info") |
287 | 304 |
|
288 | 305 |
if self.selectedSymbol is None: |
289 |
isSuccess, fileName, imagePath = self.dbHelper.insertSymbol(self.makeSymbolData()) |
|
306 |
isSuccess, fileType, fileName, imagePath = self.dbHelper.insertSymbol(self.makeSymbolData())
|
|
290 | 307 |
else: |
291 |
isSuccess, fileName, imagePath = self.dbHelper.updateSymbol(self.makeSymbolData()) |
|
308 |
isSuccess, fileType, fileName, imagePath = self.dbHelper.updateSymbol(self.makeSymbolData())
|
|
292 | 309 |
|
293 | 310 |
if isSuccess: |
294 | 311 |
try: |
... | ... | |
296 | 313 |
if image is not None: |
297 | 314 |
if self.selectedSymbol is not None: |
298 | 315 |
self.deleteImageAndSvg(self.selectedSymbol.getPath(), self.selectedSymbol.getName()) |
316 |
imageLocation = self.project.getPath() + "/image/" + fileType |
|
317 |
if not os.path.exists(imageLocation): |
|
318 |
os.makedirs(imageLocation) |
|
299 | 319 |
image.save(imagePath, 'PNG') |
300 |
potrace.convertImageToSvg(imagePath, self.project.getPath()+"/svg/" + fileName + ".svg") |
|
320 |
svgLocation = self.project.getPath() + "/svg/" + fileType |
|
321 |
if not os.path.exists(svgLocation): |
|
322 |
os.makedirs(svgLocation) |
|
323 |
potrace.convertImageToSvg(imagePath, svgLocation + "/" + fileName + ".svg") |
|
301 | 324 |
self.isAccepted = True |
302 | 325 |
QDialog.accept(self) |
303 | 326 |
except: |
... | ... | |
314 | 337 |
QMessageBox.about(self.ui.buttonBox, "알림", exceptionMsg) |
315 | 338 |
|
316 | 339 |
''' |
317 |
@brief Called When Cancel Button Clicked
|
|
340 |
@brief Called When Close Button Clicked
|
|
318 | 341 |
''' |
319 |
def cancel(self):
|
|
342 |
def reject(self):
|
|
320 | 343 |
print("cancel") |
321 |
self.isAccepted = Flase
|
|
322 |
QDialog.cancel(self)
|
|
344 |
self.isAccepted = False
|
|
345 |
QDialog.reject(self)
|
|
323 | 346 |
|
324 | 347 |
def deleteImageAndSvg(self, imagePath, fileName): |
325 | 348 |
if os.path.exists(imagePath): |
326 | 349 |
os.remove(imagePath) |
327 | 350 |
|
328 |
svgPath = self.project.getPath() + "/svg/" + fileName + ".svg" |
|
351 |
svgPath = self.project.getPath() + "/svg/" + fileType + "/" + fileName + ".svg"
|
|
329 | 352 |
if os.path.exists(svgPath): |
330 | 353 |
os.remove(svgPath) |
331 | 354 |
|
... | ... | |
336 | 359 |
def resetInsertSymbol(self, imagePath, fileName): |
337 | 360 |
self.deleteImageAndSvg(imagePath, fileName) |
338 | 361 |
|
339 |
AppDocData.instance().deleteSymbol(imagePath)
|
|
362 |
AppDocData.instance().deleteSymbol(fileName)
|
|
340 | 363 |
|
341 | 364 |
def resetUpdateSymbol(self, imagePath, fileName): |
342 | 365 |
self.deleteImageAndSvg(imagePath, fileName) |
... | ... | |
566 | 589 |
infoTitle = self.ui.minMatchPointLabel.text() |
567 | 590 |
return (False, EXCEPTION_MSG_FORMAT.format(infoTitle)) |
568 | 591 |
|
592 |
if self.ui.typeComboBox.currentIndex() == 0: |
|
593 |
infoTitle = self.ui.typeLabel.text() |
|
594 |
return (False, EXCEPTION_MSG_FORMAT.format(infoTitle)) |
|
595 |
|
|
569 | 596 |
if self.ui.baseSymbolComboBox.currentIndex() == 0: #default value(None) index |
570 | 597 |
infoTitle = self.ui.baseSymbolLabel.text() |
571 | 598 |
return (False, EXCEPTION_MSG_FORMAT.format(infoTitle)) |
DTI_PID/DTI_PID/SG_DbHelper.py | ||
---|---|---|
149 | 149 |
print(e) |
150 | 150 |
finally: |
151 | 151 |
conn.close() |
152 |
return (isAdded, symbol.getName(), symbol.getPath()) |
|
152 |
return (isAdded, symbol.getType(), symbol.getName(), symbol.getPath())
|
|
153 | 153 |
|
154 | 154 |
def updateSymbol(self, symbol): |
155 | 155 |
isUpdated = False |
... | ... | |
169 | 169 |
print(e) |
170 | 170 |
finally: |
171 | 171 |
conn.close() |
172 |
return (isUpdated, symbol.getName(), symbol.getPath()) |
|
172 |
return (isUpdated, symbol.getType(), symbol.getName(), symbol.getPath()) |
DTI_PID/DTI_PID/SymbolBase.py | ||
---|---|---|
56 | 56 |
def getPath(self): |
57 | 57 |
from AppDocData import AppDocData |
58 | 58 |
#return self.path |
59 |
return AppDocData.instance().getCurrentProject().getPath() + "/image/" + self.sName + ".png" |
|
59 |
return AppDocData.instance().getCurrentProject().getPath() + "/image/" + self.sType + "/" + self.sName + ".png"
|
|
60 | 60 |
|
61 | 61 |
def setThreshold(self, threshold): |
62 | 62 |
self.threshold = threshold |
DTI_PID/DTI_PID/UI/SymbolEditor.ui | ||
---|---|---|
152 | 152 |
</font> |
153 | 153 |
</property> |
154 | 154 |
<property name="text"> |
155 |
<string>Name</string>
|
|
155 |
<string>심볼명</string>
|
|
156 | 156 |
</property> |
157 | 157 |
</widget> |
158 | 158 |
</item> |
... | ... | |
272 | 272 |
</property> |
273 | 273 |
</widget> |
274 | 274 |
</item> |
275 |
<item row="9" column="0">
|
|
275 |
<item row="10" column="0">
|
|
276 | 276 |
<widget class="QLabel" name="baseSymbolLabel"> |
277 | 277 |
<property name="font"> |
278 | 278 |
<font> |
... | ... | |
285 | 285 |
</property> |
286 | 286 |
</widget> |
287 | 287 |
</item> |
288 |
<item row="9" column="1">
|
|
288 |
<item row="10" column="1">
|
|
289 | 289 |
<widget class="QComboBox" name="baseSymbolComboBox"/> |
290 | 290 |
</item> |
291 |
<item row="10" column="0">
|
|
291 |
<item row="11" column="0">
|
|
292 | 292 |
<widget class="QLabel" name="additionalSymbolLabel"> |
293 | 293 |
<property name="font"> |
294 | 294 |
<font> |
... | ... | |
301 | 301 |
</property> |
302 | 302 |
</widget> |
303 | 303 |
</item> |
304 |
<item row="10" column="1">
|
|
304 |
<item row="11" column="1">
|
|
305 | 305 |
<layout class="QHBoxLayout" name="horizontalLayout_2"> |
306 | 306 |
<item> |
307 | 307 |
<widget class="QComboBox" name="defaultSymbolDirectionComboBox"> |
... | ... | |
331 | 331 |
</item> |
332 | 332 |
</layout> |
333 | 333 |
</item> |
334 |
<item row="12" column="0">
|
|
334 |
<item row="13" column="0">
|
|
335 | 335 |
<widget class="QLabel" name="originalPointLabel"> |
336 | 336 |
<property name="sizePolicy"> |
337 | 337 |
<sizepolicy hsizetype="Preferred" vsizetype="Preferred"> |
... | ... | |
353 | 353 |
</property> |
354 | 354 |
</widget> |
355 | 355 |
</item> |
356 |
<item row="12" column="1">
|
|
356 |
<item row="13" column="1">
|
|
357 | 357 |
<layout class="QHBoxLayout" name="horizontalLayout_4"> |
358 | 358 |
<item> |
359 | 359 |
<widget class="QLineEdit" name="originalPointLineEdit"> |
... | ... | |
377 | 377 |
</item> |
378 | 378 |
</layout> |
379 | 379 |
</item> |
380 |
<item row="15" column="0">
|
|
380 |
<item row="16" column="0">
|
|
381 | 381 |
<widget class="QLabel" name="connectionPointLabel"> |
382 | 382 |
<property name="font"> |
383 | 383 |
<font> |
... | ... | |
393 | 393 |
</property> |
394 | 394 |
</widget> |
395 | 395 |
</item> |
396 |
<item row="15" column="1">
|
|
396 |
<item row="16" column="1">
|
|
397 | 397 |
<layout class="QHBoxLayout" name="horizontalLayout_6"> |
398 | 398 |
<item> |
399 | 399 |
<widget class="QLineEdit" name="connectionPointLineEdit"> |
... | ... | |
417 | 417 |
</item> |
418 | 418 |
</layout> |
419 | 419 |
</item> |
420 |
<item row="16" column="1">
|
|
420 |
<item row="17" column="1">
|
|
421 | 421 |
<widget class="QListWidget" name="connectionPointList"/> |
422 | 422 |
</item> |
423 |
<item row="11" column="1">
|
|
423 |
<item row="12" column="1">
|
|
424 | 424 |
<widget class="QListWidget" name="additionalSymbolListWidget"/> |
425 | 425 |
</item> |
426 |
<item row="9" column="0"> |
|
427 |
<widget class="QLabel" name="typeLabel"> |
|
428 |
<property name="font"> |
|
429 |
<font> |
|
430 |
<weight>75</weight> |
|
431 |
<bold>true</bold> |
|
432 |
</font> |
|
433 |
</property> |
|
434 |
<property name="text"> |
|
435 |
<string>심볼 타입</string> |
|
436 |
</property> |
|
437 |
</widget> |
|
438 |
</item> |
|
439 |
<item row="9" column="1"> |
|
440 |
<widget class="QComboBox" name="typeComboBox"/> |
|
441 |
</item> |
|
426 | 442 |
</layout> |
427 | 443 |
</widget> |
428 | 444 |
</widget> |
... | ... | |
432 | 448 |
<item> |
433 | 449 |
<widget class="QDialogButtonBox" name="buttonBox"> |
434 | 450 |
<property name="standardButtons"> |
435 |
<set>QDialogButtonBox::Cancel|QDialogButtonBox::Save</set>
|
|
451 |
<set>QDialogButtonBox::Close|QDialogButtonBox::Save</set>
|
|
436 | 452 |
</property> |
437 | 453 |
</widget> |
438 | 454 |
</item> |
DTI_PID/DTI_PID/UI_SymbolEditor.py | ||
---|---|---|
150 | 150 |
font.setWeight(75) |
151 | 151 |
self.baseSymbolLabel.setFont(font) |
152 | 152 |
self.baseSymbolLabel.setObjectName("baseSymbolLabel") |
153 |
self.formLayout.setWidget(9, QtWidgets.QFormLayout.LabelRole, self.baseSymbolLabel)
|
|
153 |
self.formLayout.setWidget(10, QtWidgets.QFormLayout.LabelRole, self.baseSymbolLabel)
|
|
154 | 154 |
self.baseSymbolComboBox = QtWidgets.QComboBox(self.formLayoutWidget) |
155 | 155 |
self.baseSymbolComboBox.setObjectName("baseSymbolComboBox") |
156 |
self.formLayout.setWidget(9, QtWidgets.QFormLayout.FieldRole, self.baseSymbolComboBox)
|
|
156 |
self.formLayout.setWidget(10, QtWidgets.QFormLayout.FieldRole, self.baseSymbolComboBox)
|
|
157 | 157 |
self.additionalSymbolLabel = QtWidgets.QLabel(self.formLayoutWidget) |
158 | 158 |
font = QtGui.QFont() |
159 | 159 |
font.setBold(True) |
160 | 160 |
font.setWeight(75) |
161 | 161 |
self.additionalSymbolLabel.setFont(font) |
162 | 162 |
self.additionalSymbolLabel.setObjectName("additionalSymbolLabel") |
163 |
self.formLayout.setWidget(10, QtWidgets.QFormLayout.LabelRole, self.additionalSymbolLabel)
|
|
163 |
self.formLayout.setWidget(11, QtWidgets.QFormLayout.LabelRole, self.additionalSymbolLabel)
|
|
164 | 164 |
self.horizontalLayout_2 = QtWidgets.QHBoxLayout() |
165 | 165 |
self.horizontalLayout_2.setObjectName("horizontalLayout_2") |
166 | 166 |
self.defaultSymbolDirectionComboBox = QtWidgets.QComboBox(self.formLayoutWidget) |
... | ... | |
174 | 174 |
self.addAdditionalSymbolButton.setMaximumSize(QtCore.QSize(40, 16777215)) |
175 | 175 |
self.addAdditionalSymbolButton.setObjectName("addAdditionalSymbolButton") |
176 | 176 |
self.horizontalLayout_2.addWidget(self.addAdditionalSymbolButton) |
177 |
self.formLayout.setLayout(10, QtWidgets.QFormLayout.FieldRole, self.horizontalLayout_2)
|
|
177 |
self.formLayout.setLayout(11, QtWidgets.QFormLayout.FieldRole, self.horizontalLayout_2)
|
|
178 | 178 |
self.originalPointLabel = QtWidgets.QLabel(self.formLayoutWidget) |
179 | 179 |
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Preferred) |
180 | 180 |
sizePolicy.setHorizontalStretch(0) |
... | ... | |
187 | 187 |
self.originalPointLabel.setFont(font) |
188 | 188 |
self.originalPointLabel.setAlignment(QtCore.Qt.AlignLeading|QtCore.Qt.AlignLeft|QtCore.Qt.AlignVCenter) |
189 | 189 |
self.originalPointLabel.setObjectName("originalPointLabel") |
190 |
self.formLayout.setWidget(12, QtWidgets.QFormLayout.LabelRole, self.originalPointLabel)
|
|
190 |
self.formLayout.setWidget(13, QtWidgets.QFormLayout.LabelRole, self.originalPointLabel)
|
|
191 | 191 |
self.horizontalLayout_4 = QtWidgets.QHBoxLayout() |
192 | 192 |
self.horizontalLayout_4.setObjectName("horizontalLayout_4") |
193 | 193 |
self.originalPointLineEdit = QtWidgets.QLineEdit(self.formLayoutWidget) |
... | ... | |
198 | 198 |
self.addOriginalPointButton.setMaximumSize(QtCore.QSize(40, 16777215)) |
199 | 199 |
self.addOriginalPointButton.setObjectName("addOriginalPointButton") |
200 | 200 |
self.horizontalLayout_4.addWidget(self.addOriginalPointButton) |
201 |
self.formLayout.setLayout(12, QtWidgets.QFormLayout.FieldRole, self.horizontalLayout_4)
|
|
201 |
self.formLayout.setLayout(13, QtWidgets.QFormLayout.FieldRole, self.horizontalLayout_4)
|
|
202 | 202 |
self.connectionPointLabel = QtWidgets.QLabel(self.formLayoutWidget) |
203 | 203 |
font = QtGui.QFont() |
204 | 204 |
font.setBold(True) |
... | ... | |
206 | 206 |
self.connectionPointLabel.setFont(font) |
207 | 207 |
self.connectionPointLabel.setAlignment(QtCore.Qt.AlignLeading|QtCore.Qt.AlignLeft|QtCore.Qt.AlignVCenter) |
208 | 208 |
self.connectionPointLabel.setObjectName("connectionPointLabel") |
209 |
self.formLayout.setWidget(15, QtWidgets.QFormLayout.LabelRole, self.connectionPointLabel)
|
|
209 |
self.formLayout.setWidget(16, QtWidgets.QFormLayout.LabelRole, self.connectionPointLabel)
|
|
210 | 210 |
self.horizontalLayout_6 = QtWidgets.QHBoxLayout() |
211 | 211 |
self.horizontalLayout_6.setObjectName("horizontalLayout_6") |
212 | 212 |
self.connectionPointLineEdit = QtWidgets.QLineEdit(self.formLayoutWidget) |
... | ... | |
217 | 217 |
self.addConnectionPointButton.setMaximumSize(QtCore.QSize(40, 16777215)) |
218 | 218 |
self.addConnectionPointButton.setObjectName("addConnectionPointButton") |
219 | 219 |
self.horizontalLayout_6.addWidget(self.addConnectionPointButton) |
220 |
self.formLayout.setLayout(15, QtWidgets.QFormLayout.FieldRole, self.horizontalLayout_6)
|
|
220 |
self.formLayout.setLayout(16, QtWidgets.QFormLayout.FieldRole, self.horizontalLayout_6)
|
|
221 | 221 |
self.connectionPointList = QtWidgets.QListWidget(self.formLayoutWidget) |
222 | 222 |
self.connectionPointList.setObjectName("connectionPointList") |
223 |
self.formLayout.setWidget(16, QtWidgets.QFormLayout.FieldRole, self.connectionPointList)
|
|
223 |
self.formLayout.setWidget(17, QtWidgets.QFormLayout.FieldRole, self.connectionPointList)
|
|
224 | 224 |
self.additionalSymbolListWidget = QtWidgets.QListWidget(self.formLayoutWidget) |
225 | 225 |
self.additionalSymbolListWidget.setObjectName("additionalSymbolListWidget") |
226 |
self.formLayout.setWidget(11, QtWidgets.QFormLayout.FieldRole, self.additionalSymbolListWidget) |
|
226 |
self.formLayout.setWidget(12, QtWidgets.QFormLayout.FieldRole, self.additionalSymbolListWidget) |
|
227 |
self.typeLabel = QtWidgets.QLabel(self.formLayoutWidget) |
|
228 |
font = QtGui.QFont() |
|
229 |
font.setBold(True) |
|
230 |
font.setWeight(75) |
|
231 |
self.typeLabel.setFont(font) |
|
232 |
self.typeLabel.setObjectName("typeLabel") |
|
233 |
self.formLayout.setWidget(9, QtWidgets.QFormLayout.LabelRole, self.typeLabel) |
|
234 |
self.typeComboBox = QtWidgets.QComboBox(self.formLayoutWidget) |
|
235 |
self.typeComboBox.setObjectName("typeComboBox") |
|
236 |
self.formLayout.setWidget(9, QtWidgets.QFormLayout.FieldRole, self.typeComboBox) |
|
227 | 237 |
self.scrollArea.setWidget(self.scrollAreaWidgetContents) |
228 | 238 |
self.verticalLayout.addWidget(self.scrollArea) |
229 | 239 |
self.buttonBox = QtWidgets.QDialogButtonBox(self.verticalLayoutWidget) |
230 |
self.buttonBox.setStandardButtons(QtWidgets.QDialogButtonBox.Cancel|QtWidgets.QDialogButtonBox.Save)
|
|
240 |
self.buttonBox.setStandardButtons(QtWidgets.QDialogButtonBox.Close|QtWidgets.QDialogButtonBox.Save)
|
|
231 | 241 |
self.buttonBox.setObjectName("buttonBox") |
232 | 242 |
self.verticalLayout.addWidget(self.buttonBox) |
233 | 243 |
self.widget_3 = QtWidgets.QWidget(self.widget_2) |
... | ... | |
311 | 321 |
Dialog.setWindowTitle(_translate("Dialog", "Dialog")) |
312 | 322 |
self.targetDBLabel.setText(_translate("Dialog", "대상 DB")) |
313 | 323 |
self.idLabel.setText(_translate("Dialog", "ID")) |
314 |
self.nameLabel.setText(_translate("Dialog", "Name"))
|
|
324 |
self.nameLabel.setText(_translate("Dialog", "심볼명"))
|
|
315 | 325 |
self.thresholdLabel.setText(_translate("Dialog", "임계값(%)")) |
316 | 326 |
self.minMatchPointLabel.setText(_translate("Dialog", "최소 특징점 개수")) |
317 | 327 |
self.isOriginDetectLabel.setText(_translate("Dialog", "검출 소스")) |
... | ... | |
325 | 335 |
self.addOriginalPointButton.setText(_translate("Dialog", "추가")) |
326 | 336 |
self.connectionPointLabel.setText(_translate("Dialog", "Connection Point")) |
327 | 337 |
self.addConnectionPointButton.setText(_translate("Dialog", "추가")) |
338 |
self.typeLabel.setText(_translate("Dialog", "심볼 타입")) |
|
328 | 339 |
self.handButton.setText(_translate("Dialog", "Hand")) |
329 | 340 |
self.cropButton.setText(_translate("Dialog", "Crop")) |
330 | 341 |
self.penButton.setText(_translate("Dialog", "Pen")) |
내보내기 Unified diff