mirror of
https://github.com/qgis/QGIS.git
synced 2025-02-27 00:33:48 -05:00
[processing] changes to allow custom parameter dialog adapt to new parameter architecture
This commit is contained in:
parent
dfb4cdd34b
commit
c491c01266
@ -40,9 +40,8 @@ class GdalAlgorithmDialog(AlgorithmDialog):
|
||||
AlgorithmDialogBase.__init__(self, alg)
|
||||
|
||||
self.alg = alg
|
||||
|
||||
self.mainWidget = GdalParametersPanel(self, alg)
|
||||
self.setMainWidget()
|
||||
|
||||
self.setMainWidget(GdalParametersPanel(self, alg))
|
||||
|
||||
cornerWidget = QWidget()
|
||||
layout = QVBoxLayout()
|
||||
@ -56,10 +55,6 @@ class GdalAlgorithmDialog(AlgorithmDialog):
|
||||
|
||||
self.mainWidget.parametersHaveChanged()
|
||||
|
||||
QgsMapLayerRegistry.instance().layerWasAdded.connect(self.mainWidget.layerAdded)
|
||||
QgsMapLayerRegistry.instance().layersWillBeRemoved.connect(self.mainWidget.layersWillBeRemoved)
|
||||
|
||||
|
||||
class GdalParametersPanel(ParametersPanel):
|
||||
|
||||
def __init__(self, parent, alg):
|
||||
|
@ -98,8 +98,7 @@ class FieldsMapperParametersDialog(AlgorithmDialog):
|
||||
|
||||
self.alg = alg
|
||||
|
||||
self.mainWidget = FieldsMapperParametersPanel(self, alg)
|
||||
self.setMainWidget()
|
||||
self.setMainWidget(FieldsMapperParametersPanel(self, alg))
|
||||
|
||||
def setParamValue(self, param, widget, alg=None):
|
||||
if isinstance(param, ParameterFieldsMapping):
|
||||
|
@ -69,8 +69,7 @@ class AlgorithmDialog(AlgorithmDialogBase):
|
||||
|
||||
self.alg = alg
|
||||
|
||||
self.mainWidget = ParametersPanel(self, alg)
|
||||
self.setMainWidget()
|
||||
self.setMainWidget(ParametersPanel(self, alg))
|
||||
|
||||
self.cornerWidget = QWidget()
|
||||
layout = QVBoxLayout()
|
||||
@ -82,8 +81,6 @@ class AlgorithmDialog(AlgorithmDialogBase):
|
||||
self.cornerWidget.setLayout(layout)
|
||||
self.tabWidget.setCornerWidget(self.cornerWidget)
|
||||
|
||||
QgsMapLayerRegistry.instance().layerWasAdded.connect(self.mainWidget.layerRegistryChanged)
|
||||
QgsMapLayerRegistry.instance().layersWillBeRemoved.connect(self.mainWidget.layerRegistryChanged)
|
||||
|
||||
def runAsBatch(self):
|
||||
self.close()
|
||||
|
@ -35,7 +35,7 @@ from qgis.PyQt.QtWidgets import QApplication, QDialogButtonBox, QDesktopWidget
|
||||
from qgis.PyQt.QtNetwork import QNetworkRequest, QNetworkReply
|
||||
|
||||
from qgis.utils import iface
|
||||
from qgis.core import QgsNetworkAccessManager
|
||||
from qgis.core import QgsNetworkAccessManager, QgsMapLayerRegistry
|
||||
|
||||
from processing.core.ProcessingConfig import ProcessingConfig
|
||||
|
||||
@ -122,8 +122,15 @@ class AlgorithmDialogBase(BASE, WIDGET):
|
||||
self.settings.setValue("/Processing/dialogBase", self.saveGeometry())
|
||||
super(AlgorithmDialogBase, self).closeEvent(evt)
|
||||
|
||||
def setMainWidget(self):
|
||||
def setMainWidget(self, widget):
|
||||
if self.mainWidget is not None:
|
||||
QgsMapLayerRegistry.instance().layerWasAdded.disconnect(self.mainWidget.layerRegistryChanged)
|
||||
QgsMapLayerRegistry.instance().layersWillBeRemoved.disconnect(self.mainWidget.layerRegistryChanged)
|
||||
self.mainWidget = widget
|
||||
self.tabWidget.widget(0).layout().addWidget(self.mainWidget)
|
||||
QgsMapLayerRegistry.instance().layerWasAdded.connect(self.mainWidget.layerRegistryChanged)
|
||||
QgsMapLayerRegistry.instance().layersWillBeRemoved.connect(self.mainWidget.layerRegistryChanged)
|
||||
|
||||
|
||||
def error(self, msg):
|
||||
QApplication.restoreOverrideCursor()
|
||||
|
@ -56,8 +56,7 @@ class BatchAlgorithmDialog(AlgorithmDialogBase):
|
||||
|
||||
self.setWindowTitle(self.tr('Batch Processing - %s') % self.alg.name)
|
||||
|
||||
self.mainWidget = BatchPanel(self, self.alg)
|
||||
self.setMainWidget()
|
||||
self.setMainWidget(BatchPanel(self, self.alg))
|
||||
|
||||
self.textShortHelp.setVisible(False)
|
||||
|
||||
|
@ -88,6 +88,10 @@ class BatchPanel(BASE, WIDGET):
|
||||
self.fillParameterValues)
|
||||
|
||||
self.initWidgets()
|
||||
|
||||
|
||||
def layerRegistryChanged(self):
|
||||
pass
|
||||
|
||||
def initWidgets(self):
|
||||
# If there are advanced parameters — show corresponding button
|
||||
|
Loading…
x
Reference in New Issue
Block a user