Wed, 12 Aug 2015 20:13:45 +0200
Continued adding code for a Flash cookie manager.
4361
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
1 | # -*- coding: utf-8 -*- |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
2 | |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
3 | # Copyright (c) 2015 Detlev Offenbach <detlev@die-offenbachs.de> |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
4 | # |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
5 | |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
6 | """ |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
7 | Module implementing a dialog to manage the flash cookies. |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
8 | """ |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
9 | |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
10 | from PyQt5.QtCore import pyqtSlot, Qt, QPoint, QTimer |
4362
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
11 | from PyQt5.QtWidgets import QDialog, QTreeWidgetItem, QApplication, QMenu |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
12 | |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
13 | from E5Gui import E5MessageBox |
4361
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
14 | |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
15 | from .Ui_FlashCookieManagerDialog import Ui_FlashCookieManagerDialog |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
16 | |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
17 | import Preferences |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
18 | import UI.PixmapCache |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
19 | |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
20 | |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
21 | class FlashCookieManagerDialog(QDialog, Ui_FlashCookieManagerDialog): |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
22 | """ |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
23 | Class implementing a dialog to manage the flash cookies. |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
24 | """ |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
25 | def __init__(self, manager, parent=None): |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
26 | """ |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
27 | Constructor |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
28 | |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
29 | @param manager reference to the Flash cookie manager object |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
30 | @type FlashCookieManager |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
31 | @param parent reference to the parent widget |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
32 | @type QWidget |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
33 | """ |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
34 | super(FlashCookieManagerDialog, self).__init__(parent) |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
35 | self.setupUi(self) |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
36 | self.setWindowFlags(Qt.Window) |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
37 | |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
38 | self.cookiesList.setContextMenuPolicy(Qt.CustomContextMenu) |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
39 | self.cookiesList.customContextMenuRequested.connect( |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
40 | self.__cookiesListContextMenuRequested) |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
41 | |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
42 | self.__manager = manager |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
43 | |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
44 | @pyqtSlot() |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
45 | def on_whiteList_itemSelectionChanged(self): |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
46 | """ |
4362
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
47 | Private slot handling the selection of items in the whitelist. |
4361
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
48 | """ |
4362
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
49 | enable = len(self.whiteList.selectedItems()) > 0 |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
50 | self.removeWhiteButton.setEnabled(enable) |
4361
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
51 | |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
52 | @pyqtSlot() |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
53 | def on_blackList_itemSelectionChanged(self): |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
54 | """ |
4362
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
55 | Private slot handling the selection of items in the blacklist. |
4361
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
56 | """ |
4362
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
57 | enable = len(self.blackList.selectedItems()) > 0 |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
58 | self.removeBlackButton.setEnabled(enable) |
4361
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
59 | |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
60 | @pyqtSlot() |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
61 | def on_removeWhiteButton_clicked(self): |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
62 | """ |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
63 | Slot documentation goes here. |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
64 | """ |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
65 | # TODO: not implemented yet |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
66 | raise NotImplementedError |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
67 | |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
68 | @pyqtSlot() |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
69 | def on_addWhiteButton_clicked(self): |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
70 | """ |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
71 | Slot documentation goes here. |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
72 | """ |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
73 | # TODO: not implemented yet |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
74 | raise NotImplementedError |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
75 | |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
76 | @pyqtSlot() |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
77 | def on_removeBlackButton_clicked(self): |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
78 | """ |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
79 | Slot documentation goes here. |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
80 | """ |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
81 | # TODO: not implemented yet |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
82 | raise NotImplementedError |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
83 | |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
84 | @pyqtSlot() |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
85 | def on_addBlackButton_clicked(self): |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
86 | """ |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
87 | Slot documentation goes here. |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
88 | """ |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
89 | # TODO: not implemented yet |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
90 | raise NotImplementedError |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
91 | |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
92 | @pyqtSlot(str) |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
93 | def on_filterEdit_textChanged(self, p0): |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
94 | """ |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
95 | Slot documentation goes here. |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
96 | """ |
4362
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
97 | return |
4361
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
98 | # TODO: not implemented yet |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
99 | raise NotImplementedError |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
100 | |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
101 | @pyqtSlot(QTreeWidgetItem, QTreeWidgetItem) |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
102 | def on_cookiesList_currentItemChanged(self, current, previous): |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
103 | """ |
4362
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
104 | Private slot handling a change of the current cookie item. |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
105 | |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
106 | @param current reference to the current item |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
107 | @type QTreeWidgetItem |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
108 | @param previous reference to the previous item |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
109 | @type QTreeWidgetItem |
4361
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
110 | """ |
4362
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
111 | if current is None: |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
112 | self.removeButton.setEnabled(False) |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
113 | return |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
114 | |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
115 | cookie = current.data(0, Qt.UserRole) |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
116 | if cookie is None: |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
117 | self.nameLabel.setText(self.tr("<no flash cookie selected>")) |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
118 | self.sizeLabel.setText(self.tr("<no flash cookie selected>")) |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
119 | self.originLabel.setText(self.tr("<no flash cookie selected>")) |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
120 | self.modifiedLabel.setText(self.tr("<no flash cookie selected>")) |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
121 | self.contentsEdit.clear() |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
122 | self.pathEdit.clear() |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
123 | self.removeButton.setText(self.tr("Remove Cookie Group")) |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
124 | else: |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
125 | suffix = "" |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
126 | if cookie.path.startswith( |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
127 | self.__manager.flashPlayerDataPath() + |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
128 | "/macromedia.com/support/flashplayer/sys"): |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
129 | suffix = self.tr(" (settings)") |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
130 | self.nameLabel.setText( |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
131 | self.tr("{0}{1}", "name and suffix") |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
132 | .format(cookie.name, suffix)) |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
133 | self.sizeLabel.setText(self.tr("{0} Byte").format(cookie.size)) |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
134 | self.originLabel.setText(cookie.origin) |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
135 | self.modifiedLabel.setText( |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
136 | cookie.lastModified.toString("yyyy-MM-dd hh:mm:ss")) |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
137 | self.contentsEdit.setPlainText(cookie.contents) |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
138 | self.pathEdit.setText(cookie.path) |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
139 | self.removeButton.setText(self.tr("Remove Cookie")) |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
140 | self.removeButton.setEnabled(True) |
4361
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
141 | |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
142 | @pyqtSlot(QPoint) |
4362
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
143 | def __cookiesListContextMenuRequested(self, pos): |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
144 | """ |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
145 | Private slot handling the cookies list context menu. |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
146 | |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
147 | @param pos position to show the menu at |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
148 | @type QPoint |
4361
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
149 | """ |
4362
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
150 | itm = self.cookiesList.itemAt(pos) |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
151 | if itm is None: |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
152 | return |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
153 | |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
154 | menu = QMenu() |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
155 | addBlacklistAct = menu.addAction(self.tr("Add to blacklist")) |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
156 | addWhitelistAct = menu.addAction(self.tr("Add to whitelist")) |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
157 | |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
158 | self.cookiesList.setCurrentItem(itm) |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
159 | |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
160 | activatedAction = menu.exec_( |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
161 | self.cookiesList.viewport().mapToGlobal(pos)) |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
162 | if itm.childCount() == 0: |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
163 | origin = itm.data(0, Qt.UserRole).origin |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
164 | else: |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
165 | origin = itm.text(0) |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
166 | |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
167 | if activatedAction == addBlacklistAct: |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
168 | self.__addBlacklist(origin) |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
169 | elif activatedAction == addWhitelistAct: |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
170 | self.__addWhitelist(origin) |
4361
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
171 | |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
172 | @pyqtSlot() |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
173 | def on_reloadButton_clicked(self): |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
174 | """ |
4362
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
175 | Private slot handling a press of the reload button. |
4361
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
176 | """ |
4362
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
177 | self.refreshView(True) |
4361
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
178 | |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
179 | @pyqtSlot() |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
180 | def on_removeAllButton_clicked(self): |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
181 | """ |
4362
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
182 | Private slot to remove all cookies. |
4361
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
183 | """ |
4362
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
184 | ok = E5MessageBox.yesNo( |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
185 | self, |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
186 | self.tr("Remove All"), |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
187 | self.tr("""Do you really want to delete all flash cookies on""" |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
188 | """ your computer?""")) |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
189 | if ok: |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
190 | cookies = self.__manager.flashCookies() |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
191 | for cookie in cookies: |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
192 | self.__manager.removeCookie(cookie) |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
193 | |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
194 | self.cookiesList.clear() |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
195 | self.__manager.clearNewOrigins() |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
196 | self.__manager.clearCache() |
4361
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
197 | |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
198 | @pyqtSlot() |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
199 | def on_removeButton_clicked(self): |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
200 | """ |
4362
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
201 | Private slot to remove one cookie or a cookie group. |
4361
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
202 | """ |
4362
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
203 | itm = self.cookiesList.currentItem() |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
204 | if itm is None: |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
205 | return |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
206 | |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
207 | cookie = itm.data(0, Qt.UserRole) |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
208 | if cookie is None: |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
209 | # remove a whole cookie group |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
210 | origin = itm.text(0) |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
211 | cookieList = self.__manager.flashCookies() |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
212 | for fcookie in cookieList: |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
213 | if fcookie.origin == origin: |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
214 | self.__manager.removeCookie(fcookie) |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
215 | |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
216 | index = self.cookiesList.indexOfTopLevelItem(itm) |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
217 | self.cookiesList.takeTopLevelItem(index) |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
218 | else: |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
219 | self.__manager.removeCookie(cookie) |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
220 | parent = itm.parent() |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
221 | index = parent.indexOfChild(itm) |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
222 | parent.takeChild(index) |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
223 | |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
224 | if parent.childCount() == 0: |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
225 | # remove origin item as well |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
226 | index = self.cookiesList.indexOfTopLevelItem(parent) |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
227 | self.cookiesList.takeTopLevelItem(index) |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
228 | del parent |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
229 | del itm |
4361
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
230 | |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
231 | def refreshView(self, forceReload=False): |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
232 | """ |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
233 | Public method to refresh the dialog view. |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
234 | |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
235 | @param forceReload flag indicating to reload the cookies |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
236 | @type bool |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
237 | """ |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
238 | blocked = self.filterEdit.blockSignals(True) |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
239 | self.filterEdit.clear() |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
240 | self.contentsEdit.clear() |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
241 | self.filterEdit.blockSignals(blocked) |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
242 | |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
243 | if forceReload: |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
244 | self.__manager.clearCache() |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
245 | self.__manager.clearNewOrigins() |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
246 | |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
247 | QTimer.singleShot(0, self.__refreshCookiesList) |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
248 | QTimer.singleShot(0, self.__refreshFilterLists) |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
249 | |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
250 | def showPage(self, index): |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
251 | """ |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
252 | Public method to display a given page. |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
253 | |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
254 | @param index index of the page to be shown |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
255 | @type int |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
256 | """ |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
257 | self.cookiesTabWidget.setCurrentIndex(index) |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
258 | |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
259 | @pyqtSlot() |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
260 | def __refreshCookiesList(self): |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
261 | """ |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
262 | Private slot to refresh the cookies list. |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
263 | """ |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
264 | QApplication.setOverrideCursor(Qt.WaitCursor) |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
265 | |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
266 | cookies = self.__manager.flashCookies() |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
267 | self.cookiesList.clear() |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
268 | |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
269 | counter = 0 |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
270 | originDict = {} |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
271 | for cookie in cookies: |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
272 | cookieOrigin = cookie.origin |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
273 | if cookieOrigin.startswith("."): |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
274 | cookieOrigin = cookieOrigin[1:] |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
275 | |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
276 | if cookieOrigin in originDict: |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
277 | itm = QTreeWidgetItem(originDict[cookieOrigin]) |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
278 | else: |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
279 | newParent = QTreeWidgetItem(self.cookiesList) |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
280 | newParent.setText(0, cookieOrigin) |
4362
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
281 | newParent.setIcon(0, UI.PixmapCache.getIcon("dirOpen.png")) |
4361
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
282 | self.cookiesList.addTopLevelItem(newParent) |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
283 | originDict[cookieOrigin] = newParent |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
284 | |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
285 | itm = QTreeWidgetItem(newParent) |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
286 | |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
287 | suffix = "" |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
288 | if cookie.path.startswith( |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
289 | self.__manager.flashPlayerDataPath() + |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
290 | "/macromedia.com/support/flashplayer/sys"): |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
291 | suffix = self.tr(" (settings)") |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
292 | |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
293 | if cookie.path + "/" + cookie.name in \ |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
294 | self.__manager.newCookiesList(): |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
295 | suffix += self.tr(" [new]") |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
296 | font = itm.font(0) |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
297 | font.setBold(True) |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
298 | itm.setFont(font) |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
299 | itm.parent().setExpanded(True) |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
300 | |
4362
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
301 | itm.setText(0, self.tr("{0}{1}", "name and suffix").format( |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
302 | cookie.name, suffix)) |
4361
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
303 | itm.setData(0, Qt.UserRole, cookie) |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
304 | |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
305 | counter += 1 |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
306 | if counter > 100: |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
307 | QApplication.processEvents() |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
308 | counter = 0 |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
309 | |
4362
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
310 | self.removeAllButton.setEnabled( |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
311 | self.cookiesList.topLevelItemCount() > 0) |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
312 | self.removeButton.setEnabled(False) |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
313 | |
4361
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
314 | QApplication.restoreOverrideCursor() |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
315 | |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
316 | @pyqtSlot() |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
317 | def __refreshFilterLists(self): |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
318 | """ |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
319 | Private slot to refresh the white and black lists. |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
320 | """ |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
321 | self.whiteList.clear() |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
322 | self.blackList.clear() |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
323 | |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
324 | self.whiteList.addItems(Preferences.getHelp("FlashCookiesWhitelist")) |
9eec3a532d59
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
325 | self.blackList.addItems(Preferences.getHelp("FlashCookiesBlacklist")) |
4362
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
326 | |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
327 | self.on_whiteList_itemSelectionChanged() |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
328 | self.on_blackList_itemSelectionChanged() |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
329 | |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
330 | def closeEvent(self, evt): |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
331 | """ |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
332 | Protected method to handle the close event. |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
333 | |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
334 | @param evt reference to the close event |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
335 | @type QCloseEvent |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
336 | """ |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
337 | self.__manager.clearNewOrigins() |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
338 | |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
339 | whiteList = [] |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
340 | for row in range(self.whiteList.count()): |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
341 | whiteList.append(self.whiteList.item(row).text()) |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
342 | |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
343 | blackList = [] |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
344 | for row in range(self.blackList.count()): |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
345 | blackList.append(self.blackList.item(row).text()) |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
346 | |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
347 | Preferences.setHelp("FlashCookiesWhitelist", whiteList) |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
348 | Preferences.setHelp("FlashCookiesBlacklist", blackList) |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
349 | |
1a171c85b275
Continued adding code for a Flash cookie manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4361
diff
changeset
|
350 | evt.accept() |