프로젝트

일반

사용자정보

개정판 100ba941

ID100ba9417600f0095f6a0d529e15e998b97278bf
상위 8df40630
하위 bcdd2a76, d770e9ac

김정우 이(가) 약 7년 전에 추가함

Context Menu 중 Delete Symbol 기능 추가

차이점 보기:

DTI_PID/DTI_PID/QDirTreeWidget.py
48 48
            displaySymbolAction.triggered.connect(lambda: self.displaySymbolActionClickEvent(text))
49 49
            menu.addAction(displaySymbolAction)
50 50
            deleteSymbolAction = QAction(self.tr("Delete Symbol"))
51
            deleteSymbolAction.triggered.connect(lambda: self.deleteSymbolActionClickEvent())
51
            deleteSymbolAction.triggered.connect(lambda: self.deleteSymbolActionClickEvent(text))
52 52
            menu.addAction(deleteSymbolAction)
53 53
            menu.exec_(self.viewport().mapToGlobal(position))
54 54

  
......
61 61
        dialog = QSymbolDisplayDialog.QSymbolDisplayDialog(image)
62 62
        dialog.showDialog()
63 63

  
64
    def deleteSymbolActionClickEvent(self):
65
        print("delete symbol")
64
    def deleteSymbolActionClickEvent(self, itemName):
65
        msg = QMessageBox()
66
        msg.setIcon(QMessageBox.Critical)
67
        msg.setText("선택한 심볼을 삭제하시겠습니까?\n삭제된 심볼은 복구할 수 없습니다.")
68
        msg.setWindowTitle("심볼 삭제")
69
        msg.setStandardButtons(QMessageBox.Ok|QMessageBox.Cancel)
70
        #msg.buttonClicked.connect(lambda: self.handleDeleteSymbolAction(itemName))
71
        result = msg.exec_()
72
        self.handleDeleteSymbolAction(result, itemName)
73

  
74
    def handleDeleteSymbolAction(self, result, itemName):
75
        print("handle")
76
        if result == QMessageBox.Ok:
77
            project = AppDocData.instance().getCurrentProject()
78
            imagePath = project.getPath() + "/image/" + itemName
79
            if os.path.exists(imagePath):
80
                os.remove(imagePath)
81

  
82
            svgPath = project.getPath() + "/svg/" + itemName.replace(".png", ".svg")
83
            if os.path.exists(svgPath):
84
                os.remove(svgPath)
85

  
86
            AppDocData.instance().deleteSymbol(imagePath)
87
        else:
88
            pass
66 89

  
67 90
    def initDirTreeWidget(self):
68 91
        project = AppDocData.instance().getCurrentProject()

내보내기 Unified diff