diff -r 9eed155411f0 -r 4a1db75550bd eric6/Tasks/TaskFilter.py --- a/eric6/Tasks/TaskFilter.py Sat Oct 10 16:03:53 2020 +0200 +++ b/eric6/Tasks/TaskFilter.py Sun Oct 11 17:54:52 2020 +0200 @@ -7,8 +7,8 @@ Module implementing a class to store task data. """ - -from PyQt5.QtCore import QRegExp +import fnmatch +import re from .Task import Task @@ -24,7 +24,7 @@ self.active = False self.summaryFilter = None - self.filenameFilter = None + self.filenameFilter = "" self.typeFilter = Task.TypeNone # task type @@ -55,7 +55,7 @@ if not filterStr: self.summaryFilter = None else: - self.summaryFilter = QRegExp(filterStr) + self.summaryFilter = re.compile(filterStr) def setFileNameFilter(self, filterStr): """ @@ -64,11 +64,7 @@ @param filterStr a wildcard expression for the filename filter to set (string) or None """ - if not filterStr: - self.filenameFilter = None - else: - self.filenameFilter = QRegExp(filterStr) - self.filenameFilter.setPatternSyntax(QRegExp.Wildcard) + self.filenameFilter = filterStr def setTypeFilter(self, taskType): """ @@ -111,7 +107,7 @@ """ return ( self.summaryFilter is not None or - self.filenameFilter is not None or + bool(self.filenameFilter) or self.typeFilter != Task.TypeNone or self.scopeFilter is not None or self.statusFilter is not None or @@ -130,13 +126,13 @@ if ( self.summaryFilter and - self.summaryFilter.indexIn(task.summary) == -1 + self.summaryFilter.search(task.summary) is None ): return False if ( self.filenameFilter and - not self.filenameFilter.exactMatch(task.filename) + not fnmatch.fnmatch(task.filename, self.filenameFilter) ): return False