14 QAbstractItemView, QTreeWidgetItem, QInputDialog, QLineEdit, QMenu, |
14 QAbstractItemView, QTreeWidgetItem, QInputDialog, QLineEdit, QMenu, |
15 QApplication |
15 QApplication |
16 ) |
16 ) |
17 |
17 |
18 from E5Gui.E5TreeWidget import E5TreeWidget |
18 from E5Gui.E5TreeWidget import E5TreeWidget |
|
19 from E5Gui.E5OverrideCursor import E5OverrideCursor |
19 |
20 |
20 |
21 |
21 class AdBlockTreeWidget(E5TreeWidget): |
22 class AdBlockTreeWidget(E5TreeWidget): |
22 """ |
23 """ |
23 Class implementing a tree widget for the AdBlock configuration dialog. |
24 Class implementing a tree widget for the AdBlock configuration dialog. |
77 |
78 |
78 def refresh(self): |
79 def refresh(self): |
79 """ |
80 """ |
80 Public method to refresh the tree. |
81 Public method to refresh the tree. |
81 """ |
82 """ |
82 QApplication.setOverrideCursor(Qt.WaitCursor) |
83 with E5OverrideCursor(): |
83 self.__itemChangingBlock = True |
84 self.__itemChangingBlock = True |
84 self.clear() |
85 self.clear() |
85 |
86 |
86 boldFont = QFont() |
87 boldFont = QFont() |
87 boldFont.setBold(True) |
88 boldFont.setBold(True) |
88 |
89 |
89 self.__topItem = QTreeWidgetItem(self) |
90 self.__topItem = QTreeWidgetItem(self) |
90 self.__topItem.setText(0, self.__subscription.title()) |
91 self.__topItem.setText(0, self.__subscription.title()) |
91 self.__topItem.setFont(0, boldFont) |
92 self.__topItem.setFont(0, boldFont) |
92 self.addTopLevelItem(self.__topItem) |
93 self.addTopLevelItem(self.__topItem) |
93 |
94 |
94 allRules = self.__subscription.allRules() |
95 allRules = self.__subscription.allRules() |
95 |
96 |
96 index = 0 |
97 index = 0 |
97 for rule in allRules: |
98 for rule in allRules: |
98 item = QTreeWidgetItem(self.__topItem) |
99 item = QTreeWidgetItem(self.__topItem) |
99 item.setText(0, rule.filter()) |
100 item.setText(0, rule.filter()) |
100 item.setData(0, Qt.UserRole, index) |
101 item.setData(0, Qt.UserRole, index) |
101 if self.__subscription.canEditRules(): |
102 if self.__subscription.canEditRules(): |
102 item.setFlags(item.flags() | Qt.ItemIsEditable) |
103 item.setFlags(item.flags() | Qt.ItemIsEditable) |
103 self.__adjustItemFeatures(item, rule) |
104 self.__adjustItemFeatures(item, rule) |
104 index += 1 |
105 index += 1 |
105 |
106 |
106 self.expandAll() |
107 self.expandAll() |
107 self.showRule(None) |
108 self.showRule(None) |
108 self.__itemChangingBlock = False |
109 self.__itemChangingBlock = False |
109 QApplication.restoreOverrideCursor() |
|
110 QApplication.processEvents() |
|
111 |
110 |
112 def addRule(self, filterRule=""): |
111 def addRule(self, filterRule=""): |
113 """ |
112 """ |
114 Public slot to add a new rule. |
113 Public slot to add a new rule. |
115 |
114 |