src/eric7/Project/ProjectOthersBrowser.py

branch
pdf_viewer
changeset 9697
cdaa3cc805f7
parent 9653
e67609152c5e
child 9722
63135ab601e7
diff -r 669dabfa1319 -r cdaa3cc805f7 src/eric7/Project/ProjectOthersBrowser.py
--- a/src/eric7/Project/ProjectOthersBrowser.py	Thu Jan 12 14:01:40 2023 +0100
+++ b/src/eric7/Project/ProjectOthersBrowser.py	Thu Jan 12 18:08:12 2023 +0100
@@ -114,6 +114,7 @@
         self.svgFile.connect(projectBrowser.svgFile)
         self.umlFile.connect(projectBrowser.umlFile)
         self.binaryFile.connect(projectBrowser.binaryFile)
+        self.pdfFile.connect(projectBrowser.pdfFile)
 
     def getIcon(self):
         """
@@ -137,6 +138,8 @@
         self.openInEditorAct = self.menu.addAction(
             self.tr("Open in Editor"), self._openFileInEditor
         )
+        self.openInPdfViewerAct = self.menu.addAction(
+            self.tr("Open in PDF Viewer"), self._openPdfViewer)
         self.menu.addSeparator()
         self.mimeTypeAct = self.menu.addAction(
             self.tr("Show Mime-Type"), self.__showMimeType
@@ -260,6 +263,7 @@
                     if isinstance(itm, ProjectBrowserFileItem):
                         self.editPixmapAct.setVisible(itm.isPixmapFile())
                         self.openInEditorAct.setVisible(itm.isSvgFile())
+                        self.openInPdfViewerAct.setVisible(itm.isPdfFile())
                         self.mimeTypeAct.setVisible(True)
                         self.menu.popup(self.mapToGlobal(coord))
                     elif isinstance(itm, ProjectBrowserDirectoryItem):
@@ -347,6 +351,16 @@
             if isinstance(itm, ProjectBrowserFileItem):
                 self.binaryFile.emit(itm.fileName())
 
+    def _openPdfViewer(self):
+        """
+        Protected slot to handle the open in PDF viewer popup menu entry.
+        """
+        itmList = self.getSelectedItems()
+
+        for itm in itmList:
+            if isinstance(itm, ProjectBrowserFileItem) and itm.isPdfFile():
+                self.pdfFile.emit(itm.fileName())
+
     def _openItem(self):
         """
         Protected slot to handle the open popup menu entry.
@@ -355,7 +369,9 @@
 
         for itm in itmList:
             if isinstance(itm, ProjectBrowserFileItem):
-                if itm.isSvgFile():
+                if itm.isPdfFile():
+                    self.pdfFile.emit(itm.fileName())
+                elif itm.isSvgFile():
                     self.svgFile.emit(itm.fileName())
                 elif itm.isPixmapFile():
                     self.pixmapFile.emit(itm.fileName())

eric ide

mercurial