프로젝트

일반

사용자정보

개정판 ef02a78c

IDef02a78c7757f7b2a4abe1eac9a9d81d5b15a98a
상위 410794c9
하위 b4c551f5

함의성이(가) 약 5년 전에 추가함

issue #627: restore empty column and user define column name

Change-Id: I28ad7b3fcc90f71c971233b34354b5aa4c3a8eff

차이점 보기:

DTI_PID/DTI_PID/ItemDataExportDialog.py
436 436
                    header = orders[col].split(self.delimiterCombine)
437 437
                    headers.append(header)
438 438

  
439
                for header in headers:
440
                    if header[0] == self.emptyCol:
441
                        count = self.viewTables[key].columnCount()
442
                        self.viewTables[key].setColumnCount(count + 1)
443
                        item = QTableWidgetItem(header[1])
444
                        self.viewTables[key].setHorizontalHeaderItem(count, item)
445

  
439 446
                col = 0
440 447
                for header in headers:
441
                    matches = [index for index in range(self.viewTables[key].columnCount()) if
442
                               header[0] == self.viewTables[key].horizontalHeaderItem(index).text()]
448
                    if header[0] != self.emptyCol:
449
                        matches = [index for index in range(self.viewTables[key].columnCount()) if
450
                                   header[0] == self.viewTables[key].horizontalHeaderItem(index).text()]
451
                    else:
452
                        matches = [index for index in range(self.viewTables[key].columnCount()) if
453
                                   header[1] == self.viewTables[key].horizontalHeaderItem(index).text()]
443 454
                    if matches:
444
                        self.viewTables[key].horizontalHeaderItem(matches[0]).setText(header[1])  # display user column name
455
                        item = self.viewTables[key].horizontalHeaderItem(matches[0])
456
                        item.setText(header[1])  # display user column name
457
                        item.setData(Qt.UserRole, header[0])
445 458
                        _from = self.viewTables[key].horizontalHeader().visualIndex(matches[0])
446 459
                        self.viewTables[key].horizontalHeader().moveSection(_from, col)
447 460

  
......
450 463
                # hide unselected columns by user
451 464
                for col in range(self.viewTables[key].columnCount()):
452 465
                    matches = [col for header in headers if
453
                               header[0] == self.viewTables[key].horizontalHeaderItem(col).text()]
466
                               header[1] == self.viewTables[key].horizontalHeaderItem(col).text()]
454 467
                    if not matches:
455 468
                        self.viewTables[key].hideColumn(col)
456 469

  
......
479 492
        row = 0
480 493
        for data in dataList:
481 494
            for col in range(self.ui.tableWidgetLineDataList.columnCount()):
482
                col_name = self.ui.tableWidgetLineDataList.horizontalHeaderItem(col).text()
483
                matches = [value for value in data if value[0] == col_name]
495
                col_item = self.ui.tableWidgetLineDataList.horizontalHeaderItem(col)
496
                matches = [value for value in data if value[0] == col_item.data(Qt.UserRole)]
484 497
                if matches:
485 498
                    item = QTableWidgetItem(matches[0][1] if matches[0][1] is not None else '')
486 499
                    item.setFlags(Qt.ItemIsEnabled)
......
501 514
            row = 0
502 515
            for data in dataList:
503 516
                for col in range(equipTable.columnCount()):
504
                    col_name = equipTable.horizontalHeaderItem(col).text()
505
                    matches = [value for value in data if value[0] == col_name]
517
                    col_item = equipTable.horizontalHeaderItem(col)
518
                    matches = [value for value in data if value[0] == col_item.data(Qt.UserRole)]
506 519
                    if matches:
507 520
                        item = QTableWidgetItem(matches[0][1] if matches[0][1] is not None else '')
508 521
                        item.setFlags(Qt.ItemIsEnabled)
......
531 544
            row = 0
532 545
            for data in dataList:
533 546
                for col in range(self.ui.tableWidgetValveDataList.columnCount()):
534
                    col_name = self.ui.tableWidgetValveDataList.horizontalHeaderItem(col).text()
535
                    matches = [key for key in data.keys() if key == col_name]
547
                    col_item = self.ui.tableWidgetValveDataList.horizontalHeaderItem(col)
548
                    matches = [key for key in data.keys() if key == col_item.data(Qt.UserRole)]
536 549
                    if matches:
537 550
                        item = QTableWidgetItem(data[matches[0]])
538 551
                        item.setFlags(Qt.ItemIsEnabled)
......
568 581
        row = 0
569 582
        for data in dataList:
570 583
            for col in range(self.ui.tableWidgetInstrumentDataList.columnCount()):
571
                col_name = self.ui.tableWidgetInstrumentDataList.horizontalHeaderItem(col).text()
572
                matches = [key for key in data.keys() if key == col_name]
584
                col_item = self.ui.tableWidgetInstrumentDataList.horizontalHeaderItem(col)
585
                matches = [key for key in data.keys() if key == col_item.data(Qt.UserRole)]
573 586
                if matches:
574 587
                    item = QTableWidgetItem(data[matches[0]])
575 588
                    item.setFlags(Qt.ItemIsEnabled)
......
594 607
        row = 0
595 608
        for data in dataList:
596 609
            for col in range(note_table.columnCount()):
597
                col_name = note_table.horizontalHeaderItem(col).text()
598
                matches = [key for key in data.keys() if key == col_name]
610
                col_item = note_table.horizontalHeaderItem(col)
611
                matches = [key for key in data.keys() if key == col_item.data(Qt.UserRole)]
599 612
                if matches:
600 613
                    item = QTableWidgetItem(data[matches[0]])
601 614
                    item.setFlags(Qt.ItemIsEnabled)

내보내기 Unified diff

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