프로젝트

일반

사용자정보

개정판 b7354ec1

IDb7354ec10ac5e19167ee62830e6ff41d2f37237e
상위 07441dd5
하위 61d2ee2b, 2e702ded, a80baec5

백흠경이(가) 약 5년 전에 추가함

issue #477: 트리 컨트롤에서 심볼을 섵택할 수 있도록 수정

Change-Id: I6e306ad4ab7c8b6ffbdff4c02e5ba03a8ec02db6

차이점 보기:

DTI_PID/DTI_PID/ConfigurationDialog.py
76 76
        self.ui.lineEditWhiteCharList.setText(configs[0].value) if 1 == len(configs) else \
77 77
            self.ui.lineEditWhiteCharList.setText(TOCR.DEFAULT_CONF[40:])
78 78
        self.set_page_segmentation_modes()
79
        self.set_ocr_engine_modes()
79 80
        configs = docData.getConfigs('Text Recognition', 'White Single Text')
80 81
        self.ui.lineEditSingleText.setText(configs[0].value) if 1 == len(configs) else \
81 82
            self.ui.lineEditSingleText.setText('H,L')
82 83

  
83 84
        configs = docData.getConfigs('Text Size', 'Min Text Size')
84
        self.ui.minTextSizeSpinBox.setValue(int(configs[0].value)) if 1 == len(
85
            configs) else self.ui.minTextSizeSpinBox.setValue(20)
85
        self.ui.minTextSizeSpinBox.setValue(int(configs[0].value)) if 1 == len(configs) else \
86
            self.ui.minTextSizeSpinBox.setValue(20)
86 87
        configs = docData.getConfigs('Text Size', 'Max Text Size')
87
        self.ui.maxTextSizeSpinBox.setValue(int(configs[0].value)) if 1 == len(
88
            configs) else self.ui.maxTextSizeSpinBox.setValue(60)
88
        self.ui.maxTextSizeSpinBox.setValue(int(configs[0].value)) if 1 == len(configs) else \
89
            self.ui.maxTextSizeSpinBox.setValue(60)
89 90

  
90 91
        configs = docData.getConfigs('Size', 'Delimiter')
91 92
        self.ui.lineEditSizeDelimiter.setText(configs[0].value if 1 == len(configs) else 'X')
......
113 114
            configs) else self.ui.spinBoxFlatSize.setValue(0)
114 115
        configs = docData.getConfigs('Filter', 'Mode')
115 116
        if configs:
116
            size = int(configs[0].value)
117
            self.ui.radioButtonMode2.setChecked(True if size == 1 else False)
118
            self.ui.radioButtonMode1.setChecked(True if size == 0 else False)
117
            mode = int(configs[0].value)
118
            self.ui.checkBoxApplyGaussianBlur.setChecked(mode)
119 119
        else:
120
            self.ui.radioButtonMode2.setChecked(False)
121
            self.ui.radioButtonMode1.setChecked(True)
120
            self.ui.checkBoxApplyGaussianBlur.setChecked(False)
122 121

  
123 122
        # set min,max area for small object
124 123
        configs = docData.getConfigs('Small Object Size', 'Min Area')
......
459 458
                                                           sys.exc_info()[-1].tb_lineno)
460 459
            App.mainWnd().addMessage.emit(MessageType.Error, message)
461 460

  
461
    def set_ocr_engine_modes(self):
462
        """show ocr engine modes"""
463
        try:
464
            model = QStandardItemModel()
465

  
466
            items = [('0', 'Legacy engine only.'),
467
                     ('1', 'Neural nets LSTM engine only.'),
468
                     ('2', 'Legacy + LSTM engines.'),
469
                     ('3', 'Default, based on what is available.')]
470

  
471
            for value, label in items:
472
                value_item = QStandardItem(value)
473
                label_item = QStandardItem(label)
474
                model.appendRow([value_item, label_item])
475

  
476
            model.setHorizontalHeaderLabels(['Value', 'Desc.'])
477

  
478
            view = QTableView(self)
479
            view.verticalHeader().hide()
480

  
481
            self.ui.comboBoxOCREngineMode.setModel(model)
482
            self.ui.comboBoxOCREngineMode.setView(view)
483
            view.resizeColumnsToContents()
484

  
485
            app_doc_data = AppDocData.instance()
486
            configs = app_doc_data.getConfigs('Text Recognition', 'OCR Engine Modes')
487
            if configs:
488
                self.ui.comboBoxOCREngineMode.setCurrentIndex(int(configs[0].value))
489
            else:
490
                self.ui.comboBoxOCREngineMode.setCurrentIndex(0)
491
        except Exception as ex:
492
            from App import App
493
            from AppDocData import MessageType
494

  
495
            message = 'error occurred({}) in {}:{}'.format(ex, sys.exc_info()[-1].tb_frame.f_code.co_filename,
496
                                                           sys.exc_info()[-1].tb_lineno)
497
            App.mainWnd().addMessage.emit(MessageType.Error, message)
498

  
462 499
    def clear_drawing_access_info_clicked(self):
463 500
        reply = QMessageBox.question(self, self.tr('Continue?'),
464 501
                                     self.tr('Are you sure you want to clear drawing access information?'),
......
846 883
            configs.append(Config('Filter', 'ErodeSize', self.ui.spinBoxUnrecognitionIgnoreStep.value()))
847 884
            configs.append(Config('Filter', 'DilateSize', self.ui.spinBoxDilateSize.value()))
848 885
            configs.append(Config('Filter', 'FlatSize', self.ui.spinBoxFlatSize.value()))
849
            configs.append(Config('Filter', 'Mode', '0' if self.ui.radioButtonMode1.isChecked() else '1'))
886
            configs.append(Config('Filter', 'Mode', '1' if self.ui.checkBoxApplyGaussianBlur.isChecked() else '0'))
850 887
            configs.append(Config('Small Object Size', 'Min Area', self.ui.spinBoxMinArea.value()))
851 888
            configs.append(Config('Small Object Size', 'Max Area', self.ui.spinBoxMaxArea.value()))
852 889
            configs.append(Config('Sliding Window', 'Width', self.ui.spinBoxWidth.value()))
DTI_PID/DTI_PID/Configuration_UI.py
2 2

  
3 3
# Form implementation generated from reading ui file '.\UI\Configuration.ui'
4 4
#
5
# Created by: PyQt5 UI code generator 5.14.1
5
# Created by: PyQt5 UI code generator 5.13.0
6 6
#
7 7
# WARNING! All changes made in this file will be lost!
8 8

  
......
13 13
class Ui_ConfigurationDialog(object):
14 14
    def setupUi(self, ConfigurationDialog):
15 15
        ConfigurationDialog.setObjectName("ConfigurationDialog")
16
        ConfigurationDialog.resize(648, 631)
16
        ConfigurationDialog.resize(768, 739)
17 17
        font = QtGui.QFont()
18 18
        font.setFamily("맑은 고딕")
19 19
        ConfigurationDialog.setFont(font)
......
35 35
        self.gridLayout_8.setObjectName("gridLayout_8")
36 36
        self.gridLayout_27 = QtWidgets.QGridLayout()
37 37
        self.gridLayout_27.setObjectName("gridLayout_27")
38
        self.spinBoxUnrecognitionIgnoreStep = QtWidgets.QSpinBox(self.groupBoxFilter)
39
        self.spinBoxUnrecognitionIgnoreStep.setMaximum(10)
40
        self.spinBoxUnrecognitionIgnoreStep.setObjectName("spinBoxUnrecognitionIgnoreStep")
41
        self.gridLayout_27.addWidget(self.spinBoxUnrecognitionIgnoreStep, 1, 1, 1, 1)
42
        self.spinBoxMinimumSize = QtWidgets.QSpinBox(self.groupBoxFilter)
43
        self.spinBoxMinimumSize.setObjectName("spinBoxMinimumSize")
44
        self.gridLayout_27.addWidget(self.spinBoxMinimumSize, 0, 1, 1, 1)
45
        self.spinBoxFlatSize = QtWidgets.QSpinBox(self.groupBoxFilter)
46
        self.spinBoxFlatSize.setObjectName("spinBoxFlatSize")
47
        self.gridLayout_27.addWidget(self.spinBoxFlatSize, 3, 1, 1, 1)
48
        self.label_29 = QtWidgets.QLabel(self.groupBoxFilter)
49
        self.label_29.setMaximumSize(QtCore.QSize(230, 16777215))
50
        self.label_29.setObjectName("label_29")
51
        self.gridLayout_27.addWidget(self.label_29, 2, 0, 1, 1)
52
        self.label_10 = QtWidgets.QLabel(self.groupBoxFilter)
53
        self.label_10.setMaximumSize(QtCore.QSize(230, 16777215))
54
        self.label_10.setObjectName("label_10")
55
        self.gridLayout_27.addWidget(self.label_10, 0, 0, 1, 1)
38
        self.gridLayout_35 = QtWidgets.QGridLayout()
39
        self.gridLayout_35.setObjectName("gridLayout_35")
40
        self.lineEdit = QtWidgets.QLineEdit(self.groupBoxFilter)
41
        self.lineEdit.setObjectName("lineEdit")
42
        self.gridLayout_35.addWidget(self.lineEdit, 2, 2, 1, 1)
43
        self.radioButtonNoThreshold = QtWidgets.QRadioButton(self.groupBoxFilter)
44
        self.radioButtonNoThreshold.setObjectName("radioButtonNoThreshold")
45
        self.gridLayout_35.addWidget(self.radioButtonNoThreshold, 0, 0, 1, 1)
46
        self.radioButtonOTSU = QtWidgets.QRadioButton(self.groupBoxFilter)
47
        self.radioButtonOTSU.setObjectName("radioButtonOTSU")
48
        self.gridLayout_35.addWidget(self.radioButtonOTSU, 1, 0, 1, 1)
49
        self.radioButton = QtWidgets.QRadioButton(self.groupBoxFilter)
50
        self.radioButton.setObjectName("radioButton")
51
        self.gridLayout_35.addWidget(self.radioButton, 2, 0, 1, 1)
52
        self.label_41 = QtWidgets.QLabel(self.groupBoxFilter)
53
        self.label_41.setObjectName("label_41")
54
        self.gridLayout_35.addWidget(self.label_41, 2, 1, 1, 1)
55
        self.label_42 = QtWidgets.QLabel(self.groupBoxFilter)
56
        self.label_42.setObjectName("label_42")
57
        self.gridLayout_35.addWidget(self.label_42, 1, 1, 1, 1)
58
        self.lineEdit_3 = QtWidgets.QLineEdit(self.groupBoxFilter)
59
        self.lineEdit_3.setObjectName("lineEdit_3")
60
        self.gridLayout_35.addWidget(self.lineEdit_3, 1, 2, 1, 1)
61
        self.gridLayout_27.addLayout(self.gridLayout_35, 2, 1, 1, 1)
62
        self.label_32 = QtWidgets.QLabel(self.groupBoxFilter)
63
        self.label_32.setMaximumSize(QtCore.QSize(230, 16777215))
64
        self.label_32.setObjectName("label_32")
65
        self.gridLayout_27.addWidget(self.label_32, 5, 0, 1, 1)
66
        self.label_38 = QtWidgets.QLabel(self.groupBoxFilter)
67
        self.label_38.setObjectName("label_38")
68
        self.gridLayout_27.addWidget(self.label_38, 3, 0, 1, 1)
56 69
        self.label_33 = QtWidgets.QLabel(self.groupBoxFilter)
57 70
        self.label_33.setMinimumSize(QtCore.QSize(230, 0))
58 71
        self.label_33.setMaximumSize(QtCore.QSize(230, 16777215))
59 72
        self.label_33.setObjectName("label_33")
60 73
        self.gridLayout_27.addWidget(self.label_33, 1, 0, 1, 1)
61
        self.label_32 = QtWidgets.QLabel(self.groupBoxFilter)
62
        self.label_32.setMaximumSize(QtCore.QSize(230, 16777215))
63
        self.label_32.setObjectName("label_32")
64
        self.gridLayout_27.addWidget(self.label_32, 3, 0, 1, 1)
65 74
        self.spinBoxDilateSize = QtWidgets.QSpinBox(self.groupBoxFilter)
66 75
        self.spinBoxDilateSize.setMaximum(10)
67 76
        self.spinBoxDilateSize.setObjectName("spinBoxDilateSize")
68
        self.gridLayout_27.addWidget(self.spinBoxDilateSize, 2, 1, 1, 1)
69
        self.label_38 = QtWidgets.QLabel(self.groupBoxFilter)
70
        self.label_38.setObjectName("label_38")
71
        self.gridLayout_27.addWidget(self.label_38, 4, 0, 1, 1)
77
        self.gridLayout_27.addWidget(self.spinBoxDilateSize, 4, 1, 1, 1)
78
        self.label_40 = QtWidgets.QLabel(self.groupBoxFilter)
79
        self.label_40.setObjectName("label_40")
80
        self.gridLayout_27.addWidget(self.label_40, 2, 0, 1, 1)
81
        self.spinBoxFlatSize = QtWidgets.QSpinBox(self.groupBoxFilter)
82
        self.spinBoxFlatSize.setObjectName("spinBoxFlatSize")
83
        self.gridLayout_27.addWidget(self.spinBoxFlatSize, 5, 1, 1, 1)
84
        self.spinBoxMinimumSize = QtWidgets.QSpinBox(self.groupBoxFilter)
85
        self.spinBoxMinimumSize.setObjectName("spinBoxMinimumSize")
86
        self.gridLayout_27.addWidget(self.spinBoxMinimumSize, 0, 1, 1, 1)
87
        self.label_10 = QtWidgets.QLabel(self.groupBoxFilter)
88
        self.label_10.setMaximumSize(QtCore.QSize(230, 16777215))
89
        self.label_10.setObjectName("label_10")
90
        self.gridLayout_27.addWidget(self.label_10, 0, 0, 1, 1)
91
        self.spinBoxUnrecognitionIgnoreStep = QtWidgets.QSpinBox(self.groupBoxFilter)
92
        self.spinBoxUnrecognitionIgnoreStep.setMaximum(10)
93
        self.spinBoxUnrecognitionIgnoreStep.setObjectName("spinBoxUnrecognitionIgnoreStep")
94
        self.gridLayout_27.addWidget(self.spinBoxUnrecognitionIgnoreStep, 1, 1, 1, 1)
95
        self.label_29 = QtWidgets.QLabel(self.groupBoxFilter)
96
        self.label_29.setMaximumSize(QtCore.QSize(230, 16777215))
97
        self.label_29.setObjectName("label_29")
98
        self.gridLayout_27.addWidget(self.label_29, 4, 0, 1, 1)
72 99
        self.horizontalLayout_6 = QtWidgets.QHBoxLayout()
73 100
        self.horizontalLayout_6.setObjectName("horizontalLayout_6")
74
        self.radioButtonMode1 = QtWidgets.QRadioButton(self.groupBoxFilter)
75
        self.radioButtonMode1.setObjectName("radioButtonMode1")
76
        self.buttonGroup_5 = QtWidgets.QButtonGroup(ConfigurationDialog)
77
        self.buttonGroup_5.setObjectName("buttonGroup_5")
78
        self.buttonGroup_5.addButton(self.radioButtonMode1)
79
        self.horizontalLayout_6.addWidget(self.radioButtonMode1)
80
        self.radioButtonMode2 = QtWidgets.QRadioButton(self.groupBoxFilter)
81
        self.radioButtonMode2.setObjectName("radioButtonMode2")
82
        self.buttonGroup_5.addButton(self.radioButtonMode2)
83
        self.horizontalLayout_6.addWidget(self.radioButtonMode2)
84
        self.gridLayout_27.addLayout(self.horizontalLayout_6, 4, 1, 1, 1)
101
        self.checkBoxApplyGaussianBlur = QtWidgets.QCheckBox(self.groupBoxFilter)
102
        self.checkBoxApplyGaussianBlur.setObjectName("checkBoxApplyGaussianBlur")
103
        self.horizontalLayout_6.addWidget(self.checkBoxApplyGaussianBlur)
104
        self.gridLayout_27.addLayout(self.horizontalLayout_6, 3, 1, 1, 1)
85 105
        self.gridLayout_8.addLayout(self.gridLayout_27, 0, 0, 1, 1)
86 106
        self.gridLayout_2.addWidget(self.groupBoxFilter, 2, 1, 1, 1)
87 107
        self.groupBoxText = QtWidgets.QGroupBox(self.Recognition)
......
90 110
        self.gridLayout_14.setObjectName("gridLayout_14")
91 111
        self.gridLayout_25 = QtWidgets.QGridLayout()
92 112
        self.gridLayout_25.setObjectName("gridLayout_25")
93
        self.minTextSizeSpinBox = QtWidgets.QSpinBox(self.groupBoxText)
94
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Fixed)
95
        sizePolicy.setHorizontalStretch(0)
