2025-12-19 14:29:52 +01:00
|
|
|
# sn_basis/functions/ly_existence_wrapper.py
|
|
|
|
|
|
|
|
|
|
def layer_exists(layer) -> bool:
|
2026-01-08 17:13:51 +01:00
|
|
|
"""
|
|
|
|
|
Prüft, ob ein Layer-Objekt existiert (nicht None).
|
|
|
|
|
"""
|
|
|
|
|
return layer is not None
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
def layer_is_valid(layer) -> bool:
|
|
|
|
|
"""
|
|
|
|
|
Prüft, ob ein Layer gültig ist (QGIS-konform).
|
|
|
|
|
"""
|
2025-12-19 14:29:52 +01:00
|
|
|
if layer is None:
|
|
|
|
|
return False
|
|
|
|
|
|
2026-01-08 17:13:51 +01:00
|
|
|
is_valid = getattr(layer, "isValid", None)
|
|
|
|
|
if callable(is_valid):
|
2025-12-19 14:29:52 +01:00
|
|
|
try:
|
2026-01-08 17:13:51 +01:00
|
|
|
return bool(is_valid())
|
2025-12-19 14:29:52 +01:00
|
|
|
except Exception:
|
|
|
|
|
return False
|
|
|
|
|
|
2026-01-08 17:13:51 +01:00
|
|
|
return False
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
def layer_is_usable(layer) -> bool:
|
|
|
|
|
"""
|
|
|
|
|
Prüft, ob ein Layer existiert und gültig ist.
|
|
|
|
|
"""
|
|
|
|
|
return layer_exists(layer) and layer_is_valid(layer)
|