Skip to content

Commit 5ed172a

Browse files
committed
log level pour la gui
1 parent a759485 commit 5ed172a

1 file changed

Lines changed: 56 additions & 7 deletions

File tree

Core/Gui.py

Lines changed: 56 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,13 @@
3636
from .Globals import _run_coro_async
3737
from .WidgetsCreator import ProgressDialog, CompilationProcessDialog
3838
from .Venv_Manager import VenvManager
39-
from .i18n import resolve_system_language, get_translations, tr_fr_en, is_french_language
39+
from .i18n import (
40+
resolve_system_language,
41+
get_translations,
42+
tr_fr_en,
43+
is_french_language,
44+
log_with_level,
45+
)
4046

4147
# Import des fonctionnalités UI depuis UiFeatures
4248
from .UiFeatures import UiFeatures
@@ -324,18 +330,61 @@ def tr(self, fr: str, en: str) -> str:
324330
# JOURNALISATION
325331
# =========================================================================
326332

333+
def _infer_log_level(self, text) -> str:
334+
try:
335+
s = str(text or "").strip()
336+
except Exception:
337+
s = ""
338+
if not s:
339+
return "info"
340+
emoji_levels = {
341+
"❌": "error",
342+
"⚠️": "warning",
343+
"✅": "success",
344+
"ℹ️": "info",
345+
"📝": "state",
346+
"📋": "state",
347+
"🔍": "state",
348+
"🔧": "state",
349+
"🔨": "state",
350+
"➡️": "state",
351+
"📦": "state",
352+
"🗑️": "state",
353+
}
354+
for emoji, lvl in emoji_levels.items():
355+
if s.startswith(emoji):
356+
return lvl
357+
low = s.lower()
358+
if any(
359+
tok in low
360+
for tok in ("error", "erreur", "échec", "echec", "failed", "invalid", "refus")
361+
):
362+
return "error"
363+
if any(tok in low for tok in ("warning", "avert", "warn", "attention")):
364+
return "warning"
365+
if any(tok in low for tok in ("success", "succès", "reussi", "réussi")):
366+
return "success"
367+
if any(tok in low for tok in ("state", "status", "état", "etat")):
368+
return "state"
369+
return "info"
370+
327371
def _safe_log(self, text):
328372
"""Journalise de manière sécurisée."""
329373
try:
330-
if hasattr(self, "log") and self.log:
331-
self.log.append(text)
332-
else:
333-
print(text)
374+
level = self._infer_log_level(text)
375+
log_with_level(self, level, text)
376+
return
334377
except Exception:
335378
try:
336-
print(text)
379+
if hasattr(self, "log") and self.log:
380+
self.log.append(text)
381+
else:
382+
print(text)
337383
except Exception:
338-
pass
384+
try:
385+
print(text)
386+
except Exception:
387+
pass
339388

340389
# =========================================================================
341390
# TÂCHES EN ARRIÈRE-PLAN

0 commit comments

Comments
 (0)