96
        sizePolicy.setVerticalStretch(0)
97
        sizePolicy.setHeightForWidth(self.minTextSizeSpinBox.sizePolicy().hasHeightForWidth())
98
        self.minTextSizeSpinBox.setSizePolicy(sizePolicy)
99
        self.minTextSizeSpinBox.setMaximumSize(QtCore.QSize(16777215, 16777215))
100
        self.minTextSizeSpinBox.setProperty("value", 30)
101
        self.minTextSizeSpinBox.setObjectName("minTextSizeSpinBox")
102
        self.gridLayout_25.addWidget(self.minTextSizeSpinBox, 5, 1, 1, 1)
113
        self.label_7 = QtWidgets.QLabel(self.groupBoxText)
114
        self.label_7.setObjectName("label_7")
115
        self.gridLayout_25.addWidget(self.label_7, 1, 0, 1, 1)
116
        self.lineEditSingleText = QtWidgets.QLineEdit(self.groupBoxText)
117
        self.lineEditSingleText.setObjectName("lineEditSingleText")
118
        self.gridLayout_25.addWidget(self.lineEditSingleText, 4, 1, 1, 1)
103 119
        self.maxTextSizeSpinBox = QtWidgets.QSpinBox(self.groupBoxText)
104 120
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Fixed)
105 121
        sizePolicy.setHorizontalStretch(0)
......
108 124
        self.maxTextSizeSpinBox.setSizePolicy(sizePolicy)
109 125
        self.maxTextSizeSpinBox.setProperty("value", 60)
110 126
        self.maxTextSizeSpinBox.setObjectName("maxTextSizeSpinBox")
111
        self.gridLayout_25.addWidget(self.maxTextSizeSpinBox, 5, 3, 1, 1)
112
        self.label_21 = QtWidgets.QLabel(self.groupBoxText)
113
        self.label_21.setObjectName("label_21")
114
        self.gridLayout_25.addWidget(self.label_21, 4, 2, 1, 1)
115
        self.label_17 = QtWidgets.QLabel(self.groupBoxText)
116
        self.label_17.setObjectName("label_17")
117
        self.gridLayout_25.addWidget(self.label_17, 5, 0, 1, 1)
118
        self.label_18 = QtWidgets.QLabel(self.groupBoxText)
119
        self.label_18.setObjectName("label_18")
120
        self.gridLayout_25.addWidget(self.label_18, 5, 2, 1, 1)
127
        self.gridLayout_25.addWidget(self.maxTextSizeSpinBox, 6, 3, 1, 1)
121 128
        self.spinBoxExpandSize = QtWidgets.QSpinBox(self.groupBoxText)
122 129
        self.spinBoxExpandSize.setMinimumSize(QtCore.QSize(100, 0))
123 130
        self.spinBoxExpandSize.setObjectName("spinBoxExpandSize")
124
        self.gridLayout_25.addWidget(self.spinBoxExpandSize, 4, 1, 1, 1)
125
        self.spinBoxShrinkSize = QtWidgets.QSpinBox(self.groupBoxText)
126
        self.spinBoxShrinkSize.setMinimumSize(QtCore.QSize(100, 0))
127
        self.spinBoxShrinkSize.setObjectName("spinBoxShrinkSize")
128
        self.gridLayout_25.addWidget(self.spinBoxShrinkSize, 4, 3, 1, 1)
129
        self.label_19 = QtWidgets.QLabel(self.groupBoxText)
130
        self.label_19.setObjectName("label_19")
131
        self.gridLayout_25.addWidget(self.label_19, 0, 0, 1, 1)
132
        self.label_20 = QtWidgets.QLabel(self.groupBoxText)
133
        self.label_20.setObjectName("label_20")
134
        self.gridLayout_25.addWidget(self.label_20, 4, 0, 1, 1)
135
        self.label_7 = QtWidgets.QLabel(self.groupBoxText)
136
        self.label_7.setObjectName("label_7")
137
        self.gridLayout_25.addWidget(self.label_7, 1, 0, 1, 1)
138
        self.label_37 = QtWidgets.QLabel(self.groupBoxText)
139
        self.label_37.setObjectName("label_37")
140
        self.gridLayout_25.addWidget(self.label_37, 3, 0, 1, 1)
131
        self.gridLayout_25.addWidget(self.spinBoxExpandSize, 5, 1, 1, 1)
132
        self.comboBoxPageSegmentationModes = QtWidgets.QComboBox(self.groupBoxText)
133
        self.comboBoxPageSegmentationModes.setObjectName("comboBoxPageSegmentationModes")
134
        self.gridLayout_25.addWidget(self.comboBoxPageSegmentationModes, 2, 1, 1, 3)
135
        self.label_17 = QtWidgets.QLabel(self.groupBoxText)
136
        self.label_17.setObjectName("label_17")
137
        self.gridLayout_25.addWidget(self.label_17, 6, 0, 1, 1)
141 138
        self.label_22 = QtWidgets.QLabel(self.groupBoxText)
142 139
        self.label_22.setObjectName("label_22")
143
        self.gridLayout_25.addWidget(self.label_22, 6, 0, 1, 1)
140
        self.gridLayout_25.addWidget(self.label_22, 7, 0, 1, 1)
144 141
        self.lineEditWhiteCharList = QtWidgets.QLineEdit(self.groupBoxText)
145 142
        self.lineEditWhiteCharList.setObjectName("lineEditWhiteCharList")
146 143
        self.gridLayout_25.addWidget(self.lineEditWhiteCharList, 1, 1, 1, 3)
147
        self.lineEditSingleText = QtWidgets.QLineEdit(self.groupBoxText)
148
        self.lineEditSingleText.setObjectName("lineEditSingleText")
149
        self.gridLayout_25.addWidget(self.lineEditSingleText, 3, 1, 1, 1)
150
        self.spinBoxMergeSize = QtWidgets.QSpinBox(self.groupBoxText)
151
        self.spinBoxMergeSize.setMinimumSize(QtCore.QSize(100, 0))
152
        self.spinBoxMergeSize.setObjectName("spinBoxMergeSize")
153
        self.gridLayout_25.addWidget(self.spinBoxMergeSize, 6, 1, 1, 1)
154 144
        self.comboBoxOCRData = QtWidgets.QComboBox(self.groupBoxText)
155 145
        self.comboBoxOCRData.setMinimumSize(QtCore.QSize(200, 0))
156 146
        self.comboBoxOCRData.setMaximumSize(QtCore.QSize(200, 16777215))
157 147
        self.comboBoxOCRData.setObjectName("comboBoxOCRData")
158 148
        self.gridLayout_25.addWidget(self.comboBoxOCRData, 0, 1, 1, 1)
149
        self.label_18 = QtWidgets.QLabel(self.groupBoxText)
150
        self.label_18.setObjectName("label_18")
151
        self.gridLayout_25.addWidget(self.label_18, 6, 2, 1, 1)
159 152
        self.label_39 = QtWidgets.QLabel(self.groupBoxText)
160 153
        self.label_39.setObjectName("label_39")
161 154
        self.gridLayout_25.addWidget(self.label_39, 2, 0, 1, 1)
162
        self.comboBoxPageSegmentationModes = QtWidgets.QComboBox(self.groupBoxText)
163
        self.comboBoxPageSegmentationModes.setObjectName("comboBoxPageSegmentationModes")
164
        self.gridLayout_25.addWidget(self.comboBoxPageSegmentationModes, 2, 1, 1, 3)
155
        self.label_20 = QtWidgets.QLabel(self.groupBoxText)
156
        self.label_20.setObjectName("label_20")
157
        self.gridLayout_25.addWidget(self.label_20, 5, 0, 1, 1)
158
        self.label_21 = QtWidgets.QLabel(self.groupBoxText)
159
        self.label_21.setObjectName("label_21")
160
        self.gridLayout_25.addWidget(self.label_21, 5, 2, 1, 1)
161
        self.label_19 = QtWidgets.QLabel(self.groupBoxText)
162
        self.label_19.setObjectName("label_19")
163
        self.gridLayout_25.addWidget(self.label_19, 0, 0, 1, 1)
164
        self.spinBoxMergeSize = QtWidgets.QSpinBox(self.groupBoxText)
165
        self.spinBoxMergeSize.setMinimumSize(QtCore.QSize(100, 0))
166
        self.spinBoxMergeSize.setObjectName("spinBoxMergeSize")
167
        self.gridLayout_25.addWidget(self.spinBoxMergeSize, 7, 1, 1, 1)
168
        self.minTextSizeSpinBox = QtWidgets.QSpinBox(self.groupBoxText)
169
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Fixed)
170
        sizePolicy.setHorizontalStretch(0)
171
        sizePolicy.setVerticalStretch(0)
172
        sizePolicy.setHeightForWidth(self.minTextSizeSpinBox.sizePolicy().hasHeightForWidth())
173
        self.minTextSizeSpinBox.setSizePolicy(sizePolicy)
174
        self.minTextSizeSpinBox.setMaximumSize(QtCore.QSize(16777215, 16777215))
175
        self.minTextSizeSpinBox.setProperty("value", 30)
176
        self.minTextSizeSpinBox.setObjectName("minTextSizeSpinBox")
177
        self.gridLayout_25.addWidget(self.minTextSizeSpinBox, 6, 1, 1, 1)
178
        self.spinBoxShrinkSize = QtWidgets.QSpinBox(self.groupBoxText)
179
        self.spinBoxShrinkSize.setMinimumSize(QtCore.QSize(100, 0))
180
        self.spinBoxShrinkSize.setObjectName("spinBoxShrinkSize")
181
        self.gridLayout_25.addWidget(self.spinBoxShrinkSize, 5, 3, 1, 1)
182
        self.label_37 = QtWidgets.QLabel(self.groupBoxText)
183
        self.label_37.setObjectName("label_37")
184
        self.gridLayout_25.addWidget(self.label_37, 4, 0, 1, 1)
165 185
        self.labelTesseractVersion = QtWidgets.QLabel(self.groupBoxText)
166 186
        self.labelTesseractVersion.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter)
167 187
        self.labelTesseractVersion.setObjectName("labelTesseractVersion")
168 188
        self.gridLayout_25.addWidget(self.labelTesseractVersion, 0, 2, 1, 2)
