프로젝트

일반

사용자정보

개정판 33d113ad

ID33d113ade24a589743ddc7f27739c81b43408357
상위 d2a31514
하위 413e693e, daeca09e

함의성이(가) 6년 이상 전에 추가함

issue #665: order can be sorted by user

차이점 보기:

DTI_PID/DTI_PID/ItemDataExportDialog.py
341 341
                for reverse in range(len(self.columnOrder[index]) - 1, 0, -1):
342 342
                    targetCol = self.columnOrder[index][reverse]
343 343
                    currentCol = []
344
                    for i in range(len(self.columnOrder[index])):
345
                        currentCol.append(self.viewTables[index].horizontalHeaderItem(i).text())
344
                    for i in range(len(self.columnListAll[index])):
345
                        currentCol.append(self.viewTables[index].horizontalHeader().visualIndex(i))
346
                        #currentCol.append(self.viewTables[index].horizontalHeaderItem(i).text())
346 347

  
347 348
                    for columnNum in range(len(self.columnListAll[index])):
348 349
                        if targetCol == self.columnListAll[index][columnNum]:
349
                            self.viewTables[index].horizontalHeader().moveSection(columnNum, 1)
350
                            self.viewTables[index].horizontalHeader().moveSection(currentCol[columnNum], 1)
350 351
                            break
351 352

  
352 353
        # hidecolumn 하기
......
703 704

  
704 705
        item_data_format_dialog = QItemDataFormatDialog(self, self.columnListAll, self.columnOrder)
705 706
        item_data_format_dialog.exec_()
707
        self.sortListOrder()
