프로젝트

일반

사용자정보

개정판 8bfdce15

ID8bfdce151c41b13b7e6a9fc069d8d255effba4b2
상위 6d011c3c
하위 50de3758

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

issue #538: add key_i function insert symbol

Change-Id: I0a22d381d1a202a6cd959a239d9cd51eb5e24ab9

차이점 보기:

DTI_PID/DTI_PID/MainWindow.py
341 341
    def eventFilter(self, source, event):
342 342
        """display mouse position of graphics view"""
343 343
        if event.type() == QEvent.MouseMove:
344
            pos = self.graphicsView.mapToScene(event.pos())
345
            self._label_mouse.setText('mouse pos : ({},{})'.format(round(pos.x()), round(pos.y())))
344
            self.current_pos = self.graphicsView.mapToScene(event.pos())
345
            self._label_mouse.setText('mouse pos : ({},{})'.format(round(self.current_pos.x()), round(self.current_pos.y())))
346 346

  
347 347
        return QWidget.eventFilter(self, source, event)
348 348

  
......
1818 1818
                if modifiers == Qt.ControlModifier:
1819 1819
                    dlg = QDevelopmentToolkitDialog(self, self.graphicsView)
1820 1820
                    dlg.show()
1821
            elif event.key() == Qt.Key_I:
1822
                # insert symbol item that is selected symbol in tree to main window if symbol already selected on main window, replace
1823
                items = self.dirTreeWidget.selectedItems()
1824
                if items and hasattr(items[0], 'svgFilePath'):
1825
                    symData = items[0].data(0, self.dirTreeWidget.TREE_DATA_ROLE)
1826
                    symName = symData.getName()
1827
                else:
1828
                    return
1829

  
1830
                symbolItems = [symbol for symbol in self.graphicsView.scene.selectedItems() if
1831
                             issubclass(type(symbol), SymbolSvgItem)]
1832
                old_symbol = None
1833
                if symbolItems and len(symbolItems) is 1:
1834
                    old_symbol = symbolItems[0]
1835
                    scenePos = QPoint(old_symbol.origin[0], old_symbol.origin[1])
1836
                    old_symbol.transfer.onRemoved.emit(old_symbol)
1837
                else:
1838
                    scenePos = self.current_pos
1839

  
1840
                svg = self.graphicsView.createSymbolObject(symName)
1841
                self.graphicsView.matchSymbolToLine(svg, scenePos)
1842

  
1843
                if old_symbol:
1844
                    return
1821 1845

  
1822 1846
            QMainWindow.keyPressEvent(self, event)
1823 1847
        except Exception as ex:
DTI_PID/DTI_PID/QtImageViewer.py
446 446
                    for item in items:
447 447
                        item.keyPressEvent(event)
448 448
                    return
449
            elif event.key() == Qt.Key_I:
450
                self.mainWindow.keyPressEvent(event)
451
                return
449 452

  
450 453
            QGraphicsView.keyPressEvent(self, event)
451 454
        except Exception as ex:

내보내기 Unified diff

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