189
        self.label_43 = QtWidgets.QLabel(self.groupBoxText)
190
        self.label_43.setObjectName("label_43")
191
        self.gridLayout_25.addWidget(self.label_43, 3, 0, 1, 1)
192
        self.comboBoxOCREngineMode = QtWidgets.QComboBox(self.groupBoxText)
193
        self.comboBoxOCREngineMode.setObjectName("comboBoxOCREngineMode")
194
        self.gridLayout_25.addWidget(self.comboBoxOCREngineMode, 3, 1, 1, 3)
169 195
        self.gridLayout_14.addLayout(self.gridLayout_25, 0, 0, 1, 1)
170 196
        self.gridLayout_2.addWidget(self.groupBoxText, 0, 1, 1, 1)
171 197
        self.groupBoxAttribute = QtWidgets.QGroupBox(self.Recognition)
......
659 685
        QtCore.QMetaObject.connectSlotsByName(ConfigurationDialog)
660 686
        ConfigurationDialog.setTabOrder(self.comboBoxOCRData, self.lineEditWhiteCharList)
661 687
        ConfigurationDialog.setTabOrder(self.lineEditWhiteCharList, self.comboBoxPageSegmentationModes)
662
        ConfigurationDialog.setTabOrder(self.comboBoxPageSegmentationModes, self.lineEditSingleText)
688
        ConfigurationDialog.setTabOrder(self.comboBoxPageSegmentationModes, self.comboBoxOCREngineMode)
689
        ConfigurationDialog.setTabOrder(self.comboBoxOCREngineMode, self.lineEditSingleText)
663 690
        ConfigurationDialog.setTabOrder(self.lineEditSingleText, self.spinBoxExpandSize)
664 691
        ConfigurationDialog.setTabOrder(self.spinBoxExpandSize, self.spinBoxShrinkSize)
665 692
        ConfigurationDialog.setTabOrder(self.spinBoxShrinkSize, self.minTextSizeSpinBox)
......
671 698
        ConfigurationDialog.setTabOrder(self.spinBoxFlowMarkPosition, self.spinBoxFlowMarkLength)
672 699
        ConfigurationDialog.setTabOrder(self.spinBoxFlowMarkLength, self.spinBoxMinimumSize)
673 700
        ConfigurationDialog.setTabOrder(self.spinBoxMinimumSize, self.spinBoxUnrecognitionIgnoreStep)
674
        ConfigurationDialog.setTabOrder(self.spinBoxUnrecognitionIgnoreStep, self.spinBoxDilateSize)
701
        ConfigurationDialog.setTabOrder(self.spinBoxUnrecognitionIgnoreStep, self.radioButtonNoThreshold)
702
        ConfigurationDialog.setTabOrder(self.radioButtonNoThreshold, self.radioButtonOTSU)
703
        ConfigurationDialog.setTabOrder(self.radioButtonOTSU, self.lineEdit_3)
704
        ConfigurationDialog.setTabOrder(self.lineEdit_3, self.radioButton)
705
        ConfigurationDialog.setTabOrder(self.radioButton, self.lineEdit)
706
        ConfigurationDialog.setTabOrder(self.lineEdit, self.checkBoxApplyGaussianBlur)
707
        ConfigurationDialog.setTabOrder(self.checkBoxApplyGaussianBlur, self.spinBoxDilateSize)
675 708
        ConfigurationDialog.setTabOrder(self.spinBoxDilateSize, self.spinBoxFlatSize)
676
        ConfigurationDialog.setTabOrder(self.spinBoxFlatSize, self.radioButtonMode1)
677
        ConfigurationDialog.setTabOrder(self.radioButtonMode1, self.radioButtonMode2)
678
        ConfigurationDialog.setTabOrder(self.radioButtonMode2, self.spinBoxMinArea)
709
        ConfigurationDialog.setTabOrder(self.spinBoxFlatSize, self.spinBoxMinArea)
679 710
        ConfigurationDialog.setTabOrder(self.spinBoxMinArea, self.spinBoxMaxArea)
680 711
        ConfigurationDialog.setTabOrder(self.spinBoxMaxArea, self.spinBoxWidth)
681 712
        ConfigurationDialog.setTabOrder(self.spinBoxWidth, self.spinBoxHeight)
......
725 756
        _translate = QtCore.QCoreApplication.translate
726 757
        ConfigurationDialog.setWindowTitle(_translate("ConfigurationDialog", "Configuration"))
727 758
        self.groupBoxFilter.setTitle(_translate("ConfigurationDialog", "Filter"))
728
        self.label_29.setText(_translate("ConfigurationDialog", "Drawing Thickness Reinforcement Step : "))
729
        self.label_10.setText(_translate("ConfigurationDialog", "Minimum Detection Size : "))
730
        self.label_33.setText(_translate("ConfigurationDialog", "Unrecognition Ignore Step : "))
759
        self.radioButtonNoThreshold.setText(_translate("ConfigurationDialog", "No"))
760
        self.radioButtonOTSU.setText(_translate("ConfigurationDialog", "OTSU"))
761
        self.radioButton.setText(_translate("ConfigurationDialog", "Binary"))
762
        self.label_41.setText(_translate("ConfigurationDialog", "thres = "))
763
        self.label_42.setText(_translate("ConfigurationDialog", "thres = "))
731 764
        self.label_32.setText(_translate("ConfigurationDialog", "Drawing Flattening Step : "))
732
        self.label_38.setText(_translate("ConfigurationDialog", "Drawing Opening Mode"))
733
        self.radioButtonMode1.setText(_translate("ConfigurationDialog", "Default"))
734
        self.radioButtonMode2.setText(_translate("ConfigurationDialog", "Advanced"))
765
        self.label_38.setText(_translate("ConfigurationDialog", "Gaussian Blur"))
766
        self.label_33.setText(_translate("ConfigurationDialog", "Unrecognition Ignore Step : "))
767
        self.label_40.setText(_translate("ConfigurationDialog", "Threshold"))
768
        self.label_10.setText(_translate("ConfigurationDialog", "Minimum Detection Size : "))
769
        self.label_29.setText(_translate("ConfigurationDialog", "Drawing Thickness Reinforcement Step : "))
770
        self.checkBoxApplyGaussianBlur.setText(_translate("ConfigurationDialog", "Apply"))
735 771
        self.groupBoxText.setTitle(_translate("ConfigurationDialog", "Text Detection"))
736
        self.label_21.setText(_translate("ConfigurationDialog", "Erosion Size : "))
772
        self.label_7.setText(_translate("ConfigurationDialog", "Detected string : "))
737 773
        self.label_17.setText(_translate("ConfigurationDialog", "Minimum Text Size : "))
774
        self.label_22.setText(_translate("ConfigurationDialog", "Merge Size : "))
738 775
        self.label_18.setText(_translate("ConfigurationDialog", "Maximum Text Size : "))
739
        self.label_19.setText(_translate("ConfigurationDialog", "OCR Source : "))
776
        self.label_39.setText(_translate("ConfigurationDialog", "Page segmentations modes"))
740 777
        self.label_20.setText(_translate("ConfigurationDialog", "Expansion Size : "))
741
        self.label_7.setText(_translate("ConfigurationDialog", "Detected string : "))
778
        self.label_21.setText(_translate("ConfigurationDialog", "Erosion Size : "))
779
        self.label_19.setText(_translate("ConfigurationDialog", "OCR Source : "))
742 780
        self.label_37.setText(_translate("ConfigurationDialog", "Allowed Single Text : "))
743
        self.label_22.setText(_translate("ConfigurationDialog", "Merge Size : "))
744
        self.label_39.setText(_translate("ConfigurationDialog", "Page segmentations modes"))
745 781
        self.labelTesseractVersion.setText(_translate("ConfigurationDialog", "TextLabel"))
782
        self.label_43.setText(_translate("ConfigurationDialog", "OCR Engine Mode"))
746 783
        self.groupBoxAttribute.setTitle(_translate("ConfigurationDialog", "Attribute"))
747 784
        self.label_6.setText(_translate("ConfigurationDialog", "Size Delimiter : "))
748 785
        self.label_24.setText(_translate("ConfigurationDialog", "Line Flow Mark Position(Percent) : "))
DTI_PID/DTI_PID/Project_UI.py
13 13
class Ui_ProjectDialog(object):
14 14
    def setupUi(self, ProjectDialog):
15 15
        ProjectDialog.setObjectName("ProjectDialog")
16
        ProjectDialog.resize(650, 309)
17
        ProjectDialog.setMinimumSize(QtCore.QSize(650, 79))
18
        ProjectDialog.setMaximumSize(QtCore.QSize(650, 400))
16
        ProjectDialog.resize(679, 325)
17
        ProjectDialog.setMinimumSize(QtCore.QSize(0, 0))
18
        ProjectDialog.setMaximumSize(QtCore.QSize(16777215, 16777215))
19 19
        font = QtGui.QFont()
20 20
        font.setFamily("맑은 고딕")
21 21
        font.setBold(True)
......
26 26
        ProjectDialog.setWindowIcon(icon)
27 27
        self.gridLayout = QtWidgets.QGridLayout(ProjectDialog)
28 28
        self.gridLayout.setObjectName("gridLayout")
29
        self.formLayout = QtWidgets.QFormLayout()
30
        self.formLayout.setObjectName("formLayout")
31
        self.label = QtWidgets.QLabel(ProjectDialog)
29
        self.buttonBox = QtWidgets.QDialogButtonBox(ProjectDialog)
32 30
        font = QtGui.QFont()
33 31
        font.setFamily("맑은 고딕")
32
        font.setBold(True)
33
        font.setWeight(75)
34
        self.buttonBox.setFont(font)
35
        self.buttonBox.setStandardButtons(QtWidgets.QDialogButtonBox.Cancel|QtWidgets.QDialogButtonBox.Ok)
36
        self.buttonBox.setObjectName("buttonBox")
37
        self.gridLayout.addWidget(self.buttonBox, 2, 0, 1, 1)
38
        self.groupBoxDBType = QtWidgets.QGroupBox(ProjectDialog)
39
        self.groupBoxDBType.setObjectName("groupBoxDBType")
40
        self.gridLayout_2 = QtWidgets.QGridLayout(self.groupBoxDBType)
41
        self.gridLayout_2.setObjectName("gridLayout_2")
42
        self.gridLayout_3 = QtWidgets.QGridLayout()
43
        self.gridLayout_3.setObjectName("gridLayout_3")
44
        self.lineEditPassword = QtWidgets.QLineEdit(self.groupBoxDBType)
45
        self.lineEditPassword.setEnabled(False)
46
        self.lineEditPassword.setInputMask("")
47
        self.lineEditPassword.setObjectName("lineEditPassword")
48
        self.gridLayout_3.addWidget(self.lineEditPassword, 3, 2, 1, 1)
49
        self.lineEditUser = QtWidgets.QLineEdit(self.groupBoxDBType)
50
        self.lineEditUser.setEnabled(False)
51
        self.lineEditUser.setObjectName("lineEditUser")
52
        self.gridLayout_3.addWidget(self.lineEditUser, 2, 2, 1, 1)
53
        self.lineEditServer = QtWidgets.QLineEdit(self.groupBoxDBType)
54
        self.lineEditServer.setEnabled(False)
55
        self.lineEditServer.setObjectName("lineEditServer")
56
        self.gridLayout_3.addWidget(self.lineEditServer, 1, 2, 1, 1)
57
        self.radioButtonSQLite = QtWidgets.QRadioButton(self.groupBoxDBType)
58
        self.radioButtonSQLite.setChecked(True)
59
        self.radioButtonSQLite.setObjectName("radioButtonSQLite")
60
        self.gridLayout_3.addWidget(self.radioButtonSQLite, 0, 0, 1, 1)
61
        self.labelServer = QtWidgets.QLabel(self.groupBoxDBType)
62
        self.labelServer.setObjectName("labelServer")
63
        self.gridLayout_3.addWidget(self.labelServer, 1, 1, 1, 1)
64
        self.labelUser = QtWidgets.QLabel(self.groupBoxDBType)
65
        self.labelUser.setObjectName("labelUser")
66
        self.gridLayout_3.addWidget(self.labelUser, 2, 1, 1, 1)
67
        self.labelPassword = QtWidgets.QLabel(self.groupBoxDBType)
68
        self.labelPassword.setObjectName("labelPassword")
69
        self.gridLayout_3.addWidget(self.labelPassword, 3, 1, 1, 1)
70
        self.pushButtonTestConnection = QtWidgets.QPushButton(self.groupBoxDBType)
71
        self.pushButtonTestConnection.setEnabled(False)
72
        self.pushButtonTestConnection.setObjectName("pushButtonTestConnection")
73
        self.gridLayout_3.addWidget(self.pushButtonTestConnection, 4, 1, 1, 2)
74
        self.radioButtonMSSQL = QtWidgets.QRadioButton(self.groupBoxDBType)
75
        self.radioButtonMSSQL.setObjectName("radioButtonMSSQL")
76
        self.gridLayout_3.addWidget(self.radioButtonMSSQL, 0, 1, 1, 1)
77
        self.gridLayout_2.addLayout(self.gridLayout_3, 0, 0, 1, 1)
78
        self.gridLayout.addWidget(self.groupBoxDBType, 1, 0, 1, 1)
79
        self.gridLayout_4 = QtWidgets.QGridLayout()
80
        self.gridLayout_4.setObjectName("gridLayout_4")
81
        self.comboBoxProjectUnit = QtWidgets.QComboBox(ProjectDialog)
82
        self.comboBoxProjectUnit.setObjectName("comboBoxProjectUnit")
