+ PluginController └─ GUIManager └─ PrüfManager (koordiniert alle Prüfer) ├─ Dateiprüfer ├─ Linklistenprüfer │ └─ Zeilenprüfer[n] │ ├─ Linkprüfer │ └─ Stilprüfer └─ LayerLoader └─ Logger Plan41_plugin/ │ ├── plugin/ # Plugin-Code │ ├── main_plugin.py # PluginController │ ├── dock_widget.py # GUIManager │ ├── pruefer/ │ │ ├── dateipruefer.py │ │ ├── linklistenpruefer.py │ │ ├── zeilenpruefer.py │ │ ├── linkpruefer.py │ │ └── stilpruefer.py │ ├── loader.py │ └── logger.py │ ├── tests/ # Unit-Tests │ ├── __init__.py │ ├── test_dateipruefer.py │ ├── test_linklistenpruefer.py │ ├── test_zeilenpruefer.py │ ├── test_linkpruefer.py │ ├── test_stilpruefer.py │ ├── test_logger.py │ └── run_tests.py # zentraler Test-Runner │ ├── requirements.txt └── README.md +------------------------------------+ | PluginController | +------------------------------------+ | - Dock_widget: GUIManager | | - pruef_manager: PruefManager | | - loader: LayerLoader | | - logger: Logger | +------------------------------------+ | + start(): void | +------------------------------------+ +------------------------------------+ | GUIManager | +------------------------------------+ | - dialog: QWidget | +------------------------------------+ | + getParameter(): dict | +------------------------------------+ +------------------------------------+ | PruefManager | +------------------------------------+ | - dateipruefer: Dateipruefer | | - linklistenpruefer: Linklisten... | +------------------------------------+ | + pruefe_alle(parameter): list | +------------------------------------+ +------------------------------------+ | Dateipruefer | +------------------------------------+ | + pruefe(pfad: str): PruefErgebnis | +------------------------------------+ +------------------------------------+ | Linklistenpruefer | +------------------------------------+ | + pruefe(pfad: str): list[Zeile] | +------------------------------------+ +------------------------------------+ | Zeilenpruefer | +------------------------------------+ | - linkpruefer: Linkpruefer | | - stilpruefer: Stilpruefer | +------------------------------------+ | + pruefe(zeile: str): LayerAuftrag | +------------------------------------+ +------------------------------------+ | Linkpruefer | +------------------------------------+ | + pruefe(link: str): PruefErgebnis | +------------------------------------+ +------------------------------------+ | Stilpruefer | +------------------------------------+ | + pruefe(stilname: str): Pruef... | +------------------------------------+ +------------------------------------+ | LayerLoader | +------------------------------------+ | + lade(layer_auftrag): void | +------------------------------------+ +------------------------------------+ | Logger | +------------------------------------+ | + schreibe(msg: str): void | | + exportiere(): file | +------------------------------------+ +------------------------------------+ | PruefErgebnis | +------------------------------------+ | - erfolgreich: bool | | - daten: dict | | - fehler: list[str] | | - warnungen: list[str] | +------------------------------------+