From b24a8cbcdf0516bb43488a6a882ead0707d18e63 Mon Sep 17 00:00:00 2001 From: viperminiq Date: Mon, 9 Jun 2025 19:18:43 +0200 Subject: [PATCH 1/7] load GdalAlgorithmDialog containing console call widget instead of basic AlgorithmDialog --- python/plugins/processing/gui/BatchAlgorithmDialog.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/python/plugins/processing/gui/BatchAlgorithmDialog.py b/python/plugins/processing/gui/BatchAlgorithmDialog.py index 42b66630a67..e82b2ffe218 100644 --- a/python/plugins/processing/gui/BatchAlgorithmDialog.py +++ b/python/plugins/processing/gui/BatchAlgorithmDialog.py @@ -57,9 +57,9 @@ class BatchAlgorithmDialog(QgsProcessingBatchAlgorithmDialogBase): def runAsSingle(self): self.close() - from processing.gui.AlgorithmDialog import AlgorithmDialog + from processing.algs.gdal.GdalAlgorithmDialog import GdalAlgorithmDialog - dlg = AlgorithmDialog(self.algorithm().create(), parent=iface.mainWindow()) + dlg = GdalAlgorithmDialog(self.algorithm().create(), parent=iface.mainWindow()) dlg.show() dlg.exec() From 526b8049549fed4d31c14388d2afc9b94f66c920 Mon Sep 17 00:00:00 2001 From: viperminiq Date: Mon, 9 Jun 2025 20:22:08 +0200 Subject: [PATCH 2/7] add decision gdal or native dialog --- python/plugins/processing/gui/BatchAlgorithmDialog.py | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/python/plugins/processing/gui/BatchAlgorithmDialog.py b/python/plugins/processing/gui/BatchAlgorithmDialog.py index e82b2ffe218..017475c6b65 100644 --- a/python/plugins/processing/gui/BatchAlgorithmDialog.py +++ b/python/plugins/processing/gui/BatchAlgorithmDialog.py @@ -57,9 +57,13 @@ class BatchAlgorithmDialog(QgsProcessingBatchAlgorithmDialogBase): def runAsSingle(self): self.close() - from processing.algs.gdal.GdalAlgorithmDialog import GdalAlgorithmDialog + if self.algorithm().id().startswith("gdal"): + from processing.algs.gdal.GdalAlgorithmDialog import GdalAlgorithmDialog + dlg = GdalAlgorithmDialog(self.algorithm().create(), parent=iface.mainWindow()) + else: + from processing.gui.AlgorithmDialog import AlgorithmDialog + dlg = AlgorithmDialog(self.algorithm().create(), parent=iface.mainWindow()) - dlg = GdalAlgorithmDialog(self.algorithm().create(), parent=iface.mainWindow()) dlg.show() dlg.exec() From 003f0906214b12392503c8e74e0d891a9dd61485 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Mon, 9 Jun 2025 18:23:12 +0000 Subject: [PATCH 3/7] auto-fix pre-commit issues --- python/plugins/processing/gui/BatchAlgorithmDialog.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/python/plugins/processing/gui/BatchAlgorithmDialog.py b/python/plugins/processing/gui/BatchAlgorithmDialog.py index 017475c6b65..ad20aa6b73a 100644 --- a/python/plugins/processing/gui/BatchAlgorithmDialog.py +++ b/python/plugins/processing/gui/BatchAlgorithmDialog.py @@ -59,9 +59,13 @@ class BatchAlgorithmDialog(QgsProcessingBatchAlgorithmDialogBase): if self.algorithm().id().startswith("gdal"): from processing.algs.gdal.GdalAlgorithmDialog import GdalAlgorithmDialog - dlg = GdalAlgorithmDialog(self.algorithm().create(), parent=iface.mainWindow()) + + dlg = GdalAlgorithmDialog( + self.algorithm().create(), parent=iface.mainWindow() + ) else: from processing.gui.AlgorithmDialog import AlgorithmDialog + dlg = AlgorithmDialog(self.algorithm().create(), parent=iface.mainWindow()) dlg.show() From 8cce933a7f71f1adaefae6a1f1a7c0c08afad63e Mon Sep 17 00:00:00 2001 From: viperminiq Date: Tue, 17 Jun 2025 06:45:45 +0200 Subject: [PATCH 4/7] use better logic when opening dialogs --- python/plugins/processing/gui/BatchAlgorithmDialog.py | 11 +++-------- 1 file changed, 3 insertions(+), 8 deletions(-) diff --git a/python/plugins/processing/gui/BatchAlgorithmDialog.py b/python/plugins/processing/gui/BatchAlgorithmDialog.py index ad20aa6b73a..7dbe0ea3b9c 100644 --- a/python/plugins/processing/gui/BatchAlgorithmDialog.py +++ b/python/plugins/processing/gui/BatchAlgorithmDialog.py @@ -57,15 +57,10 @@ class BatchAlgorithmDialog(QgsProcessingBatchAlgorithmDialogBase): def runAsSingle(self): self.close() - if self.algorithm().id().startswith("gdal"): - from processing.algs.gdal.GdalAlgorithmDialog import GdalAlgorithmDialog - - dlg = GdalAlgorithmDialog( - self.algorithm().create(), parent=iface.mainWindow() - ) - else: + dlg = self.algorithm().create().createCustomParametersWidget(parent=iface.mainWindow()) + if not dlg: from processing.gui.AlgorithmDialog import AlgorithmDialog - + dlg = AlgorithmDialog(self.algorithm().create(), parent=iface.mainWindow()) dlg.show() From b38325bb5209c88cd21790bf3752111e0d78a280 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Tue, 17 Jun 2025 04:46:53 +0000 Subject: [PATCH 5/7] auto-fix pre-commit issues --- python/plugins/processing/gui/BatchAlgorithmDialog.py | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/python/plugins/processing/gui/BatchAlgorithmDialog.py b/python/plugins/processing/gui/BatchAlgorithmDialog.py index 7dbe0ea3b9c..f3c221caa23 100644 --- a/python/plugins/processing/gui/BatchAlgorithmDialog.py +++ b/python/plugins/processing/gui/BatchAlgorithmDialog.py @@ -57,10 +57,14 @@ class BatchAlgorithmDialog(QgsProcessingBatchAlgorithmDialogBase): def runAsSingle(self): self.close() - dlg = self.algorithm().create().createCustomParametersWidget(parent=iface.mainWindow()) + dlg = ( + self.algorithm() + .create() + .createCustomParametersWidget(parent=iface.mainWindow()) + ) if not dlg: from processing.gui.AlgorithmDialog import AlgorithmDialog - + dlg = AlgorithmDialog(self.algorithm().create(), parent=iface.mainWindow()) dlg.show() From 382e65e6ac5abaf5d8b7bd06054d6edd80939830 Mon Sep 17 00:00:00 2001 From: Viper MiniQ Date: Tue, 17 Jun 2025 07:19:19 +0200 Subject: [PATCH 6/7] create algorithm instance before making a decision Co-authored-by: Nyall Dawson --- python/plugins/processing/gui/BatchAlgorithmDialog.py | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/python/plugins/processing/gui/BatchAlgorithmDialog.py b/python/plugins/processing/gui/BatchAlgorithmDialog.py index f3c221caa23..1d1bea3ec8e 100644 --- a/python/plugins/processing/gui/BatchAlgorithmDialog.py +++ b/python/plugins/processing/gui/BatchAlgorithmDialog.py @@ -57,15 +57,14 @@ class BatchAlgorithmDialog(QgsProcessingBatchAlgorithmDialogBase): def runAsSingle(self): self.close() + alg_instance = self.algorithm().create() dlg = ( - self.algorithm() - .create() - .createCustomParametersWidget(parent=iface.mainWindow()) + alg_instance.createCustomParametersWidget(parent=iface.mainWindow()) ) if not dlg: from processing.gui.AlgorithmDialog import AlgorithmDialog - dlg = AlgorithmDialog(self.algorithm().create(), parent=iface.mainWindow()) + dlg = AlgorithmDialog(alg_instance, parent=iface.mainWindow()) dlg.show() dlg.exec() From 3b9f66dc8478777e791b5056260c355c0ba9dff3 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Tue, 17 Jun 2025 05:20:12 +0000 Subject: [PATCH 7/7] auto-fix pre-commit issues --- python/plugins/processing/gui/BatchAlgorithmDialog.py | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/python/plugins/processing/gui/BatchAlgorithmDialog.py b/python/plugins/processing/gui/BatchAlgorithmDialog.py index 1d1bea3ec8e..bf8eed27b07 100644 --- a/python/plugins/processing/gui/BatchAlgorithmDialog.py +++ b/python/plugins/processing/gui/BatchAlgorithmDialog.py @@ -58,9 +58,7 @@ class BatchAlgorithmDialog(QgsProcessingBatchAlgorithmDialogBase): self.close() alg_instance = self.algorithm().create() - dlg = ( - alg_instance.createCustomParametersWidget(parent=iface.mainWindow()) - ) + dlg = alg_instance.createCustomParametersWidget(parent=iface.mainWindow()) if not dlg: from processing.gui.AlgorithmDialog import AlgorithmDialog