Commit Graph
35 Commits
Author SHA1 Message Date
Michael Otto bc9bb20597 Fix: DataGrabber lädt ohne sn_plan41 (ModuleNotFoundError beim Laden von sn_verfahrensgebiet)
DataGrabber.py hatte einen harten Top-Level-Import von
sn_plan41.modules.listenauswerter.Listenauswerter, obwohl DataGrabber sich
selbst als generischer, plugin-übergreifender Orchestrator dokumentiert.
sn_verfahrensgebiet importiert DataGrabber und instanziiert ihn beim
Plugin-Start – dadurch schlug classFactory() fehl, sobald sn_plan41 nicht
installiert war (ModuleNotFoundError: No module named 'sn_plan41').

Import in die einzige Stelle verschoben, die ihn tatsächlich braucht
(_process_excel_source, nur für Excel-Quellen relevant), mit klarer
Fehlermeldung falls doch mal ohne sn_plan41 eine Excel-Quelle verarbeitet
werden soll.

Fixes sn_verfahrensgebiet#35
2026-08-31 09:52:48 +02:00
Michael Otto 8545152317 Merge branch 'unstable' into aus-zip-laden
Konflikt in changelog.txt (beide Seiten hatten oben neue, unabhängige
Einträge ergänzt) von Hand aufgelöst – beide Blöcke bleiben erhalten.
2026-08-31 08:52:24 +02:00
Michael OttoandClaude Sonnet 5 8cea9022f0 Länderkennung-Mapping portiert (Voraussetzung für Beteiligungsprüfung)
Portiert aus origin/unstable: sn_basis/functions/laenderkennung.py bildet
Plugin-Präfix -> zweistellige ALKIS-Länderkennung ab (aktuell nur Sachsen).
Wird von der neuen Beteiligungsprüfung in sn_verfahrensgebiet für die
Flurstückskennzeichen-Bildung genutzt.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-08-31 06:33:16 +02:00
Michael OttoandClaude Sonnet 5 1b5a715c70 Landkreisliste als JSON auslagern; Verfahrensgebiet-Dialoge nach sn_verfahrensgebiet verschoben
- Landkreisliste liegt jetzt in data/landkreise.json statt hartcodiert in
  landkreise.py, damit sie ohne Codeänderung pflegbar und auch aus anderen
  Modulen nutzbar ist (Sentinel ALLE_LANDKREISE für "Alle Landkreise").
- ask_bror_kombinationen, ask_landkreis_objekte und ask_landkreis_auswahl aus
  dialog_wrapper.py entfernt: sie sind sn_verfahrensgebiet-spezifisches
  Vokabular (BROR/VKZ/Landkreis-Fallback) und gehören nicht in den
  domänenfreien sn_basis-Hub. Sie leben jetzt in
  sn_verfahrensgebiet/functions/verfahrensgebiet_dialoge.py.
- qt_wrapper.py: QTableWidget/QTableWidgetItem/QTableWidgetSelectionRange,
  SelectRows, NoEditTriggers, AscendingOrder ergänzt (für die neue
  Tabellen-Auswahl im Landkreis-Objektdialog).

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-08-28 13:54:43 +02:00
Michael Otto 749d6d6f52 Landkreis-Dropdown, BROR-Mehrfachauswahl-Dialog und UX-Fixes
- Landkreis-Feld in den Projekteigenschaften als Dropdown statt Freitext,
  Landkreiskennzahl zusätzlich als eigene Projektvariable verfügbar.
- ask_bror_kombination(en) auf echte Mehrfachauswahl umgestellt, inkl.
  Titel, Wappen-Icon, kompakter/anpassbarer Größe und Scrollbar-Fix.
- Neuer Dialog ask_landkreis_objekte für die landkreisweite Objektsuche
  (Mehrfachauswahl, "Alle auswählen", "Nur laden ohne weiteren Ablauf").
- qt_wrapper um QDialog/QDialogButtonBox/QListWidget/QListWidgetItem/
  QAbstractItemView/QIcon sowie QComboBox-userData/currentData erweitert.
2026-08-27 15:13:43 +02:00
Michael Otto 68ce088192 auf neuen Release-Workflow umgestellt 2026-07-02 11:35:01 +02:00
Michael Otto 9dc15b5b92 auf neuen Release-Workflow umgestellt
Release Plugin / release (push) Successful in 5s
2026-07-02 11:02:04 +02:00
Michael Otto f0944aab99 fix: Access Violation beim Beenden von QGIS in PrintTab beheben
QgsProject-Signale (readProject, newProjectCreated, cleared) wurden beim
Shutdown von QGIS nicht getrennt. Das Signal 'cleared' wurde emittiert
waehrend QgsProject sich selbst zerstoerte, was _on_project_changed
triggerte und zu einem Zugriff auf bereits destrukturierte Objekte fuehrte.

