Differential D3659 Diff 8958 plugins/extensions/pykrita/plugin/plugins/scripter/ui_scripter/actions/openaction/openaction.py
Changeset View
Changeset View
Standalone View
Standalone View
plugins/extensions/pykrita/plugin/plugins/scripter/ui_scripter/actions/openaction/openaction.py
1 | from PyQt5.QtWidgets import QAction, QFileDialog, QMessageBox | 1 | from PyQt5.QtWidgets import QAction, QFileDialog, QMessageBox | ||
---|---|---|---|---|---|
2 | 2 | | |||
3 | | ||||
3 | class OpenAction(QAction): | 4 | class OpenAction(QAction): | ||
4 | 5 | | |||
5 | def __init__(self, scripter, parent=None): | 6 | def __init__(self, scripter, parent=None): | ||
6 | super(OpenAction, self).__init__(parent) | 7 | super(OpenAction, self).__init__(parent) | ||
7 | self.scripter = scripter | 8 | self.scripter = scripter | ||
8 | 9 | | |||
9 | self.triggered.connect(self.open) | 10 | self.triggered.connect(self.open) | ||
10 | 11 | | |||
11 | self.setText('Open') | 12 | self.setText('Open') | ||
13 | self.setObjectName('open') | ||||
12 | 14 | | |||
13 | @property | 15 | @property | ||
14 | def parent(self): | 16 | def parent(self): | ||
15 | return 'File' | 17 | return 'File' | ||
16 | 18 | | |||
17 | def open(self): | 19 | def open(self): | ||
18 | dialog = QFileDialog(self.scripter.uicontroller.mainWidget) | 20 | dialog = QFileDialog(self.scripter.uicontroller.mainWidget) | ||
19 | dialog.setNameFilter('Python files (*.py)') | 21 | dialog.setNameFilter('Python files (*.py)') | ||
20 | 22 | | |||
21 | if dialog.exec(): | 23 | if dialog.exec(): | ||
22 | try: | 24 | try: | ||
23 | selectedFile = dialog.selectedFiles()[0] | 25 | selectedFile = dialog.selectedFiles()[0] | ||
24 | fileExtension = selectedFile.rsplit('.', maxsplit=1)[1] | 26 | fileExtension = selectedFile.rsplit('.', maxsplit=1)[1] | ||
25 | 27 | | |||
26 | if fileExtension=='py': | 28 | if fileExtension=='py': | ||
27 | document = self.scripter.documentcontroller.openDocument(selectedFile) | 29 | document = self.scripter.documentcontroller.openDocument(selectedFile) | ||
28 | self.scripter.uicontroller.setDocumentEditor(document) | 30 | self.scripter.uicontroller.setDocumentEditor(document) | ||
31 | self.scripter.uicontroller.setStatusBar(document.filePath) | ||||
29 | 32 | | |||
30 | except: | 33 | except: | ||
31 | QMessageBox.information(self.scripter.uicontroller.mainWidget, | 34 | QMessageBox.information(self.scripter.uicontroller.mainWidget, | ||
32 | 'Invalid File', | 35 | 'Invalid File', | ||
33 | 'Open files with .py extension') | 36 | 'Open files with .py extension') |