83
        self.gridLayout_4.addWidget(self.comboBoxProjectUnit, 2, 1, 1, 1)
84
        self.lineEditProjectDesc = QtWidgets.QLineEdit(ProjectDialog)
85
        self.lineEditProjectDesc.setObjectName("lineEditProjectDesc")
86
        self.gridLayout_4.addWidget(self.lineEditProjectDesc, 1, 1, 1, 1)
87
        self.toolButtonDelete = QtWidgets.QToolButton(ProjectDialog)
88
        self.toolButtonDelete.setObjectName("toolButtonDelete")
89
        self.gridLayout_4.addWidget(self.toolButtonDelete, 0, 3, 1, 1)
90
        self.label_2 = QtWidgets.QLabel(ProjectDialog)
91
        font = QtGui.QFont()
34 92
        font.setPointSize(10)
35 93
        font.setBold(False)
36 94
        font.setWeight(50)
37
        self.label.setFont(font)
38
        self.label.setObjectName("label")
39
        self.formLayout.setWidget(0, QtWidgets.QFormLayout.LabelRole, self.label)
40
        self.horizontalLayout = QtWidgets.QHBoxLayout()
41
        self.horizontalLayout.setObjectName("horizontalLayout")
42
        self.comboBox = QtWidgets.QComboBox(ProjectDialog)
43
        font = QtGui.QFont()
44
        font.setFamily("맑은 고딕")
45
        font.setPointSize(10)
46
        font.setBold(True)
47
        font.setWeight(75)
48
        self.comboBox.setFont(font)
49
        self.comboBox.setObjectName("comboBox")
50
        self.horizontalLayout.addWidget(self.comboBox)
95
        self.label_2.setFont(font)
96
        self.label_2.setObjectName("label_2")
97
        self.gridLayout_4.addWidget(self.label_2, 1, 0, 1, 1)
51 98
        self.toolButton = QtWidgets.QToolButton(ProjectDialog)
52 99
        font = QtGui.QFont()
53 100
        font.setFamily("Noto Sans CJK KR Bold")
......
58 105
        icon = QtGui.QIcon.fromTheme("add")
59 106
        self.toolButton.setIcon(icon)
60 107
        self.toolButton.setObjectName("toolButton")
61
        self.horizontalLayout.addWidget(self.toolButton)
62
        self.toolButtonDelete = QtWidgets.QToolButton(ProjectDialog)
63
        self.toolButtonDelete.setObjectName("toolButtonDelete")
64
        self.horizontalLayout.addWidget(self.toolButtonDelete)
65
        self.formLayout.setLayout(0, QtWidgets.QFormLayout.FieldRole, self.horizontalLayout)
66
        self.label_2 = QtWidgets.QLabel(ProjectDialog)
108
        self.gridLayout_4.addWidget(self.toolButton, 0, 2, 1, 1)
109
        self.label = QtWidgets.QLabel(ProjectDialog)
67 110
        font = QtGui.QFont()
111
        font.setFamily("맑은 고딕")
68 112
        font.setPointSize(10)
69 113
        font.setBold(False)
70 114
        font.setWeight(50)
71
        self.label_2.setFont(font)
72
        self.label_2.setObjectName("label_2")
73
        self.formLayout.setWidget(1, QtWidgets.QFormLayout.LabelRole, self.label_2)
74
        self.lineEditProjectDesc = QtWidgets.QLineEdit(ProjectDialog)
75
        self.lineEditProjectDesc.setObjectName("lineEditProjectDesc")
76
        self.formLayout.setWidget(1, QtWidgets.QFormLayout.FieldRole, self.lineEditProjectDesc)
115
        self.label.setFont(font)
116
        self.label.setObjectName("label")
117
        self.gridLayout_4.addWidget(self.label, 0, 0, 1, 1)
118
        self.comboBox = QtWidgets.QComboBox(ProjectDialog)
119
        font = QtGui.QFont()
120
        font.setFamily("맑은 고딕")
121
        font.setPointSize(10)
122
        font.setBold(True)
123
        font.setWeight(75)
124
        self.comboBox.setFont(font)
125
        self.comboBox.setObjectName("comboBox")
126
        self.gridLayout_4.addWidget(self.comboBox, 0, 1, 1, 1)
77 127
        self.label_3 = QtWidgets.QLabel(ProjectDialog)
78 128
        font = QtGui.QFont()
79 129
        font.setPointSize(10)
......
81 131
        font.setWeight(50)
82 132
        self.label_3.setFont(font)
83 133
        self.label_3.setObjectName("label_3")
84
        self.formLayout.setWidget(2, QtWidgets.QFormLayout.LabelRole, self.label_3)
85
        self.comboBoxProjectUnit = QtWidgets.QComboBox(ProjectDialog)
86
        self.comboBoxProjectUnit.setObjectName("comboBoxProjectUnit")
87
        self.formLayout.setWidget(2, QtWidgets.QFormLayout.FieldRole, self.comboBoxProjectUnit)
88
        self.gridLayout.addLayout(self.formLayout, 0, 0, 1, 1)
89
        self.groupBoxDBType = QtWidgets.QGroupBox(ProjectDialog)
90
        self.groupBoxDBType.setObjectName("groupBoxDBType")
91
        self.gridLayout_2 = QtWidgets.QGridLayout(self.groupBoxDBType)
92
        self.gridLayout_2.setObjectName("gridLayout_2")
93
        self.formLayout_2 = QtWidgets.QFormLayout()
94
        self.formLayout_2.setObjectName("formLayout_2")
95
        self.radioButtonSQLite = QtWidgets.QRadioButton(self.groupBoxDBType)
96
        self.radioButtonSQLite.setChecked(True)
97
        self.radioButtonSQLite.setObjectName("radioButtonSQLite")
98
        self.formLayout_2.setWidget(0, QtWidgets.QFormLayout.LabelRole, self.radioButtonSQLite)
99
        self.radioButtonMSSQL = QtWidgets.QRadioButton(self.groupBoxDBType)
100
        self.radioButtonMSSQL.setObjectName("radioButtonMSSQL")
101
        self.formLayout_2.setWidget(0, QtWidgets.QFormLayout.FieldRole, self.radioButtonMSSQL)
102
        spacerItem = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum)
103
        self.formLayout_2.setItem(1, QtWidgets.QFormLayout.LabelRole, spacerItem)
104
        self.formLayout_3 = QtWidgets.QFormLayout()
105
        self.formLayout_3.setObjectName("formLayout_3")
106
        self.labelServer = QtWidgets.QLabel(self.groupBoxDBType)
107
        self.labelServer.setObjectName("labelServer")
108
        self.formLayout_3.setWidget(0, QtWidgets.QFormLayout.LabelRole, self.labelServer)
109
        self.lineEditServer = QtWidgets.QLineEdit(self.groupBoxDBType)
110
        self.lineEditServer.setEnabled(False)
111
        self.lineEditServer.setObjectName("lineEditServer")
112
        self.formLayout_3.setWidget(0, QtWidgets.QFormLayout.FieldRole, self.lineEditServer)
113
        self.labelUser = QtWidgets.QLabel(self.groupBoxDBType)
114
        self.labelUser.setObjectName("labelUser")
115
        self.formLayout_3.setWidget(1, QtWidgets.QFormLayout.LabelRole, self.labelUser)
116
        self.lineEditUser = QtWidgets.QLineEdit(self.groupBoxDBType)
117
        self.lineEditUser.setEnabled(False)
118
        self.lineEditUser.setObjectName("lineEditUser")
119
        self.formLayout_3.setWidget(1, QtWidgets.QFormLayout.FieldRole, self.lineEditUser)
120
        self.labelPassword = QtWidgets.QLabel(self.groupBoxDBType)
121
        self.labelPassword.setObjectName("labelPassword")
122
        self.formLayout_3.setWidget(2, QtWidgets.QFormLayout.LabelRole, self.labelPassword)
123
        self.lineEditPassword = QtWidgets.QLineEdit(self.groupBoxDBType)
124
        self.lineEditPassword.setEnabled(False)
125
        self.lineEditPassword.setInputMask("")
126
        self.lineEditPassword.setObjectName("lineEditPassword")
127
        self.formLayout_3.setWidget(2, QtWidgets.QFormLayout.FieldRole, self.lineEditPassword)
128
        self.formLayout_2.setLayout(1, QtWidgets.QFormLayout.FieldRole, self.formLayout_3)
129
        self.pushButtonTestConnection = QtWidgets.QPushButton(self.groupBoxDBType)
130
        self.pushButtonTestConnection.setEnabled(False)
131
        self.pushButtonTestConnection.setObjectName("pushButtonTestConnection")
132
        self.formLayout_2.setWidget(2, QtWidgets.QFormLayout.FieldRole, self.pushButtonTestConnection)
133
        self.gridLayout_2.addLayout(self.formLayout_2, 0, 0, 1, 1)
134
        self.gridLayout.addWidget(self.groupBoxDBType, 1, 0, 1, 1)
135
        self.buttonBox = QtWidgets.QDialogButtonBox(ProjectDialog)
134
        self.gridLayout_4.addWidget(self.label_3, 2, 0, 1, 1)
135
        self.label_4 = QtWidgets.QLabel(ProjectDialog)
136 136
        font = QtGui.QFont()
137
        font.setFamily("맑은 고딕")
138
        font.setBold(True)
139
        font.setWeight(75)
140
        self.buttonBox.setFont(font)
141
        self.buttonBox.setStandardButtons(QtWidgets.QDialogButtonBox.Cancel|QtWidgets.QDialogButtonBox.Ok)
142
        self.buttonBox.setObjectName("buttonBox")
143
        self.gridLayout.addWidget(self.buttonBox, 2, 0, 1, 1)
137
        font.setPointSize(10)
138
        font.setBold(False)
139
        font.setWeight(50)
140
        self.label_4.setFont(font)
141
        self.label_4.setObjectName("label_4")
142
        self.gridLayout_4.addWidget(self.label_4, 3, 0, 1, 1)
143
        self.comboBox_2 = QtWidgets.QComboBox(ProjectDialog)
144
        self.comboBox_2.setEnabled(False)
145
        font = QtGui.QFont()
146
        font.setPointSize(10)
147
        font.setBold(False)
148
        font.setWeight(50)
149
        self.comboBox_2.setFont(font)
150
        self.comboBox_2.setObjectName("comboBox_2")
151
        self.comboBox_2.addItem("")
152
        self.comboBox_2.addItem("")
153
        self.comboBox_2.addItem("")
154
        self.gridLayout_4.addWidget(self.comboBox_2, 3, 1, 1, 1)
155
        self.gridLayout.addLayout(self.gridLayout_4, 0, 0, 1, 1)
144 156

  
145 157
        self.retranslateUi(ProjectDialog)
146 158
        self.buttonBox.rejected.connect(ProjectDialog.reject)
147 159
        self.buttonBox.accepted.connect(ProjectDialog.accept)
148 160
        QtCore.QMetaObject.connectSlotsByName(ProjectDialog)
161
        ProjectDialog.setTabOrder(self.comboBox, self.toolButton)
162
        ProjectDialog.setTabOrder(self.toolButton, self.toolButtonDelete)
163
        ProjectDialog.setTabOrder(self.toolButtonDelete, self.lineEditProjectDesc)
164
        ProjectDialog.setTabOrder(self.lineEditProjectDesc, self.comboBoxProjectUnit)
165
        ProjectDialog.setTabOrder(self.comboBoxProjectUnit, self.comboBox_2)
166
        ProjectDialog.setTabOrder(self.comboBox_2, self.radioButtonSQLite)
167
        ProjectDialog.setTabOrder(self.radioButtonSQLite, self.radioButtonMSSQL)
168
        ProjectDialog.setTabOrder(self.radioButtonMSSQL, self.lineEditServer)
169
        ProjectDialog.setTabOrder(self.lineEditServer, self.lineEditUser)
170
        ProjectDialog.setTabOrder(self.lineEditUser, self.lineEditPassword)
171
        ProjectDialog.setTabOrder(self.lineEditPassword, self.pushButtonTestConnection)
149 172

  
150 173
    def retranslateUi(self, ProjectDialog):
151 174
        _translate = QtCore.QCoreApplication.translate
152 175
        ProjectDialog.setWindowTitle(_translate("ProjectDialog", "Project"))
153
        self.label.setText(_translate("ProjectDialog", "Project Name"))
154
        self.toolButton.setText(_translate("ProjectDialog", "+"))
155
        self.toolButtonDelete.setText(_translate("ProjectDialog", "-"))
156
        self.label_2.setText(_translate("ProjectDialog", "Project Desc"))
157
        self.label_3.setText(_translate("ProjectDialog", "Project Unit"))
158 176
        self.groupBoxDBType.setTitle(_translate("ProjectDialog", "Database Type"))
159 177
        self.radioButtonSQLite.setText(_translate("ProjectDialog", "SQLite"))
160
        self.radioButtonMSSQL.setText(_translate("ProjectDialog", "MSSQL"))
161 178
        self.labelServer.setText(_translate("ProjectDialog", "Server"))
162 179
        self.labelUser.setText(_translate("ProjectDialog", "User"))
163 180
        self.labelPassword.setText(_translate("ProjectDialog", "Password"))
164 181
        self.pushButtonTestConnection.setText(_translate("ProjectDialog", "Test Connection"))
182
        self.radioButtonMSSQL.setText(_translate("ProjectDialog", "MSSQL"))
183
        self.toolButtonDelete.setText(_translate("ProjectDialog", "-"))
