WebBrowser/CookieJar/CookiesConfigurationDialog.py

branch
QtWebEngine
changeset 4845
2d22ff71c005
parent 4631
5c1a96925da4
child 5389
9b1c800daff3
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/WebBrowser/CookieJar/CookiesConfigurationDialog.py	Sat Mar 12 16:49:36 2016 +0100
@@ -0,0 +1,98 @@
+# -*- coding: utf-8 -*-
+
+# Copyright (c) 2009 - 2016 Detlev Offenbach <detlev@die-offenbachs.de>
+#
+
+"""
+Module implementing the cookies configuration dialog.
+"""
+
+from __future__ import unicode_literals
+
+from PyQt5.QtCore import pyqtSlot
+from PyQt5.QtWidgets import QDialog
+
+from .CookieJar import CookieJar
+
+from .Ui_CookiesConfigurationDialog import Ui_CookiesConfigurationDialog
+
+
+class CookiesConfigurationDialog(QDialog, Ui_CookiesConfigurationDialog):
+    """
+    Class implementing the cookies configuration dialog.
+    """
+    def __init__(self, parent):
+        """
+        Constructor
+        
+        @param parent reference to the parent object (QWidget)
+        """
+        super(CookiesConfigurationDialog, self).__init__(parent)
+        self.setupUi(self)
+        
+        self.__mw = parent
+        
+        jar = self.__mw.cookieJar()
+        acceptPolicy = jar.acceptPolicy()
+        if acceptPolicy == CookieJar.AcceptAlways:
+            self.acceptCombo.setCurrentIndex(0)
+        elif acceptPolicy == CookieJar.AcceptNever:
+            self.acceptCombo.setCurrentIndex(1)
+        elif acceptPolicy == CookieJar.AcceptOnlyFromSitesNavigatedTo:
+            self.acceptCombo.setCurrentIndex(2)
+        
+        keepPolicy = jar.keepPolicy()
+        if keepPolicy == CookieJar.KeepUntilExpire:
+            self.keepUntilCombo.setCurrentIndex(0)
+        elif keepPolicy == CookieJar.KeepUntilExit:
+            self.keepUntilCombo.setCurrentIndex(1)
+        
+        self.filterTrackingCookiesCheckbox.setChecked(
+            jar.filterTrackingCookies())
+        
+        msh = self.minimumSizeHint()
+        self.resize(max(self.width(), msh.width()), msh.height())
+    
+    def accept(self):
+        """
+        Public slot to accept the dialog.
+        """
+        acceptSelection = self.acceptCombo.currentIndex()
+        if acceptSelection == 0:
+            acceptPolicy = CookieJar.AcceptAlways
+        elif acceptSelection == 1:
+            acceptPolicy = CookieJar.AcceptNever
+        elif acceptSelection == 2:
+            acceptPolicy = CookieJar.AcceptOnlyFromSitesNavigatedTo
+        
+        keepSelection = self.keepUntilCombo.currentIndex()
+        if keepSelection == 0:
+            keepPolicy = CookieJar.KeepUntilExpire
+        elif keepSelection == 1:
+            keepPolicy = CookieJar.KeepUntilExit
+        
+        jar = self.__mw.cookieJar()
+        jar.setAcceptPolicy(acceptPolicy)
+        jar.setKeepPolicy(keepPolicy)
+        jar.setFilterTrackingCookies(
+            self.filterTrackingCookiesCheckbox.isChecked())
+        
+        super(CookiesConfigurationDialog, self).accept()
+    
+    @pyqtSlot()
+    def on_exceptionsButton_clicked(self):
+        """
+        Private slot to show the cookies exceptions dialog.
+        """
+        from .CookiesExceptionsDialog import CookiesExceptionsDialog
+        dlg = CookiesExceptionsDialog(self.__mw.cookieJar())
+        dlg.exec_()
+    
+    @pyqtSlot()
+    def on_cookiesButton_clicked(self):
+        """
+        Private slot to show the cookies dialog.
+        """
+        from .CookiesDialog import CookiesDialog
+        dlg = CookiesDialog(self.__mw.cookieJar())
+        dlg.exec_()

eric ide

mercurial