diff --git a/src/View/RunSolver/Window.py b/src/View/RunSolver/Window.py index fa98007c6618d8b91e5b69318680fcddf8ece731..7fe2c3a3aa85f6e95de4e0fab53480a7c9477681 100644 --- a/src/View/RunSolver/Window.py +++ b/src/View/RunSolver/Window.py @@ -92,7 +92,7 @@ class SolverLogWindow(ASubMainWindow, ListedSubWindow): self._alarm.start(500) self._output = Queue() - self._log(f" *** Run solver {self._solver.name}") + self._log(f" *** Run solver {self._solver.name}", color="blue") self._solver.run(self._process, self._output) def setup_action(self): @@ -110,13 +110,21 @@ class SolverLogWindow(ASubMainWindow, ListedSubWindow): self._alarm.timeout.connect(self.update) - def _log(self, msg): + def _log(self, msg, color=None): if type(msg) == str: msg = msg.rsplit('\n')[0] + + if color is not None: + msg = f"<font color=\"{color}\">" + msg + "</font>" + self.find(QTextEdit, "textEdit").append(msg) + elif type(msg) == int: + color = "blue" if msg == 0 else "red" self.find(QTextEdit, "textEdit")\ - .append(f" *** Solver finished with code {msg}") + .append(f"<font color=\"{color}\">" + + f"*** Solver finished with code {msg}" + + "</font>") def update(self): while self._output.qsize() != 0: @@ -124,7 +132,7 @@ class SolverLogWindow(ASubMainWindow, ListedSubWindow): self._log(s) def start(self): - self._log(" *** Start") + self._log(" *** Start", color="blue") self._solver.start() @@ -133,7 +141,7 @@ class SolverLogWindow(ASubMainWindow, ListedSubWindow): self.find(QAction, "action_stop").setEnabled(True) def pause(self): - self._log(" *** Pause") + self._log(" *** Pause", color="blue") self._solver.pause() @@ -142,7 +150,7 @@ class SolverLogWindow(ASubMainWindow, ListedSubWindow): self.find(QAction, "action_stop").setEnabled(True) def stop(self): - self._log(" *** Stop") + self._log(" *** Stop", color="blue") self._solver.kill()