184
        self.label_2.setText(_translate("ProjectDialog", "Project Desc"))
185
        self.toolButton.setText(_translate("ProjectDialog", "+"))
186
        self.label.setText(_translate("ProjectDialog", "Project Name"))
187
        self.label_3.setText(_translate("ProjectDialog", "Project Unit"))
188
        self.label_4.setText(_translate("ProjectDialog", "Target System"))
189
        self.comboBox_2.setItemText(0, _translate("ProjectDialog", "SmartPlant P&ID"))
190
        self.comboBox_2.setItemText(1, _translate("ProjectDialog", "AVEVA P&ID"))
191
        self.comboBox_2.setItemText(2, _translate("ProjectDialog", "IX3"))
165 192
import MainWindow_rc
DTI_PID/DTI_PID/Scripts/Project.Projects.sql
3 3
	`Name`	TEXT UNIQUE,
4 4
	[Desc] TEXT,
5 5
	[Unit] TEXT NOT NULL DEFAULT Metric,
6
	[Target_System] TEXT NOT NULL DEFAULT 'SmartPlant P&ID',
6 7
	`Path`	TEXT NOT NULL,
7 8
	`CreatedDate`	TEXT,
8 9
	`UpdatedDate`	TEXT
DTI_PID/DTI_PID/SymbolEditorDialog.py
231 231
        self.ui.addOriginalPointButton.clicked.connect(self.addOriginalPoint)
232 232
        self.ui.addConnectionPointButton.clicked.connect(self.addConnectionPoint)
233 233
        self.initSymbolTypeComboBoxItems()
234
        self.initBaseSymbolComboBoxItems(None)
234
        #self.initBaseSymbolComboBoxItems(None)
235 235
        self.initAdditionalSymbolComboBoxItems()
236 236
        self.ui.guidelineCheckbox.setChecked(True)
237 237

  
......
256 256
    '''
257 257

  
258 258
    def initSymbolTypeComboBoxItems(self):
259
        app_doc_data = AppDocData.instance()
260

  
261
        model = QStandardItemModel()
262
        row = 0
263
        for category in app_doc_data.getSymbolTypeComboBoxItems():
264
            item = QStandardItem(category[2])
265
            item.setSelectable(False)
266

  
267
            for _type in app_doc_data.getBaseSymbolComboBoxItems(category[2]):
268
                child = QStandardItem(_type)
269
                item.appendRow(child)
270

  
271
            model.setItem(row, 0, item)
272
            row += 1
273

  
274
        model.setHeaderData(0, Qt.Horizontal, 'Category', Qt.DisplayRole)
275

  
276
        """
277
        view = QTreeView(self)
278
        view.setEditTriggers(view.NoEditTriggers)
279
        view.setAlternatingRowColors(True)
280
        view.setSelectionBehavior(view.SelectRows)
281
        view.setWordWrap(True)
282
        view.setAllColumnsShowFocus(True)
283
        self.ui.typeComboBox.setModel(model)
284
        self.ui.typeComboBox.setView(view)
285
        view.expandAll()
286
        """
287

  
288
        self.ui.treeViewSymbolCategory.setModel(model)
289

  
290
        """ 
291
        for row in range(model.rowCount()):
292
            for col in range(model.columnCount()):
293
                item = model.item(row, col)
294
                item.child(0, 0)
295
                if item.text() == 'BL Line':
296
                    index = model.indexFromItem(item)
297
                    self.ui.treeViewSymbolCategory.expand(index)
298
                    self.ui.treeViewSymbolCategory.selectionModel().select(index, QItemSelectionModel.Rows | QItemSelectionModel.Select)
299
        """
300

  
301
        """
259 302
        for item in AppDocData.instance().getSymbolTypeComboBoxItems():
260 303
            self.ui.typeComboBox.addItem(item[2])
261 304
        self.ui.typeComboBox.currentTextChanged.connect(self.symbolTypeTextChagedEvent)
305
        """
262 306

  
307
    """
263 308
    def symbolTypeTextChagedEvent(self, value):
264 309
        self.initBaseSymbolComboBoxItems(value)
310
    """
265 311

  
266 312
    '''
267 313
        @brief  Set data on forms, For modifying symbol
......
279 325
                self.ui.minMatchPointLineEdit.setText(str(self.selectedSymbol.getMinMatchCount()))
280 326
                self.ui.rotationCountSpinBox.setValue(self.selectedSymbol.getRotationCount() * 90)
281 327
                self.ui.isContainChildCheckBox.setChecked(True if self.selectedSymbol.getIsContainChild() else False)
328

  
329
                category = self.ui.treeViewSymbolCategory.model().findItems(self.selectedSymbol.getType(), Qt.MatchExactly)
330
                if category:
331
                    index = self.ui.treeViewSymbolCategory.model().indexFromItem(category[0])
332
                    self.ui.treeViewSymbolCategory.expand(index)
333
                    types = self.ui.treeViewSymbolCategory.model().findItems(self.selectedSymbol.getBaseSymbol(),
334
                                                                                Qt.MatchExactly | Qt.MatchRecursive)
335
                    if types:
336
                        """
337
                        self.ui.treeViewSymbolCategory.selectionModel().select(index,
338
                                                                               QItemSelectionModel.Rows | QItemSelectionModel.Select)
339
                        """
340
                        index = self.ui.treeViewSymbolCategory.model().indexFromItem(types[0])
341
                        self.ui.treeViewSymbolCategory.setCurrentIndex(index)
342

  
343
                """
282 344
                self.ui.typeComboBox.setCurrentIndex(self.ui.typeComboBox.findText(self.selectedSymbol.getType()))
283 345
                self.ui.baseSymbolComboBox.setCurrentIndex(
284 346
                    self.ui.baseSymbolComboBox.findText(self.selectedSymbol.getBaseSymbol()))
347
                """
285 348
                self.ui.isExceptDetectCheckBox.setChecked(True if self.selectedSymbol.getIsExceptDetect() else False)
286 349
                self.ui.makeFlipCheckBox.setChecked(True if self.selectedSymbol.getDetectFlip() else False)
287 350

  
......
398 461
        @brief  Init ComboBox Items For DB Field [baseSymbol]
399 462
    '''
400 463

  
464
    """
401 465
    def initBaseSymbolComboBoxItems(self, type):
402 466
        self.ui.baseSymbolComboBox.clear()
403 467
        for item in AppDocData.instance().getBaseSymbolComboBoxItems(type):
404 468
            self.ui.baseSymbolComboBox.addItem(item)
469
    """
405 470

  
406 471
    '''
407 472
        @brief  Init ComboBox Items For symbolName of DB Field [additionalSymbol]
......
465 530
        else:
466 531
            return newName
467 532

  
468
    '''
469
        @brief  Make symbol object for saving on DB
470
        @history    2018.05.02  Jeongwoo    newSym object changed self.newSym
471
    '''
472

  
473 533
    def makeSymbolData(self, width, height):
534
        """make a symbol object to save to database"""
535

  
474 536
        uid = -1
475 537
        if self.selectedSymbol is not None:
476 538
            uid = self.selectedSymbol.getUid()
477 539
        # symId = self.ui.idLineEdit.text()
478 540
        name = self.ui.nameLineEdit.text()
479
        type = self.ui.typeComboBox.currentText()  # Empty
541

  
542
        index = self.ui.treeViewSymbolCategory.currentIndex()
543
        item = self.ui.treeViewSymbolCategory.model().itemFromIndex(index)
544
        category = item.parent().text()
480 545
        self.FILE_NUMBER = 0
481 546
        lastName = ""
482 547
        if self.selectedSymbol is not None:
......
493 558
        isContainChild = 1 if self.ui.isContainChildCheckBox.isChecked() else 0
494 559
        originalPoint = self.ui.originalPointLineEdit.text()
495 560
        connectionPoint = self.makeConnectionPointListString()
496
        baseSymbol = self.ui.baseSymbolComboBox.currentText()
561
        baseSymbol = item.text() #self.ui.baseSymbolComboBox.currentText()
497 562
        additionalSymbol = self.makeAdditionalSymbolListString()
498 563
        isExceptDetect = 1 if self.ui.isExceptDetectCheckBox.isChecked() else 0
499 564

  
......
506 571
        imageWidth = width
507 572
        iamgeHeight = height
