프로젝트

일반

사용자정보

개정판 d3ee19eb

IDd3ee19eb70678364cf1d5ebe53140895e2a1238f
상위 2c2a141c
하위 8dc6f04e

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

issue #563: line no run manual edit added

Change-Id: Ie0e7d9c19813d913da5dc473add40328775677d5

차이점 보기:

DTI_PID/DTI_PID/ItemPropertyTableWidget.py
22 22
from EngineeringAbstractItem import QEngineeringAbstractItem
23 23
from SymbolSvgItem import SymbolSvgItem
24 24
from EngineeringLineNoTextItem import QEngineeringLineNoTextItem
25
from QEngineeringTrimLineNoTextItem import QEngineeringTrimLineNoTextItem
25 26
from EngineeringLineItem import QEngineeringLineItem
26 27
from EngineeringNoteItem import QEngineeringNoteItem
27 28
from EngineeringTextItem import QEngineeringTextItem
......
920 921
    def keyPressEvent(self, event):
921 922
        from SymbolAttr import SymbolAttr
922 923

  
924
        app_doc_data = AppDocData.instance()
925

  
923 926
        if event.key() == Qt.Key_Delete:
924 927
            items = self.mainWindow.graphicsView.scene().selectedItems()
925 928
            selectedIndexes = self.selectedIndexes()
926 929
            if selectedIndexes and selectedIndexes[0].column() == 3 and self.item(selectedIndexes[0].row(),
927 930
                                                                                  1).text() == 'OWNER':
928
                items[0].owner = None
929
                self.show_item_property(items[0])
931
                item = items[0]
932
                item.owner = None
933

  
934
                matches = [_item for _item in self.mainWindow.graphicsView.scene().items() if
935
                           type(_item) is QEngineeringLineNoTextItem]
936
                matches.extend([lineNo for lineNo in app_doc_data.tracerLineNos if
937
                                type(lineNo) is QEngineeringTrimLineNoTextItem])
938
                for match in matches:
939
                    if item is match.prop('From'):
940
                        match.set_property('From', None)
941
                    if item is match.prop('To'):
942
                        match.set_property('To', None)
943

  
944
                    for run_index in reversed(range(len(match.runs))):
945
                        run = match.runs[run_index]
946
                        if item in run.items:
947
                            index = run.items.index(item)
948
                            run.items.pop(index)
949
                            if not run.items:
950
                                run.explode()
951
                                if type(match) is QEngineeringTrimLineNoTextItem and not match.runs:
952
                                    app_doc_data.tracerLineNos.pop(app_doc_data.tracerLineNos.index(match))
953

  
954
                self.show_item_property(item)
930 955
            elif len(items) == 1 and len(selectedIndexes) == 1 and (
931 956
                    type(items[0]) is QEngineeringLineItem or issubclass(type(items[0]), SymbolSvgItem) or \
932 957
                    type(items[0]) is QEngineeringLineNoTextItem or type(items[0]) is QEngineeringVendorItem):

내보내기 Unified diff

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