WebBrowser/Download/DownloadAskActionDialog.py

branch
QtWebEngine
changeset 4768
57da9217196b
parent 4631
5c1a96925da4
child 5389
9b1c800daff3
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/WebBrowser/Download/DownloadAskActionDialog.py	Tue Feb 23 20:00:40 2016 +0100
@@ -0,0 +1,60 @@
+# -*- coding: utf-8 -*-
+
+# Copyright (c) 2011 - 2016 Detlev Offenbach <detlev@die-offenbachs.de>
+#
+
+"""
+Module implementing a dialog to ask for a download action.
+"""
+
+from __future__ import unicode_literals
+
+from PyQt5.QtWidgets import QDialog
+
+from .Ui_DownloadAskActionDialog import Ui_DownloadAskActionDialog
+
+import Preferences
+
+
+class DownloadAskActionDialog(QDialog, Ui_DownloadAskActionDialog):
+    """
+    Class implementing a dialog to ask for a download action.
+    """
+    def __init__(self, fileName, mimeType, baseUrl, parent=None):
+        """
+        Constructor
+        
+        @param fileName file name (string)
+        @param mimeType mime type (string)
+        @param baseUrl URL (string)
+        @param parent reference to the parent widget (QWidget)
+        """
+        super(DownloadAskActionDialog, self).__init__(parent)
+        self.setupUi(self)
+        
+        self.infoLabel.setText("<b>{0}</b>".format(fileName))
+        self.typeLabel.setText(mimeType)
+        self.siteLabel.setText(baseUrl)
+        
+        if not Preferences.getWebBrowser("VirusTotalEnabled") or \
+           Preferences.getWebBrowser("VirusTotalServiceKey") == "":
+            self.scanButton.setHidden(True)
+        
+        msh = self.minimumSizeHint()
+        self.resize(max(self.width(), msh.width()), msh.height())
+    
+    def getAction(self):
+        """
+        Public method to get the selected action.
+        
+        @return selected action ("save", "open", "scan" or "cancel")
+        """
+        if self.openButton.isChecked():
+            return "open"
+        elif self.scanButton.isChecked():
+            return "scan"
+        elif self.saveButton.isChecked():
+            return "save"
+        else:
+            # should not happen, but keep it safe
+            return "cancel"

eric ide

mercurial