Remove subject filtering, keep only priority buttons
Some checks failed
build / build-pip (push) Failing after 12s
build / build-win64 (push) Has been cancelled
build / build-macos (push) Has been cancelled

- Remove subject filter menu and related code
- Simplify filtering to priority groups only
- Keep Remove Filters button for priority reset
- Clean up unused code and UI elements
This commit is contained in:
kdusek
2025-12-01 18:03:54 +01:00
parent 4c3b6925e5
commit efdc63e1ab
5 changed files with 0 additions and 81 deletions

View File

@@ -41,42 +41,14 @@ class MessagesModel(QtGui.QStandardItemModel):
class MessagesProxyModel(QtCore.QSortFilterProxyModel):
unique_titles_updated = QtCore.pyqtSignal(set)
def __init__(self, parent=None):
super().__init__(parent)
self.allowed_priorities = set(range(11)) # 0-10
self.allowed_titles = set() # empty means all
self.unique_titles = set()
def set_allowed_priorities(self, priorities: set[int]):
self.allowed_priorities = priorities
self.invalidateFilter()
def set_allowed_titles(self, titles: set[str]):
print("Proxy setting allowed titles:", titles)
self.allowed_titles = titles
self.invalidateFilter()
def update_unique_titles(self):
if not self.sourceModel():
return
titles = set()
for row in range(self.sourceModel().rowCount()):
index = self.sourceModel().index(row, 0)
item = self.sourceModel().itemFromIndex(index)
message = item.data(MessageItemDataRole.MessageRole)
if message.title:
titles.add(message.title)
print("Unique titles found:", titles)
for row in range(self.sourceModel().rowCount()):
index = self.sourceModel().index(row, 0)
item = self.sourceModel().itemFromIndex(index)
message = item.data(MessageItemDataRole.MessageRole)
print(f"Message {row}: title={message.title}, priority={message.priority}")
self.unique_titles = titles
self.unique_titles_updated.emit(self.unique_titles)
def filterAcceptsRow(
self, source_row: int, source_parent: QtCore.QModelIndex
) -> bool:
@@ -86,10 +58,4 @@ class MessagesProxyModel(QtCore.QSortFilterProxyModel):
priority = message.priority if message.priority is not None else 0
if self.allowed_priorities and priority not in self.allowed_priorities:
return False
if (
self.allowed_titles
and message.title is not None
and message.title not in self.allowed_titles
):
return False
return True