forked from AG_QGIS/Plugin_SN_Plan41
Aufgeräumt.
This commit is contained in:
24
main.py
24
main.py
@@ -1,32 +1,36 @@
|
|||||||
from qgis.utils import plugins
|
from qgis.utils import plugins
|
||||||
from qgis.PyQt.QtGui import QIcon
|
|
||||||
from sn_basis.ui.navigation import Navigation
|
|
||||||
from sn_basis.ui.dockmanager import DockManager
|
from sn_basis.ui.dockmanager import DockManager
|
||||||
from .ui.dockwidget import DockWidget
|
from .ui.dockwidget import DockWidget
|
||||||
|
|
||||||
|
|
||||||
class Plan41:
|
class Plan41:
|
||||||
def __init__(self, iface):
|
def __init__(self, iface):
|
||||||
self.iface = iface
|
self.iface = iface
|
||||||
self.ui = None
|
self.action = None
|
||||||
self.dockwidget = None
|
self.dockwidget = None
|
||||||
|
|
||||||
|
# Namen automatisch aus Klassennamen ableiten
|
||||||
|
self.plugin_name = self.__class__.__name__
|
||||||
|
self.dock_name = f"sn_dock_{self.plugin_name.lower()}"
|
||||||
|
|
||||||
def initGui(self):
|
def initGui(self):
|
||||||
# Basis-Plugin muss geladen sein!
|
|
||||||
basis = plugins.get("sn_basis")
|
basis = plugins.get("sn_basis")
|
||||||
if basis and basis.ui:
|
if basis and basis.ui:
|
||||||
self.action = basis.ui.add_action("Plan41", self.run, tooltip="Öffnet Plan41", priority=20)
|
self.action = basis.ui.add_action(
|
||||||
|
self.plugin_name,
|
||||||
|
self.run,
|
||||||
|
tooltip=f"Öffnet {self.plugin_name}",
|
||||||
|
priority=20
|
||||||
|
)
|
||||||
basis.ui.finalize_menu_and_toolbar()
|
basis.ui.finalize_menu_and_toolbar()
|
||||||
|
|
||||||
def unload(self):
|
def unload(self):
|
||||||
if self.ui:
|
|
||||||
self.ui.remove_all()
|
|
||||||
if self.dockwidget:
|
if self.dockwidget:
|
||||||
self.iface.removeDockWidget(self.dockwidget)
|
self.iface.removeDockWidget(self.dockwidget)
|
||||||
self.dockwidget.deleteLater()
|
self.dockwidget.deleteLater()
|
||||||
self.dockwidget = None
|
self.dockwidget = None
|
||||||
|
|
||||||
def run(self):
|
def run(self):
|
||||||
from sn_plan41.ui.dockwidget import DockWidget
|
self.dockwidget = DockWidget(self.iface.mainWindow(), subtitle=self.plugin_name)
|
||||||
self.dockwidget = DockWidget(self.iface.mainWindow())
|
self.dockwidget.setObjectName(self.dock_name)
|
||||||
self.dockwidget.setObjectName("sn_dock_plan41")
|
|
||||||
DockManager.show(self.dockwidget)
|
DockManager.show(self.dockwidget)
|
||||||
|
|||||||
@@ -1,24 +1,7 @@
|
|||||||
from qgis.PyQt.QtWidgets import QDockWidget, QTabWidget, QWidget, QVBoxLayout, QLabel
|
|
||||||
from sn_basis.ui.tabs.settings_tab import SettingsTab
|
from sn_basis.ui.tabs.settings_tab import SettingsTab
|
||||||
from sn_plan41.ui.tabs.tab_a import TabA
|
from sn_plan41.ui.tabs.tab_a import TabA
|
||||||
from sn_plan41.ui.tabs.tab_b import TabB
|
from sn_plan41.ui.tabs.tab_b import TabB
|
||||||
|
from sn_basis.ui.base_dockwidget import BaseDockWidget
|
||||||
|
|
||||||
class DockWidget(QDockWidget):
|
class DockWidget(BaseDockWidget):
|
||||||
def __init__(self, parent=None):
|
tabs = [TabA, TabB, SettingsTab]
|
||||||
super().__init__(parent)
|
|
||||||
self.setWindowTitle("LNO Sachsen | Plan41")
|
|
||||||
|
|
||||||
# TabWidget erzeugen
|
|
||||||
tabs = QTabWidget()
|
|
||||||
|
|
||||||
# Tab A
|
|
||||||
tabs.addTab(TabA(), "Tab A")
|
|
||||||
|
|
||||||
# Tab B
|
|
||||||
tabs.addTab(TabB(), "Tab B")
|
|
||||||
|
|
||||||
# Gemeinsamer Tab
|
|
||||||
tabs.addTab(SettingsTab(), "Projekteigenschaften")
|
|
||||||
|
|
||||||
# TabWidget ins Dock setzen
|
|
||||||
self.setWidget(tabs)
|
|
||||||
|
|||||||
@@ -1,6 +1,8 @@
|
|||||||
from qgis.PyQt.QtWidgets import QWidget, QVBoxLayout, QLabel, QLineEdit
|
from qgis.PyQt.QtWidgets import QWidget, QVBoxLayout, QLabel, QLineEdit
|
||||||
|
|
||||||
class TabA(QWidget):
|
class TabA(QWidget):
|
||||||
|
tab_title = "Tab A"
|
||||||
|
|
||||||
def __init__(self, parent=None):
|
def __init__(self, parent=None):
|
||||||
super().__init__(parent)
|
super().__init__(parent)
|
||||||
layout = QVBoxLayout()
|
layout = QVBoxLayout()
|
||||||
|
|||||||
@@ -1,6 +1,8 @@
|
|||||||
from qgis.PyQt.QtWidgets import QWidget, QVBoxLayout, QLabel, QTextEdit
|
from qgis.PyQt.QtWidgets import QWidget, QVBoxLayout, QLabel, QTextEdit
|
||||||
|
|
||||||
class TabB(QWidget):
|
class TabB(QWidget):
|
||||||
|
tab_title = "Tab B"
|
||||||
|
|
||||||
def __init__(self, parent=None):
|
def __init__(self, parent=None):
|
||||||
super().__init__(parent)
|
super().__init__(parent)
|
||||||
layout = QVBoxLayout()
|
layout = QVBoxLayout()
|
||||||
|
|||||||
Reference in New Issue
Block a user