706 708

  
707 709
    '''
708 710
        @brief      doc name change event
DTI_PID/DTI_PID/ItemDataFormatDialog.py
52 52
        # tableWidget setting
53 53
        for index in range(len(self.tableWidgets)):
54 54
            self.tableWidgets[index].horizontalHeader().setSectionsMovable(True)
55
            self.tableWidgets[index].setSelectionMode(QAbstractItemView.SingleSelection)
56
            self.tableWidgets[index].setEditTriggers(QAbstractItemView.NoEditTriggers)
57
            self.tableWidgets[index].horizontalHeader().setSectionsClickable(True)
58
            self.tableWidgets[index].horizontalHeader().setHighlightSections(True)
55 59
            self.tableWidgets[index].setColumnCount(len(self.columnOrder[index]))
56 60
            self.tableWidgets[index].setHorizontalHeaderLabels(self.columnOrder[index])
61
            self.tableWidgets[index].horizontalHeader().sectionClicked.connect(self.sectionClicked)
57 62
            for listIndex in range(len(self.columnOrder[index])):
58 63
                self.tableWidgets[index].horizontalHeaderItem(listIndex).setSizeHint(QSize(25, 25))
59
                self.tableWidgets[index].setColumnWidth(listIndex, len(self.columnListAll[index][listIndex]) * 8 + 10)
64
                self.tableWidgets[index].setColumnWidth(listIndex, len(self.columnOrder[index][listIndex]) * 8 + 10)
60 65
            self.tableWidgets[index].hideColumn(0)
61 66

  
62 67
        self.ui.pushButtonApply.clicked.connect(self.pushButtonApplyClicked)
68
        self.ui.pushButtonClose.clicked.connect(self.pushButtonCloseClicked)
63 69

  
64 70
    def pushButtonApplyClicked(self):
65 71
        docData = AppDocData.instance()
66 72
        configs = []
67 73
        for index in range(len(self.tableWidgets)):
68 74
            headerCount = self.tableWidgets[index].columnCount()
75
            currentCol = []
76
            for i in range(len(self.columnListAll[index])):
77
                currentCol.append(self.tableWidgets[index].horizontalHeader().logicalIndex(i))
78

  
69 79
            value = ''
70
            for header in range(headerCount):
71
                value += self.tableWidgets[index].horizontalHeaderItem(header).text() + self.delimiter
80
            for header in currentCol:
81
                value += self.columnOrder[index][header] + self.delimiter
72 82
            value = value[:-len(self.delimiter)]
73 83
            configs.append(Config(dbListOrderName[index], str(index), value))
74 84
            
75
            docData.saveConfigs(configs)
85
            docData.saveConfigs(configs)
86

  
87
    def pushButtonCloseClicked(self):
88
        QDialog.reject(self)
89

  
90
    def sectionClicked(self, logicalIndex):
91
        print(logicalIndex)
DTI_PID/DTI_PID/ItemDataFormat_UI.py
28 28
        self.pushButtonApply.setMaximumSize(QtCore.QSize(68, 16777215))
29 29
        self.pushButtonApply.setObjectName("pushButtonApply")
30 30
        self.horizontalLayout.addWidget(self.pushButtonApply)
31
        self.pushButtonCancel = QtWidgets.QPushButton(ItemDataFormatDialog)
32
        self.pushButtonCancel.setMaximumSize(QtCore.QSize(68, 16777215))
33
        self.pushButtonCancel.setObjectName("pushButtonCancel")
34
        self.horizontalLayout.addWidget(self.pushButtonCancel)
31
        self.pushButtonClose = QtWidgets.QPushButton(ItemDataFormatDialog)
32
        self.pushButtonClose.setMaximumSize(QtCore.QSize(68, 16777215))
33
        self.pushButtonClose.setObjectName("pushButtonClose")
34
        self.horizontalLayout.addWidget(self.pushButtonClose)
35 35
        self.gridLayout.addLayout(self.horizontalLayout, 2, 0, 1, 1)
36 36
        self.tabWidget = QtWidgets.QTabWidget(ItemDataFormatDialog)
37 37
        self.tabWidget.setTabPosition(QtWidgets.QTabWidget.North)
......
65 65
        self.horizontalLayout_2.addWidget(self.pushButton)
66 66
        self.verticalLayout.addLayout(self.horizontalLayout_2)
67 67
        self.tableWidgetLine = QtWidgets.QTableWidget(self.verticalLayoutWidget)
68
        self.tableWidgetLine.setRowCount(0)
68
        self.tableWidgetLine.setRowCount(1)
69 69
        self.tableWidgetLine.setObjectName("tableWidgetLine")
70 70
        self.tableWidgetLine.setColumnCount(0)
71 71
        self.tableWidgetLine.verticalHeader().setVisible(False)
......
226 226
        _translate = QtCore.QCoreApplication.translate
227 227
        ItemDataFormatDialog.setWindowTitle(_translate("ItemDataFormatDialog", "리스트 양식 설정"))
228 228
        self.pushButtonApply.setText(_translate("ItemDataFormatDialog", "Apply"))
229
        self.pushButtonCancel.setText(_translate("ItemDataFormatDialog", "Cancel"))
229
        self.pushButtonClose.setText(_translate("ItemDataFormatDialog", "Close"))
230 230
        self.pushButton_2.setText(_translate("ItemDataFormatDialog", "+"))
231 231
        self.pushButton.setText(_translate("ItemDataFormatDialog", "-"))
232 232
        self.tabWidget.setTabText(self.tabWidget.indexOf(self.tabLineList), _translate("ItemDataFormatDialog", "라인 리스트"))
DTI_PID/DTI_PID/UI/ItemDataFormat.ui
53 53
      </widget>
54 54
     </item>
55 55
     <item>
56
      <widget class="QPushButton" name="pushButtonCancel">
56
      <widget class="QPushButton" name="pushButtonClose">
57 57
       <property name="maximumSize">
58 58
        <size>
59 59
         <width>68</width>
......
61 61
        </size>
62 62
       </property>
63 63
       <property name="text">
64
        <string>Cancel</string>
64
        <string>Close</string>
65 65
       </property>
66 66
      </widget>
67 67
     </item>
......
141 141
           <item>
142 142
            <widget class="QTableWidget" name="tableWidgetLine">
143 143
             <property name="rowCount">
144
              <number>0</number>
144
              <number>1</number>
145 145
             </property>
146 146
             <attribute name="verticalHeaderVisible">
147 147
              <bool>false</bool>
148 148
             </attribute>
149
             <row/>
149 150
            </widget>
150 151
           </item>
151 152
          </layout>

내보내기 Unified diff

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