forked from AG_QGIS/Plugin_SN_Basis
Wrappe modular aufgebaut, Tests erfolgreich, Menüleiste und Werzeugleiste werden eingetragen (QT6 und QT5)- (Es fehlen noch Fachplugins, um zu prüfen, ob es auch wirklich in QGIS geht)
This commit is contained in:
@@ -1,9 +1,9 @@
|
||||
"""
|
||||
sn_basis/modules/layerpruefer.py – Prüfung von QGIS-Layern.
|
||||
Verwendet ausschließlich qgisqt_wrapper und gibt pruef_ergebnis zurück.
|
||||
Verwendet ausschließlich Wrapper und gibt pruef_ergebnis zurück.
|
||||
"""
|
||||
|
||||
from sn_basis.functions.qgisqt_wrapper import (
|
||||
from sn_basis.functions import (
|
||||
layer_exists,
|
||||
get_layer_geometry_type,
|
||||
get_layer_feature_count,
|
||||
@@ -15,7 +15,7 @@ from sn_basis.functions.qgisqt_wrapper import (
|
||||
is_layer_editable,
|
||||
)
|
||||
|
||||
from sn_basis.modules.pruef_ergebnis import pruef_ergebnis
|
||||
from sn_basis.modules.pruef_ergebnis import pruef_ergebnis, PruefAktion
|
||||
|
||||
|
||||
class Layerpruefer:
|
||||
@@ -57,8 +57,8 @@ class Layerpruefer:
|
||||
return pruef_ergebnis(
|
||||
ok=False,
|
||||
meldung="Der Layer existiert nicht oder wurde nicht geladen.",
|
||||
aktion="layer_nicht_gefunden", # type: ignore
|
||||
pfad=None,
|
||||
aktion="layer_nicht_gefunden",
|
||||
kontext=None,
|
||||
)
|
||||
|
||||
# -----------------------------------------------------
|
||||
@@ -69,8 +69,8 @@ class Layerpruefer:
|
||||
return pruef_ergebnis(
|
||||
ok=False,
|
||||
meldung="Der Layer ist unsichtbar. Soll er eingeblendet werden?",
|
||||
aktion="layer_unsichtbar", # type: ignore
|
||||
pfad=self.layer, # Layerobjekt wird übergeben
|
||||
aktion="layer_unsichtbar",
|
||||
kontext=self.layer, # Layerobjekt als Kontext
|
||||
)
|
||||
|
||||
# -----------------------------------------------------
|
||||
@@ -80,9 +80,12 @@ class Layerpruefer:
|
||||
if self.erwarteter_layertyp and layertyp != self.erwarteter_layertyp:
|
||||
return pruef_ergebnis(
|
||||
ok=False,
|
||||
meldung=f"Der Layer hat den Typ '{layertyp}', erwartet wurde '{self.erwarteter_layertyp}'.",
|
||||
meldung=(
|
||||
f"Der Layer hat den Typ '{layertyp}', "
|
||||
f"erwartet wurde '{self.erwarteter_layertyp}'."
|
||||
),
|
||||
aktion="falscher_layertyp",
|
||||
pfad=None,
|
||||
kontext=None,
|
||||
)
|
||||
|
||||
# -----------------------------------------------------
|
||||
@@ -92,9 +95,12 @@ class Layerpruefer:
|
||||
if self.erwarteter_geotyp and geotyp != self.erwarteter_geotyp:
|
||||
return pruef_ergebnis(
|
||||
ok=False,
|
||||
meldung=f"Der Layer hat den Geometrietyp '{geotyp}', erwartet wurde '{self.erwarteter_geotyp}'.",
|
||||
meldung=(
|
||||
f"Der Layer hat den Geometrietyp '{geotyp}', "
|
||||
f"erwartet wurde '{self.erwarteter_geotyp}'."
|
||||
),
|
||||
aktion="falscher_geotyp",
|
||||
pfad=None,
|
||||
kontext=None,
|
||||
)
|
||||
|
||||
# -----------------------------------------------------
|
||||
@@ -106,7 +112,7 @@ class Layerpruefer:
|
||||
ok=False,
|
||||
meldung="Der Layer enthält keine Objekte.",
|
||||
aktion="layer_leer",
|
||||
pfad=None,
|
||||
kontext=None,
|
||||
)
|
||||
|
||||
# -----------------------------------------------------
|
||||
@@ -116,9 +122,12 @@ class Layerpruefer:
|
||||
if self.erwartetes_crs and crs != self.erwartetes_crs:
|
||||
return pruef_ergebnis(
|
||||
ok=False,
|
||||
meldung=f"Der Layer hat das CRS '{crs}', erwartet wurde '{self.erwartetes_crs}'.",
|
||||
meldung=(
|
||||
f"Der Layer hat das CRS '{crs}', "
|
||||
f"erwartet wurde '{self.erwartetes_crs}'."
|
||||
),
|
||||
aktion="falsches_crs",
|
||||
pfad=None,
|
||||
kontext=None,
|
||||
)
|
||||
|
||||
# -----------------------------------------------------
|
||||
@@ -130,9 +139,12 @@ class Layerpruefer:
|
||||
if fehlende:
|
||||
return pruef_ergebnis(
|
||||
ok=False,
|
||||
meldung=f"Der Layer enthält nicht alle erforderlichen Felder: {', '.join(fehlende)}",
|
||||
meldung=(
|
||||
"Der Layer enthält nicht alle erforderlichen Felder: "
|
||||
+ ", ".join(fehlende)
|
||||
),
|
||||
aktion="felder_fehlen",
|
||||
pfad=None,
|
||||
kontext=None,
|
||||
)
|
||||
|
||||
# -----------------------------------------------------
|
||||
@@ -144,7 +156,7 @@ class Layerpruefer:
|
||||
ok=False,
|
||||
meldung=f"Die Datenquelle '{quelle}' ist nicht erlaubt.",
|
||||
aktion="datenquelle_unerwartet",
|
||||
pfad=None,
|
||||
kontext=None,
|
||||
)
|
||||
|
||||
# -----------------------------------------------------
|
||||
@@ -156,7 +168,7 @@ class Layerpruefer:
|
||||
ok=False,
|
||||
meldung="Der Layer ist nicht editierbar.",
|
||||
aktion="layer_nicht_editierbar",
|
||||
pfad=None,
|
||||
kontext=None,
|
||||
)
|
||||
|
||||
# -----------------------------------------------------
|
||||
@@ -166,5 +178,5 @@ class Layerpruefer:
|
||||
ok=True,
|
||||
meldung="Layerprüfung erfolgreich.",
|
||||
aktion="ok",
|
||||
pfad=None,
|
||||
kontext=None,
|
||||
)
|
||||
|
||||
Reference in New Issue
Block a user