From 14b32807c5693c499fa38f7c8a6a2bba2f3bab25 Mon Sep 17 00:00:00 2001 From: pathmapper Date: Thu, 16 Nov 2023 16:53:40 +0100 Subject: [PATCH 1/3] Considering also new settings logic --- .../verbindungen-im-qgis-browser-loeschen.py | 28 ++++++++++++++++++- 1 file changed, 27 insertions(+), 1 deletion(-) diff --git a/scripts/verbindungen-im-qgis-browser-loeschen.py b/scripts/verbindungen-im-qgis-browser-loeschen.py index f4129a0..7193924 100644 --- a/scripts/verbindungen-im-qgis-browser-loeschen.py +++ b/scripts/verbindungen-im-qgis-browser-loeschen.py @@ -51,7 +51,16 @@ def groupId(self): def shortHelpString(self): return "Mit diesem Tool können Verbindungen im QGIS-Browser gelöscht werden."+'\n'\ +'\n'\ - +"Für gewählte Verbindungstypen werden ALLE selbst hinzugefügten Verbindungen dauerhaft gelöscht!" + + "Für gewählte Verbindungstypen werden ALLE selbst hinzugefügten Verbindungen dauerhaft gelöscht!"\ + + "\n\n"\ + + "Autor: Kreis Viersen"\ + + "\n\n"\ + + "Kontakt: open@kreis-viersen.de"\ + + "\n\n"\ + + "GitHub: https://github.com/kreis-viersen/qgis-models-and-scripts"\ + + "\n\n"\ + + "Version: 2.0" + def shortDescription(self): return "Mit diesem Tool können Verbindungen im QGIS-Browser gelöscht werden." @@ -84,11 +93,28 @@ def processAlgorithm(self, parameters, context, feedback): settings.remove("") settings.endGroup() + if connection in ['wcs', 'wfs', 'wms']: + settings.beginGroup('connections/ows/items/' + connection + '/connections/') + settings.remove("") + settings.endGroup() + else: + settings.beginGroup('connections/' + connection) + settings.remove("") + settings.endGroup() + + # for some connection types some information is stored differently if connectionUpperCase in self.connectionsId2: settings.beginGroup('qgis/' + connectionUpperCase) settings.remove("") settings.endGroup() + settings.beginGroup('qgis/connections/' + connectionUpperCase) + settings.remove("") + settings.endGroup() + if connectionUpperCase in ['WCS', 'WFS', 'WMS']: + settings.beginGroup('connections/ows/items/' + connectionUpperCase + '/connections/') + settings.remove("") + settings.endGroup() outputList.append(self.connections[i]) From 2984764706c266ba71382716272d904ed2dff640 Mon Sep 17 00:00:00 2001 From: pathmapper Date: Thu, 16 Nov 2023 16:56:22 +0100 Subject: [PATCH 2/3] Format with black --- .../verbindungen-im-qgis-browser-loeschen.py | 89 ++++++++++--------- 1 file changed, 48 insertions(+), 41 deletions(-) diff --git a/scripts/verbindungen-im-qgis-browser-loeschen.py b/scripts/verbindungen-im-qgis-browser-loeschen.py index 7193924..33613d3 100644 --- a/scripts/verbindungen-im-qgis-browser-loeschen.py +++ b/scripts/verbindungen-im-qgis-browser-loeschen.py @@ -1,5 +1,3 @@ -# -*- coding: utf-8 -*- - """ *************************************************************************** Verbindungen im QGIS-Browser löschen @@ -21,65 +19,71 @@ *************************************************************************** """ -from qgis.core import (QgsProcessing, - QgsProcessingAlgorithm, - QgsProcessingParameterEnum) +from qgis.core import QgsProcessing, QgsProcessingAlgorithm, QgsProcessingParameterEnum from qgis.PyQt.QtCore import QSettings from qgis.utils import iface + class deleteBrowserConnections(QgsProcessingAlgorithm): - connections = ['ArcGIS-REST-Server','Vector Tiles','WCS','WFS / OGC API - Features','WMS / WMTS','XYZ Tiles'] - connectionsId = ['arcgisfeatureserver','vector-tile','wcs','wfs','wms','xyz'] - connectionsId2 = ['ARCGISFEATURESERVER','WCS','WFS','WMS'] + connections = [ + "ArcGIS-REST-Server", + "Vector Tiles", + "WCS", + "WFS / OGC API - Features", + "WMS / WMTS", + "XYZ Tiles", + ] + connectionsId = ["arcgisfeatureserver", "vector-tile", "wcs", "wfs", "wms", "xyz"] + connectionsId2 = ["ARCGISFEATURESERVER", "WCS", "WFS", "WMS"] def createInstance(self): return deleteBrowserConnections() def name(self): - return 'deleteBrowserConnections' + return "deleteBrowserConnections" def displayName(self): - return 'Verbindungen im QGIS-Browser löschen' + return "Verbindungen im QGIS-Browser löschen" def group(self): return self.groupId() def groupId(self): - return '' + return "" def shortHelpString(self): - return "Mit diesem Tool können Verbindungen im QGIS-Browser gelöscht werden."+'\n'\ - +'\n'\ - + "Für gewählte Verbindungstypen werden ALLE selbst hinzugefügten Verbindungen dauerhaft gelöscht!"\ - + "\n\n"\ - + "Autor: Kreis Viersen"\ - + "\n\n"\ - + "Kontakt: open@kreis-viersen.de"\ - + "\n\n"\ - + "GitHub: https://github.com/kreis-viersen/qgis-models-and-scripts"\ - + "\n\n"\ - + "Version: 2.0" - + return ( + "Mit diesem Tool können Verbindungen im QGIS-Browser gelöscht werden." + + "\n" + + "\n" + + "Für gewählte Verbindungstypen werden ALLE selbst hinzugefügten Verbindungen dauerhaft gelöscht!" + + "\n\n" + + "Autor: Kreis Viersen" + + "\n\n" + + "Kontakt: open@kreis-viersen.de" + + "\n\n" + + "GitHub: https://github.com/kreis-viersen/qgis-models-and-scripts" + + "\n\n" + + "Version: 2.0" + ) def shortDescription(self): return "Mit diesem Tool können Verbindungen im QGIS-Browser gelöscht werden." def initAlgorithm(self, config=None): - self.addParameter( QgsProcessingParameterEnum( - name = 'connectionsToDelete', - description = 'Verbindungen im QGIS-Browser löschen', - options= self.connections, - allowMultiple=True, - usesStaticStrings=False + name="connectionsToDelete", + description="Verbindungen im QGIS-Browser löschen", + options=self.connections, + allowMultiple=True, + usesStaticStrings=False, ) ) def processAlgorithm(self, parameters, context, feedback): - - input = self.parameterAsEnums(parameters,'connectionsToDelete',context) + input = self.parameterAsEnums(parameters, "connectionsToDelete", context) outputList = [] @@ -89,30 +93,33 @@ def processAlgorithm(self, parameters, context, feedback): connection = self.connectionsId[i] connectionUpperCase = connection.upper() - settings.beginGroup('qgis/connections-' + connection) + settings.beginGroup("qgis/connections-" + connection) settings.remove("") settings.endGroup() - if connection in ['wcs', 'wfs', 'wms']: - settings.beginGroup('connections/ows/items/' + connection + '/connections/') + if connection in ["wcs", "wfs", "wms"]: + settings.beginGroup( + "connections/ows/items/" + connection + "/connections/" + ) settings.remove("") settings.endGroup() else: - settings.beginGroup('connections/' + connection) + settings.beginGroup("connections/" + connection) settings.remove("") settings.endGroup() - # for some connection types some information is stored differently if connectionUpperCase in self.connectionsId2: - settings.beginGroup('qgis/' + connectionUpperCase) + settings.beginGroup("qgis/" + connectionUpperCase) settings.remove("") settings.endGroup() - settings.beginGroup('qgis/connections/' + connectionUpperCase) + settings.beginGroup("qgis/connections/" + connectionUpperCase) settings.remove("") settings.endGroup() - if connectionUpperCase in ['WCS', 'WFS', 'WMS']: - settings.beginGroup('connections/ows/items/' + connectionUpperCase + '/connections/') + if connectionUpperCase in ["WCS", "WFS", "WMS"]: + settings.beginGroup( + "connections/ows/items/" + connectionUpperCase + "/connections/" + ) settings.remove("") settings.endGroup() @@ -120,4 +127,4 @@ def processAlgorithm(self, parameters, context, feedback): iface.reloadConnections() - return {'Folgende Verbindungen wurden gelöscht': outputList} \ No newline at end of file + return {"Folgende Verbindungen wurden gelöscht": outputList} From 71bd3e0c36f704cf5963fea17cf0fb9462089ab6 Mon Sep 17 00:00:00 2001 From: pathmapper Date: Mon, 20 Nov 2023 10:08:40 +0100 Subject: [PATCH 3/3] Update verbindungen-im-qgis-browser-loeschen.py --- scripts/verbindungen-im-qgis-browser-loeschen.py | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/scripts/verbindungen-im-qgis-browser-loeschen.py b/scripts/verbindungen-im-qgis-browser-loeschen.py index 33613d3..c98b146 100644 --- a/scripts/verbindungen-im-qgis-browser-loeschen.py +++ b/scripts/verbindungen-im-qgis-browser-loeschen.py @@ -113,15 +113,16 @@ def processAlgorithm(self, parameters, context, feedback): settings.beginGroup("qgis/" + connectionUpperCase) settings.remove("") settings.endGroup() - settings.beginGroup("qgis/connections/" + connectionUpperCase) - settings.remove("") - settings.endGroup() if connectionUpperCase in ["WCS", "WFS", "WMS"]: settings.beginGroup( "connections/ows/items/" + connectionUpperCase + "/connections/" ) settings.remove("") settings.endGroup() + else: + settings.beginGroup("qgis/connections/" + connectionUpperCase) + settings.remove("") + settings.endGroup() outputList.append(self.connections[i])