zonza/interface/__init__.py
Ralph Mayola 82e0e16393 Ajoute l'overlay Qt, pour les plateformes sans Cocoa
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-23 19:05:25 +02:00

22 lines
909 B
Python

"""Choisit l'implémentation d'overlay selon la plateforme.
Convention des trois frontières (`moteur/`, `interface/`, `systeme/`) : **un module
plat par plateforme** — `interface/cocoa.py`, `systeme/macos.py`, `moteur/mlx.py`.
On ne passe à un sous-paquet que le jour où une plateforme exige réellement
plusieurs fichiers. Sans cette règle écrite, la couche Windows aurait eu à deviner
lequel des deux motifs imiter.
"""
import sys
def classe_overlay_pour(plateforme=None):
"""Rend la CLASSE d'overlay (pas une instance : Cocoa exige `alloc().init()`)."""
plateforme = plateforme or sys.platform
if plateforme.startswith("darwin"):
from interface.cocoa import PulseWindow
return PulseWindow
if plateforme.startswith("win32"):
from interface.qt import OverlayQt
return OverlayQt
raise NotImplementedError(f"Aucune interface pour : {plateforme}")