Loesung: aboutToQuit-Signal verbunden mit neuer _cleanup_signals()-Methode,
die alle QGIS-Signalverbindungen sauber trennt, bevor QGIS Kernobjekte
zerstoert.
2026-04-17 14:06:28 +02:00
Michael Otto d3971df28c Umstellung auf neuen Release Workflow 2026-03-25 08:38:39 +01:00
Michael Otto 24c2137dc2 Auf neuen Release Workflow umgestellt
Release Plugin / release (push) Successful in 3s
2026-03-18 15:13:37 +01:00
Michael Otto c0c0387b1d Änderungen an plugin.cfg
Release Plugin / release (push) Successful in 7s
2026-03-13 13:58:33 +01:00
Michael Otto 663ca770a1 Schritt zu 'plugin.cfg einlesen' umbenannt und Schleife angepasst, um letzte Zeile ohne Newline zu lesen 2026-03-13 12:08:32 +01:00
Michael Otto 04319b6f7b plugin.info->plugin.cfg
Release Plugin / release (push) Failing after 5s
2026-03-13 12:06:34 +01:00
Michael Otto 1c70d62739 plugin.info einlesen: echo eingefügt
Release Plugin / release (push) Has been cancelled
2026-03-13 12:04:32 +01:00
Michael Otto 3971bd3408 plugin.info einlesen angepasst 2026-03-13 12:02:39 +01:00
Michael Otto fa04fc80e3 ZIP Erstellung auf Original zurückgesetzt
Release Plugin / release (push) Has been cancelled
2026-03-13 11:30:11 +01:00
Michael Otto 04bdfbe9d8 Fallback für ZIP_FOLDER hinzugefügt: Wenn leer, auf sn_basis setzen 2026-03-13 11:27:18 +01:00
Michael Otto b6b791e5bd Behebung des Parsens von plugin.info: Robuste Schleife für Outputs
Release Plugin / release (push) Failing after 5s
2026-03-13 11:24:36 +01:00
Michael Otto 82be564c29 Verbesserung des ZIP-Erstellungsprozesses: Debugging hinzugefügt und Warnungen bei /dev-Dateien durch Behandlung symbolischer Links behoben
Release Plugin / release (push) Failing after 5s
2026-03-13 11:21:38 +01:00
Michael Otto f42260b66c ZIP Erstellung geändert um im Runner genauer zu sehen wo es zu Problemen gekommen ist
Release Plugin / release (push) Has been cancelled
2026-03-13 11:16:46 +01:00
Michael Otto 327c25388f metadata.txt gelöscht, changelog.txt eingefügt
Release Plugin / release (push) Has been cancelled
2026-03-13 11:06:58 +01:00
Michael Otto c6c9613120 Update plugin.info based on metadata.txt
Release Plugin / release (push) Failing after 3s
2026-03-13 08:39:24 +01:00
Michael Otto 00f800b1e6 metadata.txt gelöscht, plugin.info eingefügt, workflow hinzugefügt 2026-03-05 16:02:03 +01:00
Michael Otto 1afe7f2bf6 Funktionen von ligic nach functions verschoben 2025-11-20 12:18:38 +01:00
Michael Otto 4336a70cff Ablauf optimiert, Styles laden implementiert 2025-11-18 16:10:40 +01:00
Michael Otto a12fdae45e 25.11.4 2025-11-18 12:45:41 +01:00
Michael Otto 2ad36c812f Laden und Speichern der Variablen 2025-11-18 12:17:15 +01:00
Michael Otto 7f62696b51 Fehler beim Entladen / Update behoben. 2025-11-17 12:48:16 +01:00
Michael Otto 617ee30650 Menü und Symbolleiste überarbeitet. 2025-11-17 12:23:04 +01:00
Michael Otto f305eaeff8 Aufgeräumt und Widget fixiert. 2025-11-17 11:29:04 +01:00
Michael Otto a302ce2228 Refactoring Aufgrund Fehler beim Beenden. 2025-11-17 10:05:42 +01:00
Michael Otto c36dc8cae9 Anpassung an Qt6, Fehler beim Beenden behoben 2025-11-13 09:32:36 +01:00
Michael Otto dcb298cb4a Navigation hinzugefügt 2025-10-09 13:56:13 +02:00
Michael Otto fcffd7ba61 Dockmanager integriert 2025-10-09 12:51:36 +02:00
Michael Otto 635a3ba122 erste Version der Oberfläche zum Speichern der Variablen 2025-10-09 10:16:54 +02:00