diff --git a/tests/test_tab_a_logic.py b/tests/test_tab_a_logic.py index eed5bd4..94c3bd8 100644 --- a/tests/test_tab_a_logic.py +++ b/tests/test_tab_a_logic.py @@ -94,59 +94,6 @@ class TestTabALogic(unittest.TestCase): # ----------------------------------------------------- # 6. Layer-ID speichern # ----------------------------------------------------- - def test_verfahrensgebiet_layer_id_storage(self): - logic = TabALogic() - - class MockLayer: - def id(self): - return "layer-123" - - logic.save_verfahrensgebiet_layer(MockLayer()) - - stored = get_variable("verfahrensgebiet_layer", scope="project") - self.assertEqual(stored, "layer-123") - - # ----------------------------------------------------- - # 7. Ungültiger Layer wird ignoriert - # ----------------------------------------------------- - def test_invalid_layer_is_rejected(self): - logic = TabALogic() - - class InvalidLayer: - pass - - logic.save_verfahrensgebiet_layer(InvalidLayer()) - - stored = get_variable("verfahrensgebiet_layer", scope="project") - self.assertEqual(stored, "") - #----------------------------------------------------- - # 8. Layer-ID wirft Exception - #---------------------------------------------------- - def test_layer_id_raises_exception(self): - logic = TabALogic() - - class BadLayer: - def id(self): - raise RuntimeError("boom") - - logic.save_verfahrensgebiet_layer(BadLayer()) - - stored = get_variable("verfahrensgebiet_layer", scope="project") - self.assertEqual(stored, "") - # ----------------------------------------------------- - # 11. Layer ID wird leer zurückgegeben - # ----------------------------------------------------- - def test_layer_id_returns_empty(self): - logic = TabALogic() - - class EmptyLayer: - def id(self): - return "" - - logic.save_verfahrensgebiet_layer(EmptyLayer()) - - stored = get_variable("verfahrensgebiet_layer", scope="project") - self.assertEqual(stored, "") if __name__ == "__main__": diff --git a/ui/tab_a_logic.py b/ui/tab_a_logic.py index 3e5dc02..fc70a89 100644 --- a/ui/tab_a_logic.py +++ b/ui/tab_a_logic.py @@ -155,12 +155,6 @@ class TabALogic: # ------------------------------- # Verfahrensgebiet-Layer # ------------------------------- - - def save_verfahrensgebiet_layer(self, layer: QgsVectorLayer) -> None: - """Speichert die Verfahrensgebiet-Layer-ID, unter Annahme, dass der Layer prevalidiert ist.""" - layer_id = layer.id() if layer is not None else "" - set_variable("verfahrensgebiet_layer", layer_id or "", scope="project") - def load_verfahrensgebiet_layer_id(self) -> Optional[str]: value = get_variable("verfahrensgebiet_layer", scope="project") return value or None diff --git a/ui/tab_a_ui.py b/ui/tab_a_ui.py index 1da6369..a224e77 100644 --- a/ui/tab_a_ui.py +++ b/ui/tab_a_ui.py @@ -166,16 +166,7 @@ class TabA(QWidget): self.optional_content.setVisible(False) main_layout.addWidget(self.optional_content) - # === LAYER-AUSWAHL + RAUMFILTER === - layer_label = QLabel("Verfahrensgebiet-Layer auswählen") - layer_label.setStyleSheet("font-weight: bold; margin-top: 6px;") - main_layout.addWidget(layer_label) - - self.layer_combo = QgsMapLayerComboBox() - self.layer_combo.setFilters(QgsMapLayerProxyModel.VectorLayer) - self.layer_combo.layerChanged.connect(self._on_layer_changed) - main_layout.addWidget(self.layer_combo) - + # === RAUMFILTER === main_layout.addWidget(QLabel("Raumfilter")) self._raumfilter_combo = QComboBox(self) self._raumfilter_combo.setToolTip("Wählt die räumliche Bezugsfläche für die Datenextraktion.") @@ -213,18 +204,6 @@ class TabA(QWidget): self.lokale_linkliste = link except Exception: pass - - # Layer - try: - layer_id = get_variable("tab_a_layer_id", scope="project") - if layer_id: - layer = QgsProject.instance().mapLayer(layer_id) - if layer and self.layer_combo: - self.layer_combo.setLayer(layer) - self._pufferlayer = layer - except Exception: - pass - # Raumfilter (schon im _build_ui behandelt) # === UI CALLBACKS === @@ -249,20 +228,6 @@ class TabA(QWidget): self.lokale_linkliste = path set_variable("tab_a_linkliste", path, scope="project") - def _on_layer_changed(self, layer) -> None: - """Persistiert Layer-Auswahl und registriert Verfahrensgebiet.""" - self._pufferlayer = layer - - if not layer: - return - - # UI-State speichern - set_variable("tab_a_layer_id", layer.id(), scope="project") - - # 🔹 NEU: Verfahrensgebiet explizit registrieren - if self.logic: - self.logic.save_verfahrensgebiet_layer(layer) - def _on_raumfilter_changed(self, value: str) -> None: """Persistieret Raumfilter-Auswahl.""" @@ -296,15 +261,6 @@ class TabA(QWidget): source = self.file_widget.filePath() raumfilter = self._raumfilter_combo.currentText() linkliste = self.linkliste_widget.filePath() - - if self.logic and self.layer_combo: - layer = self.layer_combo.currentLayer() - else: - layer = None - - if layer and layer.name() == "Verfahrensgebiet": - self.logic.save_verfahrensgebiet_layer(layer) - if self.logic: try: self.logic._on_run_pipeline(source, linkliste, raumfilter)