508 573

  
509
        self.newSym = symbol.SymbolBase(fileName, type, convertedThreshold, int(minMatchPoint), True,
574
        self.newSym = symbol.SymbolBase(fileName, category, convertedThreshold, int(minMatchPoint), True,
510 575
                                        rotationCount, ocrOption, isContainChild, originalPoint, connectionPoint,
511 576
                                        baseSymbol, additionalSymbol, isExceptDetect, hasInstrumentLabel, uid,
512 577
                                        imageWidth, iamgeHeight, detectFlip=detectFlip)
......
565 630
    '''
566 631

  
567 632
    def accept(self):
568
        isValid, exceptionMsg = self.isValidSymbolInfo()
633
        valid, exceptionMsg = self.isValidSymbolInfo()
569 634
        app_doc_data = AppDocData.instance()
570
        if isValid:
635
        if valid:
571 636
            if self.selectedSymbol is None:
572 637
                isSuccess, fileType, SymName, image_file_path = app_doc_data.insertSymbol(
573 638
                    self.makeSymbolData(self.ui.imageView.image().width(), self.ui.imageView.image().height()))
......
1090 1155
            infoTitle = self.ui.minMatchPointLabel.text()
1091 1156
            return (False, EXCEPTION_MSG_FORMAT.format(infoTitle))
1092 1157

  
1158
        index = self.ui.treeViewSymbolCategory.currentIndex()
1159
        if index == -1:
1160
            return (False, EXCEPTION_MSG_FORMAT.format('Symbol Type'))
1161

  
1162
        """
1093 1163
        if self.ui.typeComboBox.currentIndex() == 0:
1094 1164
            infoTitle = self.ui.typeLabel.text()
1095 1165
            return (False, EXCEPTION_MSG_FORMAT.format(infoTitle))
......
1097 1167
        if self.ui.baseSymbolComboBox.currentIndex() == 0:  # default value(None) index
1098 1168
            infoTitle = self.ui.baseSymbolLabel.text()
1099 1169
            return (False, EXCEPTION_MSG_FORMAT.format(infoTitle))
1170
        """
1100 1171

  
1101 1172
        # Additional Symbol is Nullable
1102 1173

  
DTI_PID/DTI_PID/SymbolEditor_UI.py
2 2

  
3 3
# Form implementation generated from reading ui file '.\UI\SymbolEditor.ui'
4 4
#
5
# Created by: PyQt5 UI code generator 5.14.1
5
# Created by: PyQt5 UI code generator 5.13.0
6 6
#
7 7
# WARNING! All changes made in this file will be lost!
8 8

  
......
13 13
class Ui_Dialog(object):
14 14
    def setupUi(self, Dialog):
15 15
        Dialog.setObjectName("Dialog")
16
        Dialog.resize(1477, 823)
16
        Dialog.resize(1565, 1029)
17 17
        Dialog.setMinimumSize(QtCore.QSize(1280, 720))
18 18
        Dialog.setMaximumSize(QtCore.QSize(16777215, 16777215))
19 19
        font = QtGui.QFont()
......
334 334
        self.scrollArea.setWidgetResizable(True)
335 335
        self.scrollArea.setObjectName("scrollArea")
336 336
        self.scrollAreaWidgetContents = QtWidgets.QWidget()
337
        self.scrollAreaWidgetContents.setGeometry(QtCore.QRect(0, 0, 628, 754))
337
        self.scrollAreaWidgetContents.setGeometry(QtCore.QRect(0, 0, 628, 960))
338 338
        self.scrollAreaWidgetContents.setMinimumSize(QtCore.QSize(378, 0))
339 339
        self.scrollAreaWidgetContents.setMaximumSize(QtCore.QSize(16777215, 16777215))
340 340
        self.scrollAreaWidgetContents.setObjectName("scrollAreaWidgetContents")
341 341
        self.gridLayout_4 = QtWidgets.QGridLayout(self.scrollAreaWidgetContents)
342 342
        self.gridLayout_4.setObjectName("gridLayout_4")
343
        self.formLayout = QtWidgets.QFormLayout()
344
        self.formLayout.setSizeConstraint(QtWidgets.QLayout.SetDefaultConstraint)
345
        self.formLayout.setFieldGrowthPolicy(QtWidgets.QFormLayout.AllNonFixedFieldsGrow)
346
        self.formLayout.setLabelAlignment(QtCore.Qt.AlignLeading|QtCore.Qt.AlignLeft|QtCore.Qt.AlignVCenter)
347
        self.formLayout.setFormAlignment(QtCore.Qt.AlignLeading|QtCore.Qt.AlignLeft|QtCore.Qt.AlignTop)
348
        self.formLayout.setContentsMargins(6, 6, 6, 6)
349
        self.formLayout.setObjectName("formLayout")
350
        self.nameLabel = QtWidgets.QLabel(self.scrollAreaWidgetContents)
343
        self.gridLayout_7 = QtWidgets.QGridLayout()
344
        self.gridLayout_7.setObjectName("gridLayout_7")
345
        self.groupBox = QtWidgets.QGroupBox(self.scrollAreaWidgetContents)
346
        self.groupBox.setObjectName("groupBox")
347
        self.gridLayout_8 = QtWidgets.QGridLayout(self.groupBox)
348
        self.gridLayout_8.setObjectName("gridLayout_8")
349
        self.treeViewSymbolCategory = QtWidgets.QTreeView(self.groupBox)
350
        self.treeViewSymbolCategory.setObjectName("treeViewSymbolCategory")
351
        self.gridLayout_8.addWidget(self.treeViewSymbolCategory, 0, 0, 1, 1)
352
        self.gridLayout_7.addWidget(self.groupBox, 5, 0, 1, 4)
353
        self.additionalSymbolLabel = QtWidgets.QLabel(self.scrollAreaWidgetContents)
351 354
        font = QtGui.QFont()
352 355
        font.setBold(True)
353 356
        font.setWeight(75)
354
        self.nameLabel.setFont(font)
355
        self.nameLabel.setObjectName("nameLabel")
356
        self.formLayout.setWidget(0, QtWidgets.QFormLayout.LabelRole, self.nameLabel)
357
        self.nameLineEdit = QtWidgets.QLineEdit(self.scrollAreaWidgetContents)
358
        self.nameLineEdit.setObjectName("nameLineEdit")
359
        self.formLayout.setWidget(0, QtWidgets.QFormLayout.FieldRole, self.nameLineEdit)
360
        self.thresholdLabel = QtWidgets.QLabel(self.scrollAreaWidgetContents)
357
        self.additionalSymbolLabel.setFont(font)
358
        self.additionalSymbolLabel.setObjectName("additionalSymbolLabel")
359
        self.gridLayout_7.addWidget(self.additionalSymbolLabel, 6, 0, 1, 1)
360
        self.hasInstrumentLabel = QtWidgets.QLabel(self.scrollAreaWidgetContents)
361 361
        font = QtGui.QFont()
362 362
        font.setBold(True)
363 363
        font.setWeight(75)
364
        self.thresholdLabel.setFont(font)
365
        self.thresholdLabel.setObjectName("thresholdLabel")
366
        self.formLayout.setWidget(1, QtWidgets.QFormLayout.LabelRole, self.thresholdLabel)
367
        self.minMatchPointLabel = QtWidgets.QLabel(self.scrollAreaWidgetContents)
364
        self.hasInstrumentLabel.setFont(font)
365
        self.hasInstrumentLabel.setObjectName("hasInstrumentLabel")
366
        self.gridLayout_7.addWidget(self.hasInstrumentLabel, 11, 0, 1, 1)
367
        self.immediateInsertLabel = QtWidgets.QLabel(self.scrollAreaWidgetContents)
368 368
        font = QtGui.QFont()
369 369
        font.setBold(True)
370 370
        font.setWeight(75)
371
        self.minMatchPointLabel.setFont(font)
372
        self.minMatchPointLabel.setObjectName("minMatchPointLabel")
373
        self.formLayout.setWidget(2, QtWidgets.QFormLayout.LabelRole, self.minMatchPointLabel)
374
        self.minMatchPointLineEdit = QtWidgets.QLineEdit(self.scrollAreaWidgetContents)
375
        self.minMatchPointLineEdit.setEnabled(False)
376
        self.minMatchPointLineEdit.setObjectName("minMatchPointLineEdit")
377
        self.formLayout.setWidget(2, QtWidgets.QFormLayout.FieldRole, self.minMatchPointLineEdit)
378
        self.rotationCountLabel = QtWidgets.QLabel(self.scrollAreaWidgetContents)
371
        self.immediateInsertLabel.setFont(font)
372
        self.immediateInsertLabel.setObjectName("immediateInsertLabel")
373
        self.gridLayout_7.addWidget(self.immediateInsertLabel, 13, 0, 1, 1)
374
        self.tableWidgetConnList = QtWidgets.QTableWidget(self.scrollAreaWidgetContents)
375
        self.tableWidgetConnList.setMaximumSize(QtCore.QSize(16777215, 150))
376
        self.tableWidgetConnList.setObjectName("tableWidgetConnList")
377
        self.tableWidgetConnList.setColumnCount(0)
378
        self.tableWidgetConnList.setRowCount(0)
379
        self.tableWidgetConnList.verticalHeader().setVisible(False)
380
        self.gridLayout_7.addWidget(self.tableWidgetConnList, 10, 1, 1, 3)
381
        self.immediateInsertCheckBox = QtWidgets.QCheckBox(self.scrollAreaWidgetContents)
382
        self.immediateInsertCheckBox.setText("")
383
        self.immediateInsertCheckBox.setObjectName("immediateInsertCheckBox")
384
        self.gridLayout_7.addWidget(self.immediateInsertCheckBox, 13, 1, 1, 1)
385
        self.spinBoxhasInstrumentLabel = QtWidgets.QSpinBox(self.scrollAreaWidgetContents)
386
        self.spinBoxhasInstrumentLabel.setMaximum(10)
387
        self.spinBoxhasInstrumentLabel.setObjectName("spinBoxhasInstrumentLabel")
388
        self.gridLayout_7.addWidget(self.spinBoxhasInstrumentLabel, 11, 1, 1, 1)
389
        self.label_4 = QtWidgets.QLabel(self.scrollAreaWidgetContents)
379 390
        font = QtGui.QFont()
380 391
        font.setBold(True)
381 392
        font.setWeight(75)
382
        self.rotationCountLabel.setFont(font)
383
        self.rotationCountLabel.setObjectName("rotationCountLabel")
384
        self.formLayout.setWidget(3, QtWidgets.QFormLayout.LabelRole, self.rotationCountLabel)
385
        self.rotationCountSpinBox = QtWidgets.QSpinBox(self.scrollAreaWidgetContents)
386
        self.rotationCountSpinBox.setMinimum(0)
387
        self.rotationCountSpinBox.setMaximum(270)
388
        self.rotationCountSpinBox.setSingleStep(90)
389
        self.rotationCountSpinBox.setProperty("value", 0)
390
        self.rotationCountSpinBox.setObjectName("rotationCountSpinBox")
391
        self.formLayout.setWidget(3, QtWidgets.QFormLayout.FieldRole, self.rotationCountSpinBox)
393
        self.label_4.setFont(font)
394
        self.label_4.setObjectName("label_4")
395
        self.gridLayout_7.addWidget(self.label_4, 16, 0, 1, 1)
396
        self.originalPointLineEdit = QtWidgets.QLineEdit(self.scrollAreaWidgetContents)
397
        self.originalPointLineEdit.setReadOnly(True)
398
        self.originalPointLineEdit.setObjectName("originalPointLineEdit")
399
        self.gridLayout_7.addWidget(self.originalPointLineEdit, 8, 1, 1, 1)
400
        self.spinBoxThreshold = QtWidgets.QSpinBox(self.scrollAreaWidgetContents)
401
        self.spinBoxThreshold.setMinimum(1)
402
        self.spinBoxThreshold.setMaximum(100)
403
        self.spinBoxThreshold.setProperty("value", 75)
404
        self.spinBoxThreshold.setObjectName("spinBoxThreshold")
405
        self.gridLayout_7.addWidget(self.spinBoxThreshold, 1, 1, 1, 1)
392 406
        self.isContainChildLabel = QtWidgets.QLabel(self.scrollAreaWidgetContents)
393 407
        font = QtGui.QFont()
394 408
        font.setBold(True)
395 409
        font.setWeight(75)
396 410
        self.isContainChildLabel.setFont(font)
397 411
        self.isContainChildLabel.setObjectName("isContainChildLabel")
398
        self.formLayout.setWidget(4, QtWidgets.QFormLayout.LabelRole, self.isContainChildLabel)
399
        self.isContainChildCheckBox = QtWidgets.QCheckBox(self.scrollAreaWidgetContents)
400
        self.isContainChildCheckBox.setText("")
401
        self.isContainChildCheckBox.setCheckable(True)
402
        self.isContainChildCheckBox.setObjectName("isContainChildCheckBox")
403
        self.formLayout.setWidget(4, QtWidgets.QFormLayout.FieldRole, self.isContainChildCheckBox)
404
        self.typeLabel = QtWidgets.QLabel(self.scrollAreaWidgetContents)
405
        font = QtGui.QFont()
406
        font.setBold(True)
407
        font.setWeight(75)
408
        self.typeLabel.setFont(font)
409
        self.typeLabel.setObjectName("typeLabel")
410
        self.formLayout.setWidget(5, QtWidgets.QFormLayout.LabelRole, self.typeLabel)
411
        self.typeComboBox = QtWidgets.QComboBox(self.scrollAreaWidgetContents)
412
        self.typeComboBox.setObjectName("typeComboBox")
413
        self.formLayout.setWidget(5, QtWidgets.QFormLayout.FieldRole, self.typeComboBox)
414
        self.baseSymbolLabel = QtWidgets.QLabel(self.scrollAreaWidgetContents)
415
        font = QtGui.QFont()
416
        font.setBold(True)
417
        font.setWeight(75)
418
        self.baseSymbolLabel.setFont(font)
419
        self.baseSymbolLabel.setObjectName("baseSymbolLabel")
420
        self.formLayout.setWidget(6, QtWidgets.QFormLayout.LabelRole, self.baseSymbolLabel)
421
        self.baseSymbolComboBox = QtWidgets.QComboBox(self.scrollAreaWidgetContents)
422
        self.baseSymbolComboBox.setObjectName("baseSymbolComboBox")
423
        self.formLayout.setWidget(6, QtWidgets.QFormLayout.FieldRole, self.baseSymbolComboBox)
424
        self.additionalSymbolLabel = QtWidgets.QLabel(self.scrollAreaWidgetContents)
412
        self.gridLayout_7.addWidget(self.isContainChildLabel, 4, 0, 1, 1)
413
        self.pushButtonChange = QtWidgets.QPushButton(self.scrollAreaWidgetContents)
414
        self.pushButtonChange.setObjectName("pushButtonChange")
415
        self.gridLayout_7.addWidget(self.pushButtonChange, 16, 1, 1, 1)
416
        self.isExceptDetectLabel = QtWidgets.QLabel(self.scrollAreaWidgetContents)
425 417
        font = QtGui.QFont()
426 418
        font.setBold(True)
427 419
        font.setWeight(75)
428
        self.additionalSymbolLabel.setFont(font)
429
        self.additionalSymbolLabel.setObjectName("additionalSymbolLabel")
430
        self.formLayout.setWidget(7, QtWidgets.QFormLayout.LabelRole, self.additionalSymbolLabel)
431
        self.horizontalLayout_2 = QtWidgets.QHBoxLayout()
432
        self.horizontalLayout_2.setObjectName("horizontalLayout_2")
433
        self.spinBoxParent = QtWidgets.QSpinBox(self.scrollAreaWidgetContents)
434
        self.spinBoxParent.setMaximumSize(QtCore.QSize(50, 16777215))
435
        self.spinBoxParent.setMaximum(10)
436
        self.spinBoxParent.setObjectName("spinBoxParent")
437
        self.horizontalLayout_2.addWidget(self.spinBoxParent)
438
        self.defaultSymbolDirectionComboBox = QtWidgets.QComboBox(self.scrollAreaWidgetContents)
439
        self.defaultSymbolDirectionComboBox.setMaximumSize(QtCore.QSize(50, 16777215))
440
        self.defaultSymbolDirectionComboBox.setObjectName("defaultSymbolDirectionComboBox")
441
        self.horizontalLayout_2.addWidget(self.defaultSymbolDirectionComboBox)
442
        self.additionalSymbolComboBox = QtWidgets.QComboBox(self.scrollAreaWidgetContents)
443
        self.additionalSymbolComboBox.setObjectName("additionalSymbolComboBox")
444
        self.horizontalLayout_2.addWidget(self.additionalSymbolComboBox)
445
        self.addAdditionalSymbolButton = QtWidgets.QPushButton(self.scrollAreaWidgetContents)
446
        self.addAdditionalSymbolButton.setMaximumSize(QtCore.QSize(40, 16777215))
447
        self.addAdditionalSymbolButton.setObjectName("addAdditionalSymbolButton")
448
        self.horizontalLayout_2.addWidget(self.addAdditionalSymbolButton)
449
        self.formLayout.setLayout(7, QtWidgets.QFormLayout.FieldRole, self.horizontalLayout_2)
450
        self.additionalSymbolListWidget = QtWidgets.QListWidget(self.scrollAreaWidgetContents)
451
        self.additionalSymbolListWidget.setObjectName("additionalSymbolListWidget")
452
        self.formLayout.setWidget(9, QtWidgets.QFormLayout.FieldRole, self.additionalSymbolListWidget)
420
        self.isExceptDetectLabel.setFont(font)
421
        self.isExceptDetectLabel.setObjectName("isExceptDetectLabel")
422
        self.gridLayout_7.addWidget(self.isExceptDetectLabel, 12, 0, 1, 1)
453 423
        self.originalPointLabel = QtWidgets.QLabel(self.scrollAreaWidgetContents)
454 424
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Preferred)
455 425
        sizePolicy.setHorizontalStretch(0)
......
462 432
        self.originalPointLabel.setFont(font)
463 433
        self.originalPointLabel.setAlignment(QtCore.Qt.AlignLeading|QtCore.Qt.AlignLeft|QtCore.Qt.AlignVCenter)
464 434
        self.originalPointLabel.setObjectName("originalPointLabel")
465
        self.formLayout.setWidget(10, QtWidgets.QFormLayout.LabelRole, self.originalPointLabel)
466
        self.horizontalLayout_4 = QtWidgets.QHBoxLayout()
467
        self.horizontalLayout_4.setObjectName("horizontalLayout_4")
468
        self.originalPointLineEdit = QtWidgets.QLineEdit(self.scrollAreaWidgetContents)
469
        self.originalPointLineEdit.setReadOnly(True)
470
        self.originalPointLineEdit.setObjectName("originalPointLineEdit")
471
        self.horizontalLayout_4.addWidget(self.originalPointLineEdit)
472
        self.addOriginalPointButton = QtWidgets.QPushButton(self.scrollAreaWidgetContents)
473
        self.addOriginalPointButton.setMaximumSize(QtCore.QSize(40, 16777215))
474
        self.addOriginalPointButton.setObjectName("addOriginalPointButton")
475
        self.horizontalLayout_4.addWidget(self.addOriginalPointButton)
476
        self.formLayout.setLayout(10, QtWidgets.QFormLayout.FieldRole, self.horizontalLayout_4)
477
        self.connectionPointLabel = QtWidgets.QLabel(self.scrollAreaWidgetContents)
435
        self.gridLayout_7.addWidget(self.originalPointLabel, 8, 0, 1, 1)
436
        self.label_3 = QtWidgets.QLabel(self.scrollAreaWidgetContents)
478 437
        font = QtGui.QFont()
479 438
        font.setBold(True)
480 439
        font.setWeight(75)
481
        self.connectionPointLabel.setFont(font)
482
        self.connectionPointLabel.setAlignment(QtCore.Qt.AlignLeading|QtCore.Qt.AlignLeft|QtCore.Qt.AlignVCenter)
483
        self.connectionPointLabel.setObjectName("connectionPointLabel")
484
        self.formLayout.setWidget(13, QtWidgets.QFormLayout.LabelRole, self.connectionPointLabel)
485
        self.horizontalLayout_6 = QtWidgets.QHBoxLayout()
486
        self.horizontalLayout_6.setObjectName("horizontalLayout_6")
440
        self.label_3.setFont(font)
441
        self.label_3.setObjectName("label_3")
442
        self.gridLayout_7.addWidget(self.label_3, 15, 0, 1, 1)
487 443
        self.connectionPointLineEdit = QtWidgets.QLineEdit(self.scrollAreaWidgetContents)
488 444
        self.connectionPointLineEdit.setReadOnly(True)
489 445
        self.connectionPointLineEdit.setObjectName("connectionPointLineEdit")
490
        self.horizontalLayout_6.addWidget(self.connectionPointLineEdit)
491
        self.addConnectionPointButton = QtWidgets.QPushButton(self.scrollAreaWidgetContents)
492
        self.addConnectionPointButton.setMinimumSize(QtCore.QSize(40, 0))
493
        self.addConnectionPointButton.setMaximumSize(QtCore.QSize(40, 16777215))
494
        self.addConnectionPointButton.setObjectName("addConnectionPointButton")
495
        self.horizontalLayout_6.addWidget(self.addConnectionPointButton)
496
        self.pushButtonDelConnPt = QtWidgets.QPushButton(self.scrollAreaWidgetContents)
497
        self.pushButtonDelConnPt.setMinimumSize(QtCore.QSize(40, 0))
498
        self.pushButtonDelConnPt.setMaximumSize(QtCore.QSize(40, 16777215))
499
        self.pushButtonDelConnPt.setObjectName("pushButtonDelConnPt")
500
        self.horizontalLayout_6.addWidget(self.pushButtonDelConnPt)
501
        self.formLayout.setLayout(13, QtWidgets.QFormLayout.FieldRole, self.horizontalLayout_6)
502
        self.tableWidgetConnList = QtWidgets.QTableWidget(self.scrollAreaWidgetContents)
503
        self.tableWidgetConnList.setObjectName("tableWidgetConnList")
504
        self.tableWidgetConnList.setColumnCount(0)
505
        self.tableWidgetConnList.setRowCount(0)
506
        self.tableWidgetConnList.verticalHeader().setVisible(False)
507
        self.formLayout.setWidget(14, QtWidgets.QFormLayout.FieldRole, self.tableWidgetConnList)
508
        self.hasInstrumentLabel = QtWidgets.QLabel(self.scrollAreaWidgetContents)
446
        self.gridLayout_7.addWidget(self.connectionPointLineEdit, 9, 1, 1, 1)
447
        self.rotationCountSpinBox = QtWidgets.QSpinBox(self.scrollAreaWidgetContents)
448
        self.rotationCountSpinBox.setMinimum(0)
449
        self.rotationCountSpinBox.setMaximum(270)
450
        self.rotationCountSpinBox.setSingleStep(90)
451
        self.rotationCountSpinBox.setProperty("value", 0)
452
        self.rotationCountSpinBox.setObjectName("rotationCountSpinBox")
453
        self.gridLayout_7.addWidget(self.rotationCountSpinBox, 3, 1, 1, 1)
454
        self.minMatchPointLineEdit = QtWidgets.QLineEdit(self.scrollAreaWidgetContents)
455
        self.minMatchPointLineEdit.setEnabled(False)
456
        self.minMatchPointLineEdit.setObjectName("minMatchPointLineEdit")
457
        self.gridLayout_7.addWidget(self.minMatchPointLineEdit, 2, 1, 1, 1)
458
        self.additionalSymbolListWidget = QtWidgets.QListWidget(self.scrollAreaWidgetContents)
459
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Expanding)
460
        sizePolicy.setHorizontalStretch(0)
461
        sizePolicy.setVerticalStretch(0)
462
        sizePolicy.setHeightForWidth(self.additionalSymbolListWidget.sizePolicy().hasHeightForWidth())
463
        self.additionalSymbolListWidget.setSizePolicy(sizePolicy)
464
        self.additionalSymbolListWidget.setMaximumSize(QtCore.QSize(16777215, 150))
465
        self.additionalSymbolListWidget.setObjectName("additionalSymbolListWidget")
466
        self.gridLayout_7.addWidget(self.additionalSymbolListWidget, 7, 1, 1, 3)
467
        self.nameLabel = QtWidgets.QLabel(self.scrollAreaWidgetContents)
509 468
        font = QtGui.QFont()
510 469
        font.setBold(True)
511 470
        font.setWeight(75)
512
        self.hasInstrumentLabel.setFont(font)
513
        self.hasInstrumentLabel.setObjectName("hasInstrumentLabel")
514
        self.formLayout.setWidget(15, QtWidgets.QFormLayout.LabelRole, self.hasInstrumentLabel)
515
        self.isExceptDetectLabel = QtWidgets.QLabel(self.scrollAreaWidgetContents)
471
        self.nameLabel.setFont(font)
472
        self.nameLabel.setObjectName("nameLabel")
473
        self.gridLayout_7.addWidget(self.nameLabel, 0, 0, 1, 1)
474
        self.minMatchPointLabel = QtWidgets.QLabel(self.scrollAreaWidgetContents)
516 475
        font = QtGui.QFont()
517 476
        font.setBold(True)
518 477
        font.setWeight(75)
519
        self.isExceptDetectLabel.setFont(font)
520
        self.isExceptDetectLabel.setObjectName("isExceptDetectLabel")
521
        self.formLayout.setWidget(16, QtWidgets.QFormLayout.LabelRole, self.isExceptDetectLabel)
522
        self.isExceptDetectCheckBox = QtWidgets.QCheckBox(self.scrollAreaWidgetContents)
523
        self.isExceptDetectCheckBox.setText("")
524
        self.isExceptDetectCheckBox.setObjectName("isExceptDetectCheckBox")
525
        self.formLayout.setWidget(16, QtWidgets.QFormLayout.FieldRole, self.isExceptDetectCheckBox)
526
        self.immediateInsertLabel = QtWidgets.QLabel(self.scrollAreaWidgetContents)
478
        self.minMatchPointLabel.setFont(font)
479
        self.minMatchPointLabel.setObjectName("minMatchPointLabel")
480
        self.gridLayout_7.addWidget(self.minMatchPointLabel, 2, 0, 1, 1)
481
        self.rotationCountLabel = QtWidgets.QLabel(self.scrollAreaWidgetContents)
527 482
        font = QtGui.QFont()
528 483
        font.setBold(True)
529 484
        font.setWeight(75)
530
        self.immediateInsertLabel.setFont(font)
531
        self.immediateInsertLabel.setObjectName("immediateInsertLabel")
532
        self.formLayout.setWidget(17, QtWidgets.QFormLayout.LabelRole, self.immediateInsertLabel)
533
        self.immediateInsertCheckBox = QtWidgets.QCheckBox(self.scrollAreaWidgetContents)
534
        self.immediateInsertCheckBox.setText("")
535
        self.immediateInsertCheckBox.setObjectName("immediateInsertCheckBox")
536
        self.formLayout.setWidget(17, QtWidgets.QFormLayout.FieldRole, self.immediateInsertCheckBox)
537
        self.makeFlipLabel = QtWidgets.QLabel(self.scrollAreaWidgetContents)
485
        self.rotationCountLabel.setFont(font)
486
        self.rotationCountLabel.setObjectName("rotationCountLabel")
487
        self.gridLayout_7.addWidget(self.rotationCountLabel, 3, 0, 1, 1)
488
        self.connectionPointLabel = QtWidgets.QLabel(self.scrollAreaWidgetContents)
538 489
        font = QtGui.QFont()
539 490
        font.setBold(True)
540 491
        font.setWeight(75)
541
        self.makeFlipLabel.setFont(font)
542
        self.makeFlipLabel.setObjectName("makeFlipLabel")
543
        self.formLayout.setWidget(18, QtWidgets.QFormLayout.LabelRole, self.makeFlipLabel)
492
        self.connectionPointLabel.setFont(font)
493
        self.connectionPointLabel.setAlignment(QtCore.Qt.AlignLeading|QtCore.Qt.AlignLeft|QtCore.Qt.AlignVCenter)
494
        self.connectionPointLabel.setObjectName("connectionPointLabel")
495
        self.gridLayout_7.addWidget(self.connectionPointLabel, 9, 0, 1, 1)
496
        self.thresholdLabel = QtWidgets.QLabel(self.scrollAreaWidgetContents)
497
        font = QtGui.QFont()
498
        font.setBold(True)
499
        font.setWeight(75)
500
        self.thresholdLabel.setFont(font)
501
        self.thresholdLabel.setObjectName("thresholdLabel")
502
        self.gridLayout_7.addWidget(self.thresholdLabel, 1, 0, 1, 1)
503
        self.addConnectionPointButton = QtWidgets.QPushButton(self.scrollAreaWidgetContents)
504
        self.addConnectionPointButton.setMinimumSize(QtCore.QSize(40, 0))
505
        self.addConnectionPointButton.setMaximumSize(QtCore.QSize(40, 16777215))
506
        self.addConnectionPointButton.setObjectName("addConnectionPointButton")
507
        self.gridLayout_7.addWidget(self.addConnectionPointButton, 9, 2, 1, 1)
544 508
        self.makeFlipCheckBox = QtWidgets.QCheckBox(self.scrollAreaWidgetContents)
545 509
        self.makeFlipCheckBox.setText("")
546 510
        self.makeFlipCheckBox.setObjectName("makeFlipCheckBox")
547
        self.formLayout.setWidget(18, QtWidgets.QFormLayout.FieldRole, self.makeFlipCheckBox)
548
        self.label_3 = QtWidgets.QLabel(self.scrollAreaWidgetContents)
511
        self.gridLayout_7.addWidget(self.makeFlipCheckBox, 14, 1, 1, 1)
512
        self.nameLineEdit = QtWidgets.QLineEdit(self.scrollAreaWidgetContents)
513
        self.nameLineEdit.setObjectName("nameLineEdit")
514
        self.gridLayout_7.addWidget(self.nameLineEdit, 0, 1, 1, 1)
515
        self.makeFlipLabel = QtWidgets.QLabel(self.scrollAreaWidgetContents)
549 516
        font = QtGui.QFont()
550 517
        font.setBold(True)
551 518
        font.setWeight(75)
552
        self.label_3.setFont(font)
553
        self.label_3.setObjectName("label_3")
554
        self.formLayout.setWidget(19, QtWidgets.QFormLayout.LabelRole, self.label_3)
519
        self.makeFlipLabel.setFont(font)
520
        self.makeFlipLabel.setObjectName("makeFlipLabel")
521
        self.gridLayout_7.addWidget(self.makeFlipLabel, 14, 0, 1, 1)
522
        self.horizontalLayout_3 = QtWidgets.QHBoxLayout()
523
        self.horizontalLayout_3.setObjectName("horizontalLayout_3")
524
        self.spinBoxParent = QtWidgets.QSpinBox(self.scrollAreaWidgetContents)
525
        self.spinBoxParent.setMaximumSize(QtCore.QSize(50, 16777215))
526
        self.spinBoxParent.setMaximum(10)
527
        self.spinBoxParent.setObjectName("spinBoxParent")
528
        self.horizontalLayout_3.addWidget(self.spinBoxParent)
529
        self.defaultSymbolDirectionComboBox = QtWidgets.QComboBox(self.scrollAreaWidgetContents)
530
        self.defaultSymbolDirectionComboBox.setMaximumSize(QtCore.QSize(50, 16777215))
531
        self.defaultSymbolDirectionComboBox.setObjectName("defaultSymbolDirectionComboBox")
532
        self.horizontalLayout_3.addWidget(self.defaultSymbolDirectionComboBox)
533
        self.additionalSymbolComboBox = QtWidgets.QComboBox(self.scrollAreaWidgetContents)
534
        self.additionalSymbolComboBox.setObjectName("additionalSymbolComboBox")
535
        self.horizontalLayout_3.addWidget(self.additionalSymbolComboBox)
536
        self.addAdditionalSymbolButton = QtWidgets.QPushButton(self.scrollAreaWidgetContents)
537
        self.addAdditionalSymbolButton.setMaximumSize(QtCore.QSize(40, 16777215))
538
        self.addAdditionalSymbolButton.setObjectName("addAdditionalSymbolButton")
539
        self.horizontalLayout_3.addWidget(self.addAdditionalSymbolButton)
540
        self.gridLayout_7.addLayout(self.horizontalLayout_3, 6, 1, 1, 1)
555 541
        self.checkBoxChange = QtWidgets.QCheckBox(self.scrollAreaWidgetContents)
556 542
        self.checkBoxChange.setText("")
557 543
        self.checkBoxChange.setObjectName("checkBoxChange")
558
        self.formLayout.setWidget(19, QtWidgets.QFormLayout.FieldRole, self.checkBoxChange)
559
        self.label_4 = QtWidgets.QLabel(self.scrollAreaWidgetContents)
560
        font = QtGui.QFont()
561
        font.setBold(True)
562
        font.setWeight(75)
563
        self.label_4.setFont(font)
564
        self.label_4.setObjectName("label_4")
565
        self.formLayout.setWidget(20, QtWidgets.QFormLayout.LabelRole, self.label_4)
566
        self.pushButtonChange = QtWidgets.QPushButton(self.scrollAreaWidgetContents)
567
        self.pushButtonChange.setObjectName("pushButtonChange")
568
        self.formLayout.setWidget(20, QtWidgets.QFormLayout.FieldRole, self.pushButtonChange)
569
        self.spinBoxhasInstrumentLabel = QtWidgets.QSpinBox(self.scrollAreaWidgetContents)
570
        self.spinBoxhasInstrumentLabel.setMaximum(10)
571
        self.spinBoxhasInstrumentLabel.setObjectName("spinBoxhasInstrumentLabel")
572
        self.formLayout.setWidget(15, QtWidgets.QFormLayout.FieldRole, self.spinBoxhasInstrumentLabel)
573
        self.spinBoxThreshold = QtWidgets.QSpinBox(self.scrollAreaWidgetContents)
574
        self.spinBoxThreshold.setMinimum(1)
575
        self.spinBoxThreshold.setMaximum(100)
576
        self.spinBoxThreshold.setProperty("value", 75)
577
        self.spinBoxThreshold.setObjectName("spinBoxThreshold")
578
        self.formLayout.setWidget(1, QtWidgets.QFormLayout.FieldRole, self.spinBoxThreshold)
579
        self.gridLayout_4.addLayout(self.formLayout, 0, 0, 1, 1)
544
        self.gridLayout_7.addWidget(self.checkBoxChange, 15, 1, 1, 1)
545
        self.isContainChildCheckBox = QtWidgets.QCheckBox(self.scrollAreaWidgetContents)
546
        self.isContainChildCheckBox.setText("")
547
        self.isContainChildCheckBox.setCheckable(True)
548
        self.isContainChildCheckBox.setObjectName("isContainChildCheckBox")
549
        self.gridLayout_7.addWidget(self.isContainChildCheckBox, 4, 1, 1, 1)
550
        self.pushButtonDelConnPt = QtWidgets.QPushButton(self.scrollAreaWidgetContents)
551
        self.pushButtonDelConnPt.setMinimumSize(QtCore.QSize(40, 0))
552
        self.pushButtonDelConnPt.setMaximumSize(QtCore.QSize(40, 16777215))
553
        self.pushButtonDelConnPt.setObjectName("pushButtonDelConnPt")
554
        self.gridLayout_7.addWidget(self.pushButtonDelConnPt, 9, 3, 1, 1)
555
        self.isExceptDetectCheckBox = QtWidgets.QCheckBox(self.scrollAreaWidgetContents)
556
        self.isExceptDetectCheckBox.setText("")
557
        self.isExceptDetectCheckBox.setObjectName("isExceptDetectCheckBox")
558
        self.gridLayout_7.addWidget(self.isExceptDetectCheckBox, 12, 1, 1, 1)
559
        self.addOriginalPointButton = QtWidgets.QPushButton(self.scrollAreaWidgetContents)
560
        self.addOriginalPointButton.setMaximumSize(QtCore.QSize(40, 16777215))
561
        self.addOriginalPointButton.setObjectName("addOriginalPointButton")
562
        self.gridLayout_7.addWidget(self.addOriginalPointButton, 8, 2, 1, 1)
563
        self.gridLayout_4.addLayout(self.gridLayout_7, 0, 0, 1, 1)
580 564
        self.scrollArea.setWidget(self.scrollAreaWidgetContents)
581 565
        self.verticalLayout.addWidget(self.scrollArea)
582 566
        self.buttonBox = QtWidgets.QDialogButtonBox(self.widget)
......
609 593
        Dialog.setTabOrder(self.guidelineCheckbox, self.comboBoxNormalColor)
610 594
        Dialog.setTabOrder(self.comboBoxNormalColor, self.comboBoxHoverColor)
611 595
        Dialog.setTabOrder(self.comboBoxHoverColor, self.scrollArea)
612
        Dialog.setTabOrder(self.scrollArea, self.nameLineEdit)
613
        Dialog.setTabOrder(self.nameLineEdit, self.spinBoxThreshold)
614
        Dialog.setTabOrder(self.spinBoxThreshold, self.minMatchPointLineEdit)
615
        Dialog.setTabOrder(self.minMatchPointLineEdit, self.rotationCountSpinBox)
616
        Dialog.setTabOrder(self.rotationCountSpinBox, self.isContainChildCheckBox)
617
        Dialog.setTabOrder(self.isContainChildCheckBox, self.typeComboBox)
618
        Dialog.setTabOrder(self.typeComboBox, self.baseSymbolComboBox)
619
        Dialog.setTabOrder(self.baseSymbolComboBox, self.spinBoxParent)
620
        Dialog.setTabOrder(self.spinBoxParent, self.defaultSymbolDirectionComboBox)
621
        Dialog.setTabOrder(self.defaultSymbolDirectionComboBox, self.additionalSymbolComboBox)
622
        Dialog.setTabOrder(self.additionalSymbolComboBox, self.addAdditionalSymbolButton)
623
        Dialog.setTabOrder(self.addAdditionalSymbolButton, self.additionalSymbolListWidget)
624
        Dialog.setTabOrder(self.additionalSymbolListWidget, self.originalPointLineEdit)
625
        Dialog.setTabOrder(self.originalPointLineEdit, self.addOriginalPointButton)
626
        Dialog.setTabOrder(self.addOriginalPointButton, self.connectionPointLineEdit)
627
        Dialog.setTabOrder(self.connectionPointLineEdit, self.addConnectionPointButton)
628
        Dialog.setTabOrder(self.addConnectionPointButton, self.pushButtonDelConnPt)
629
        Dialog.setTabOrder(self.pushButtonDelConnPt, self.tableWidgetConnList)
630
        Dialog.setTabOrder(self.tableWidgetConnList, self.spinBoxhasInstrumentLabel)
631
        Dialog.setTabOrder(self.spinBoxhasInstrumentLabel, self.isExceptDetectCheckBox)
632
        Dialog.setTabOrder(self.isExceptDetectCheckBox, self.immediateInsertCheckBox)
633
        Dialog.setTabOrder(self.immediateInsertCheckBox, self.makeFlipCheckBox)
634
        Dialog.setTabOrder(self.makeFlipCheckBox, self.checkBoxChange)
635
        Dialog.setTabOrder(self.checkBoxChange, self.pushButtonChange)
636 596

  
637 597
    def retranslateUi(self, Dialog):
638 598
        _translate = QtCore.QCoreApplication.translate
......
640 600
        self.guidelineCheckbox.setText(_translate("Dialog", "Show Guideline"))
641 601
        self.label.setText(_translate("Dialog", "Normal Color :"))
642 602
        self.label_2.setText(_translate("Dialog", "Highlight Color :"))
603
        self.groupBox.setTitle(_translate("Dialog", "Base Symbol"))
604
        self.additionalSymbolLabel.setText(_translate("Dialog", "Addition Symbol"))
605
        self.hasInstrumentLabel.setText(_translate("Dialog", "Minimum Number of Text"))
606
        self.immediateInsertLabel.setText(_translate("Dialog", "Insert Symbol When Create"))
607
        self.label_4.setText(_translate("Dialog", "Symbol Info on Drawing"))
608
        self.isContainChildLabel.setText(_translate("Dialog", "Include Child Symbol"))
609
        self.pushButtonChange.setText(_translate("Dialog", "Change Item on Drawing without DB Update"))
610
        self.isExceptDetectLabel.setText(_translate("Dialog", "Exclude"))
611
        self.originalPointLabel.setText(_translate("Dialog", "Original Point"))
612
        self.label_3.setText(_translate("Dialog", "Change Base, Additional"))
643 613
        self.nameLabel.setText(_translate("Dialog", "Symbol Name"))
644
        self.thresholdLabel.setText(_translate("Dialog", "Threshold(%)"))
645 614
        self.minMatchPointLabel.setText(_translate("Dialog", "Min Feature Count"))
646 615
        self.rotationCountLabel.setText(_translate("Dialog", "Rotation Detection Degree"))
647
        self.isContainChildLabel.setText(_translate("Dialog", "Include Child Symbol"))
648
        self.typeLabel.setText(_translate("Dialog", "Symbol Type"))
649
        self.baseSymbolLabel.setText(_translate("Dialog", "Base Symbol"))
650
        self.additionalSymbolLabel.setText(_translate("Dialog", "Addition Symbol"))
651
        self.addAdditionalSymbolButton.setText(_translate("Dialog", "Add"))
652
        self.originalPointLabel.setText(_translate("Dialog", "Original Point"))
653
        self.addOriginalPointButton.setText(_translate("Dialog", "Add"))
654 616
        self.connectionPointLabel.setText(_translate("Dialog", "Connection Point"))
617
        self.thresholdLabel.setText(_translate("Dialog", "Threshold(%)"))
655 618
        self.addConnectionPointButton.setText(_translate("Dialog", "Add"))
656
        self.pushButtonDelConnPt.setText(_translate("Dialog", "Del"))
657
        self.hasInstrumentLabel.setText(_translate("Dialog", "Minimum Number of Text"))
658
        self.isExceptDetectLabel.setText(_translate("Dialog", "Exclude"))
659
        self.immediateInsertLabel.setText(_translate("Dialog", "Insert Symbol When Create"))
660 619
        self.makeFlipLabel.setText(_translate("Dialog", "Detect Flip"))
661
        self.label_3.setText(_translate("Dialog", "Change Base, Additional"))
662
        self.label_4.setText(_translate("Dialog", "Symbol Info on Drawing"))
663
        self.pushButtonChange.setText(_translate("Dialog", "Change Item on Drawing without DB Update"))
620
        self.addAdditionalSymbolButton.setText(_translate("Dialog", "Add"))
621
        self.pushButtonDelConnPt.setText(_translate("Dialog", "Del"))
622
        self.addOriginalPointButton.setText(_translate("Dialog", "Add"))
664 623
import MainWindow_rc
DTI_PID/DTI_PID/TextDetector.py
348 348

  
349 349
            if worker is not None: worker.updateProgress.emit(maxProgressValue, None)
350 350

  
351
            """"
351
            """
352 352
            for text_box in tInfoList:
353 353
                x = text_box.getX()
354 354
                y = text_box.getY()
DTI_PID/DTI_PID/UI/Configuration.ui
6 6
   <rect>
7 7
    <x>0</x>
8 8
    <y>0</y>
9
    <width>648</width>
10
    <height>631</height>
9
    <width>768</width>
10
    <height>739</height>
11 11
   </rect>
12 12
  </property>
13 13
  <property name="font">
......
44 44
         <layout class="QGridLayout" name="gridLayout_8">
45 45
          <item row="0" column="0">
46 46
           <layout class="QGridLayout" name="gridLayout_27">
47
            <item row="1" column="1">
48
             <widget class="QSpinBox" name="spinBoxUnrecognitionIgnoreStep">
49
              <property name="maximum">
50
               <number>10</number>
51
              </property>
52
             </widget>
53
            </item>
54
            <item row="0" column="1">
55
             <widget class="QSpinBox" name="spinBoxMinimumSize"/>
56
            </item>
57
            <item row="3" column="1">
58
             <widget class="QSpinBox" name="spinBoxFlatSize"/>
47
            <item row="2" column="1">
48
             <layout class="QGridLayout" name="gridLayout_35">
49
              <item row="2" column="2">
50
               <widget class="QLineEdit" name="lineEdit"/>
51
              </item>
52
              <item row="0" column="0">
53
               <widget class="QRadioButton" name="radioButtonNoThreshold">
54
                <property name="text">
55
                 <string>No</string>
56
                </property>
57
               </widget>
58
              </item>
59
              <item row="1" column="0">
60
               <widget class="QRadioButton" name="radioButtonOTSU">
61
                <property name="text">
62
                 <string>OTSU</string>
63
                </property>
64
               </widget>
65
              </item>
66
              <item row="2" column="0">
67
               <widget class="QRadioButton" name="radioButton">
68
                <property name="text">
69
                 <string>Binary</string>
70
                </property>
71
               </widget>
72
              </item>
73
              <item row="2" column="1">
74
               <widget class="QLabel" name="label_41">
75
                <property name="text">
76
                 <string>thres = </string>
77
                </property>
78
               </widget>
79
              </item>
80
              <item row="1" column="1">
81
               <widget class="QLabel" name="label_42">
82
                <property name="text">
83
                 <string>thres = </string>
... 이 차이점은 표시할 수 있는 최대 줄수를 초과해서 이 차이점은 잘렸습니다.

내보내기 Unified diff

클립보드 이미지 추가 (최대 크기: 500 MB)