| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354 |
- # -*- coding: utf-8 -*-
- """
- Basisklasse fuer Installer-Views.
- """
- from __future__ import annotations
- from typing import TYPE_CHECKING, ClassVar
- from textual.containers import VerticalScroll
- if TYPE_CHECKING:
- from ..config import InstallerConfig
- class InstallerView(VerticalScroll):
- """
- Basisklasse fuer alle Installer-Ansichten.
- Klassenattribute:
- TITLE: Anzeige-Titel der Ansicht
- VIEW_ID: Eindeutige ID fuer Zuordnung
- MODES: Liste der Modi in denen dieser View sichtbar ist
- """
- TITLE: ClassVar[str] = ""
- VIEW_ID: ClassVar[str] = ""
- MODES: ClassVar[list[str]] = ["server", "client", "standalone", "config"]
- def __init__(self, installer_config: InstallerConfig, **kwargs) -> None:
- super().__init__(**kwargs)
- self._config = installer_config
- @property
- def installer_config(self) -> InstallerConfig:
- """Zugriff auf die Installer-Konfiguration."""
- return self._config
- async def on_activate(self) -> None:
- """Hook: View wird aktiviert (sichtbar gemacht)."""
- pass
- async def on_deactivate(self) -> None:
- """Hook: View wird deaktiviert (versteckt)."""
- pass
- def validate(self) -> str | None:
- """
- Validiert die Eingaben dieses Views.
- Returns:
- Fehlermeldung oder None bei Erfolg.
- """
- return None
|