Basemap-Bereich im Druck-Tab mit lokalen Stilvorlagen (#88)
Einklappbarer Bereich „Basemap“: Auswertebereich (Verfahrensgebiet/Druckbereich), Basemap-Legende beim Erstellen an/aus, „Basemap-Legende aktualisieren“ für bestehende Vorlagen und Stilvorlagen des Basemap-Layers. Stilvorlagen liegen lokal im QGIS-Profil (QML plus Begleitdatei mit Legendenauswahl), mehrere Varianten, eine als Standard markierbar; geladen wird nur auf Knopfdruck nach Rückfrage, fremde Varianten (andere Style-Namen) erst nach zweiter Bestätigung. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
@@ -22,6 +22,7 @@ from sn_basis.functions.qgiscore_wrapper import QgsProject, QgsMapLayerProxyMode
|
||||
from sn_basis.functions.qgisui_wrapper import iface, QgsMapLayerComboBox
|
||||
from sn_basis.functions.variable_wrapper import get_variable, set_variable
|
||||
from sn_basis.modules.Pruefmanager import Pruefmanager
|
||||
from sn_basis.ui.widgets.basemap_bereich import BasemapBereich
|
||||
from sn_basis.modules.DataGrabber import DataGrabber
|
||||
from sn_basis.modules.print_logic import (
|
||||
PrintLogic,
|
||||
@@ -257,6 +258,10 @@ class PrintTab(QWidget):
|
||||
self._atlas_content = atlas_content
|
||||
main_layout.addWidget(atlas_content)
|
||||
|
||||
# Basemap-Bereich (einklappbar): Basemap-Legende und Stilvorlagen (Basis #88)
|
||||
self._basemap_bereich = BasemapBereich(self)
|
||||
main_layout.addWidget(self._basemap_bereich)
|
||||
|
||||
btn_vorlage_erstellen = QPushButton("Vorlage erstellen", self)
|
||||
btn_vorlage_erstellen.clicked.connect(self._on_vorlage_erstellen)
|
||||
self._btn_vorlage_erstellen = btn_vorlage_erstellen
|
||||
@@ -445,6 +450,13 @@ class PrintTab(QWidget):
|
||||
formfaktor=self._endlosrolle_cb.isChecked() if self._endlosrolle_cb else False,
|
||||
druckbereich_auswahl=self._druckbereich_combo.currentText() if self._druckbereich_combo else DRUCKBEREICH_VERFAHRENSGEBIET,
|
||||
)
|
||||
self._basemap_bereich_aktualisieren()
|
||||
|
||||
def _basemap_bereich_aktualisieren(self) -> None:
|
||||
"""Liest den Basemap-Bereich neu ein (neue Vorlage, Projektwechsel)."""
|
||||
bereich = getattr(self, "_basemap_bereich", None)
|
||||
if bereich is not None:
|
||||
bereich.aktualisieren()
|
||||
|
||||
def _disconnect_project_signals(self) -> None:
|
||||
try:
|
||||
@@ -494,6 +506,7 @@ class PrintTab(QWidget):
|
||||
self._theme_signal_connected = False
|
||||
self._connect_theme_collection_signals()
|
||||
self._restore_state()
|
||||
self._basemap_bereich_aktualisieren()
|
||||
|
||||
def _toggle_atlas(self, checked: bool) -> None:
|
||||
if self._atlas_button:
|
||||
|
||||
Reference in New Issue
Block a user