87 @signal svgFile(filename) emitted to open a SVG file (str) |
87 @signal svgFile(filename) emitted to open a SVG file (str) |
88 @signal umlFile(filename) emitted to open an eric UML file (str) |
88 @signal umlFile(filename) emitted to open an eric UML file (str) |
89 @signal binaryFile(filename) emitted to open a file as binary (str) |
89 @signal binaryFile(filename) emitted to open a file as binary (str) |
90 @signal testFile(filename) emitted to open a Python file for a |
90 @signal testFile(filename) emitted to open a Python file for a |
91 unit test (str) |
91 unit test (str) |
|
92 @signal pdfFile(filename) emitted to open a PDF file (str) |
92 """ |
93 """ |
93 |
94 |
94 sourceFile = pyqtSignal((str,), (str, int), (str, list), (str, int, str)) |
95 sourceFile = pyqtSignal((str,), (str, int), (str, list), (str, int, str)) |
95 designerFile = pyqtSignal(str) |
96 designerFile = pyqtSignal(str) |
96 linguistFile = pyqtSignal(str) |
97 linguistFile = pyqtSignal(str) |
100 pixmapFile = pyqtSignal(str) |
101 pixmapFile = pyqtSignal(str) |
101 pixmapEditFile = pyqtSignal(str) |
102 pixmapEditFile = pyqtSignal(str) |
102 svgFile = pyqtSignal(str) |
103 svgFile = pyqtSignal(str) |
103 umlFile = pyqtSignal(str) |
104 umlFile = pyqtSignal(str) |
104 binaryFile = pyqtSignal(str) |
105 binaryFile = pyqtSignal(str) |
|
106 pdfFile = pyqtSignal(str) |
105 testFile = pyqtSignal(str) |
107 testFile = pyqtSignal(str) |
106 |
108 |
107 def __init__(self, parent=None): |
109 def __init__(self, parent=None): |
108 """ |
110 """ |
109 Constructor |
111 Constructor |
292 ) |
294 ) |
293 self.openInEditorAct = self.menu.addAction( |
295 self.openInEditorAct = self.menu.addAction( |
294 QCoreApplication.translate("Browser", "Open in Editor"), |
296 QCoreApplication.translate("Browser", "Open in Editor"), |
295 self._openFileInEditor, |
297 self._openFileInEditor, |
296 ) |
298 ) |
|
299 self.openInPdfViewerAct = self.menu.addAction( |
|
300 QCoreApplication.translate("Browser", "Open in PDF Viewer"), |
|
301 self._openPdfViewer, |
|
302 ) |
297 self.menu.addSeparator() |
303 self.menu.addSeparator() |
298 self.mimeTypeAct = self.menu.addAction( |
304 self.mimeTypeAct = self.menu.addAction( |
299 QCoreApplication.translate("Browser", "Show Mime-Type"), self.__showMimeType |
305 QCoreApplication.translate("Browser", "Show Mime-Type"), self.__showMimeType |
300 ) |
306 ) |
301 self.menu.addSeparator() |
307 self.menu.addSeparator() |
445 self.testingAct.setEnabled(False) |
451 self.testingAct.setEnabled(False) |
446 self.sourceMenu.popup(coord) |
452 self.sourceMenu.popup(coord) |
447 else: |
453 else: |
448 self.editPixmapAct.setVisible(itm.isPixmapFile()) |
454 self.editPixmapAct.setVisible(itm.isPixmapFile()) |
449 self.openInEditorAct.setVisible(itm.isSvgFile()) |
455 self.openInEditorAct.setVisible(itm.isSvgFile()) |
|
456 self.openInPdfViewerAct.setVisible(itm.isPdfFile()) |
450 self.menu.popup(coord) |
457 self.menu.popup(coord) |
451 elif isinstance( |
458 elif isinstance( |
452 itm, (BrowserClassItem, BrowserMethodItem, BrowserImportItem) |
459 itm, (BrowserClassItem, BrowserMethodItem, BrowserImportItem) |
453 ): |
460 ): |
454 self.editPixmapAct.setVisible(False) |
461 self.editPixmapAct.setVisible(False) |
|
462 self.openInPdfViewerAct.setVisible(False) |
455 self.menu.popup(coord) |
463 self.menu.popup(coord) |
456 elif isinstance(itm, BrowserClassAttributeItem): |
464 elif isinstance(itm, BrowserClassAttributeItem): |
457 self.attributeMenu.popup(coord) |
465 self.attributeMenu.popup(coord) |
458 elif isinstance(itm, BrowserDirectoryItem): |
466 elif isinstance(itm, BrowserDirectoryItem): |
459 if not index.parent().isValid(): |
467 if not index.parent().isValid(): |
649 |
657 |
650 for itm in itmList: |
658 for itm in itmList: |
651 if isinstance(itm, BrowserFileItem): |
659 if isinstance(itm, BrowserFileItem): |
652 self.binaryFile.emit(itm.fileName()) |
660 self.binaryFile.emit(itm.fileName()) |
653 |
661 |
|
662 def _openPdfViewer(self): |
|
663 """ |
|
664 Protected slot to handle the open in PDF viewer popup menu entry. |
|
665 """ |
|
666 itmList = self.getSelectedItems([BrowserFileItem]) |
|
667 |
|
668 for itm in itmList: |
|
669 if isinstance(itm, BrowserFileItem): |
|
670 self.pdfFile.emit(itm.fileName()) |
|
671 |
654 def _openFileInEditor(self): |
672 def _openFileInEditor(self): |
655 """ |
673 """ |
656 Protected slot to handle the Open in Editor menu action. |
674 Protected slot to handle the Open in Editor menu action. |
657 """ |
675 """ |
658 itmList = self.getSelectedItems([BrowserFileItem]) |
676 itmList = self.getSelectedItems([BrowserFileItem]) |