프로젝트

일반

사용자정보

개정판 9f0a0089

ID9f0a008963477db60384285fa737defae9eec4c4
상위 87d22b34
하위 ac47f669, 3896f3a5

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

line freeze on going

Change-Id: Ib225d1d8a7de442a2d90b436422837e7780334f3

차이점 보기:

DTI_PID/DTI_PID/Shapes/EngineeringRunItem.py
112 112
        from EngineeringLineItem import QEngineeringLineItem
113 113

  
114 114
        fixed = False
115
        reverse_flag = False
115 116
        matches = [item for item in self.items if type(item) is QEngineeringLineItem and item.prop('Freeze')]
116 117

  
117
        if not matches:
118
            for at in range(len(self.items)):
119
                if type(self.items[at]) is QEngineeringLineItem and at > 0:
120
                    self.items[at].arrange_flow_direction(self.items[at-1])
121
                elif type(self.items[at]) is QEngineeringLineItem and len(self.items) > 1:
122
                    self.items[at].arrange_flow_direction(self.items[at+1])
123
                    self.items[at].reverse()
124
        else:
118
        if matches:
125 119
            index = self.items.index(matches[0])
126 120

  
127
            if index == 0:
128
                for at in range(len(self.items)):
129
                    if type(self.items[at]) is QEngineeringLineItem and at > 0:
130
                        self.items[at].arrange_flow_direction(self.items[at-1])
131
            elif index == len(self.items) - 1:
132
                for at in reversed(range(len(self.items))):
133
                    if type(self.items[at]) is QEngineeringLineItem and at < len(self.items) - 1:
134
                        self.items[at].arrange_flow_direction(self.items[at+1])
135
                self.reverse()
136
            else:
137
                for at in reversed(range(index)):
138
                    if type(self.items[at]) is QEngineeringLineItem:
139
                        self.items[at].arrange_flow_direction(self.items[at+1], True)
140
                        #self.items[at].reverse()
141

  
142
                for at in range(index + 1, len(self.items)):
143
                    if type(self.items[at]) is QEngineeringLineItem:
144
                        self.items[at].arrange_flow_direction(self.items[at-1])
145
                        #self.items[at].reverse()
121
            if index == 0 and len(self.items) > 1:
122
                if matches[0].connectors[0].connectedItem == self.items[1]:
123
                    reverse_flag = True
124
            elif len(self.items) > 1:
125
                if matches[0].connectors[1].connectedItem == self.items[index - 1]:
126
                    reverse_flag = True
146 127
            
147 128
            fixed = True
148 129

  
130
        for at in range(len(self.items)):
131
            if type(self.items[at]) is QEngineeringLineItem and at > 0:
132
                self.items[at].arrange_flow_direction(self.items[at-1])
133
            elif type(self.items[at]) is QEngineeringLineItem and len(self.items) > 1:
134
                self.items[at].arrange_flow_direction(self.items[at+1])
135
                self.items[at].reverse()
136

  
137
        if reverse_flag:
138
            self.reverse()
139

  
149 140
        return fixed
150 141

  
151 142
    def reverse(self):

내보내기 Unified diff

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