add dialog to manage highlighters

- no support for "no color"
- settings not saved to disk
This commit is contained in:
2021-10-30 16:25:34 +02:00
parent 43e85d2863
commit aee0ff9968
9 changed files with 325 additions and 62 deletions

View File

@@ -21,15 +21,8 @@ class LogFileModel:
self._file = os.path.realpath(file)
self._lock = threading.RLock()
self.highlights = Highlighting.read_config(settings)
# [
# HighlightRegex(
# re.compile("ERROR"),
# brush=QBrush(QColor(220, 112, 122)),
# pen=QPen(QColor(0, 0, 0)),
# brush_full_line=QBrush(QColor(255, 112, 122))
# )
# ]
def highlighters(self):
return Highlighting.read_config(self.settings)
def get_file(self):
return self._file
@@ -40,14 +33,15 @@ class LogFileModel:
def get_query_highlight(self):
return self._query_highlight
def set_query_highlight(self, regex: Optional[re.Pattern] = None):
if regex:
self._query_highlight = HighlightRegex(
regex,
brush=QBrush(QColor(255, 255, 0))
)
else:
self._query_highlight = None
def clear_query_highlight(self):
self._query_highlight = None
def set_query_highlight(self, query: str, ignore_case: bool, is_regex: bool):
self._query_highlight = HighlightRegex(
query=query,
ignore_case=ignore_case,
is_regex=is_regex,
hit_background_color="ffff00")
def get_tab_name(self):
file_name = os.path.basename(self._file)