프로젝트

일반

사용자정보

개정판 6f57609c

ID6f57609cc939e1e9d01e63a73d59ed8747dc3699
상위 9a1af0f8
하위 821201a7

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

issued #1048: fixed an error when editing stream data

Change-Id: Icbd2fe7bbe6940fa1dc46b7308ee5b13d4c81581

차이점 보기:

HYTOS/HYTOS/MainWindow.py
613 613
        column_infos.setHorizontalHeaderLabels(col_names)
614 614
        # self.tableWidgetHMB.setHorizontalHeaderLabels(col_names)
615 615

  
616
        """
617
        rowIndex = 0
618
        for columnInfo in column_infos:
619
            name = columnInfo[0]
620
            unit = self.convertToUnits(columnInfo[1])
621

  
622
            self.tableWidgetHMB.setItem(rowIndex, 0, set_item_properties(name, Qt.AlignLeft | Qt.AlignVCenter,
623
                                                                         QColor(51, 153, 102)))
624
            self.tableWidgetHMB.setItem(rowIndex, 1, set_item_properties(unit, Qt.AlignHCenter | Qt.AlignVCenter,
625
                                                                         QColor(204, 255, 204)))
626

  
627
            rowIndex += 1
628
        """
629

  
630 616
        self.tableWidgetHMB.resizeColumnsToContents()
631 617
        self.tableWidgetHMB.resizeRowsToContents()
632 618

  
......
668 654
            if len(rows) == 1 and len(columns) == 1:
669 655
                for i, line in enumerate(reader):
670 656
                    for j, cell in enumerate(line):
671
                        model.setData(model.index(rows[0] + i, columns[0] + j), cell)
657
                        index = model.index(rows[0] + i, columns[0] + j)
658
                        item = model.item(index.row(), index.column())
659
                        if item.isEditable():
660
                            data = model.data(index, Qt.UserRole)
661
                            if type(data) is not type(cell) or data != cell:
662
                                item.setBackground(Qt.magenta)
663
                                model.setData(index, cell)
672 664
            else:
673 665
                arr = [[cell for cell in row] for row in reader]
674 666
                for index in selection:
675 667
                    row = index.row() - rows[0]
676 668
                    column = index.column() - columns[0]
677
                    model.setData(model.index(index.row(), index.column()), arr[row][column])
669
                    index = model.index(index.row(), index.column())
670
                    item = model.item(index.row(), index.column())
671
                    if item.isEditable():
672
                        data = model.data(index, Qt.UserRole)
673
                        if type(data) is not type(arr[row][column]) or data != arr[row][column]:
674
                            item.setBackground(Qt.magenta)
675
                            model.setData(index, arr[row][column])
678 676

  
679 677
    '''
680 678
        @brief      Drawing 속성의 Units 에서 Key값을 이용하여 Value를 찾음
......
2790 2788
                    model.setItem(4, columnCount, item)
2791 2789

  
2792 2790
                    item = set_item_properties(convert_to_fixed_point(hmb.flowrate_volume), Qt.AlignHCenter | Qt.AlignVCenter)
2793
                    item.setData(Qt.UserRole, hmb.flowrate_volume)
2791
                    item.setData(hmb.flowrate_volume, Qt.UserRole)
2794 2792
                    """
2795 2793
                    if hmb.phase_type == 'Vapor':
2796 2794
                        item.setFlags(Qt.ItemIsEnabled | Qt.ItemIsSelectable)
......
2873 2871
                    model.setItem(24, columnCount, item)
2874 2872

  
2875 2873
                    item = set_item_properties(convert_to_fixed_point(hmb.velocity), Qt.AlignHCenter | Qt.AlignVCenter)
2874
                    item.setEditable(False)
2876 2875
                    model.setItem(25, columnCount, item)
2877 2876

  
2878 2877
                    item = set_item_properties(convert_to_fixed_point(hmb.reynolds), Qt.AlignHCenter | Qt.AlignVCenter)
2878
                    item.setEditable(False)
2879 2879
                    model.setItem(26, columnCount, item)
2880 2880

  
2881 2881
                    item = set_item_properties(convert_to_fixed_point(hmb.friction_factor), Qt.AlignHCenter | Qt.AlignVCenter)
2882
                    item.setEditable(False)
2882 2883
                    model.setItem(27, columnCount, item)
2883 2884

  
2884 2885
                    item = set_item_properties(convert_to_fixed_point(hmb.pressure_drop), Qt.AlignHCenter | Qt.AlignVCenter)
2886
                    item.setEditable(False)
2885 2887
                    model.setItem(28, columnCount, item)
2886 2888

  
2887 2889
                    item = set_item_properties(convert_to_fixed_point(hmb.pressure_drop_friction), Qt.AlignHCenter | Qt.AlignVCenter)
2890
                    item.setEditable(False)
2888 2891
                    model.setItem(29, columnCount, item)
2889 2892

  
2890 2893
                    item = set_item_properties(convert_to_fixed_point(hmb.pressure_drop_static), Qt.AlignHCenter | Qt.AlignVCenter)
2894
                    item.setEditable(False)
2891 2895
                    model.setItem(30, columnCount, item)
2892 2896

  
2893 2897
                    item = set_item_properties(convert_to_fixed_point(hmb.pressure_pipe_end_point), Qt.AlignHCenter | Qt.AlignVCenter)
2898
                    item.setEditable(False)
2894 2899
                    model.setItem(31, columnCount, item)
2895 2900

  
2896 2901
                    item = set_item_properties(convert_to_fixed_point(hmb.power), Qt.AlignHCenter | Qt.AlignVCenter)
2902
                    item.setEditable(False)
2897 2903
                    model.setItem(32, columnCount, item)
2898 2904

  
2899 2905
                    if hmb.isDeleted:
......
2943 2949
        @date       2018.08.09
2944 2950
        
2945 2951
    '''
2946

  
2947 2952
    def keyPressEvent(self, event):
2948 2953
        try:
2949 2954
            if event.key() == Qt.Key_Escape:
......
2957 2962

  
2958 2963
            QMainWindow.keyPressEvent(self, event)
2959 2964
        except Exception as ex:
2960
            message = 'error occurred({}) in {}:{}'.format(ex, sys.exc_info()[-1].tb_frame.f_code.co_filename,
2961
                                                           sys.exc_info()[-1].tb_lineno)
2965
            message = f'error occurred({ex}) in {sys.exc_info()[-1].tb_frame.f_code.co_filename}:' \
2966
                      f'{sys.exc_info()[-1].tb_lineno}'
2962 2967
            self.addMessage.emit(MessageType.Error, message)
2963 2968

  
2964 2969
    def on_item_removed(self, item):

내보내기 Unified diff

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