mirror of
				https://github.com/qgis/QGIS.git
				synced 2025-11-04 00:04:25 -05:00 
			
		
		
		
	[processing] Fix exception when showing advanced parameters for alg in modeler
This commit is contained in:
		
							parent
							
								
									c8abd40250
								
							
						
					
					
						commit
						90dbf72e98
					
				@ -64,6 +64,7 @@ from processing.gui.wrappers import WidgetWrapperFactory
 | 
			
		||||
from processing.gui.wrappers import InvalidParameterValue
 | 
			
		||||
from processing.gui.MultipleInputPanel import MultipleInputPanel
 | 
			
		||||
from processing.tools.dataobjects import createContext
 | 
			
		||||
from processing.gui.wrappers import WidgetWrapper
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
class ModelerParametersDialog(QDialog):
 | 
			
		||||
@ -78,6 +79,8 @@ class ModelerParametersDialog(QDialog):
 | 
			
		||||
        self.configuration = configuration
 | 
			
		||||
        self.context = createContext()
 | 
			
		||||
 | 
			
		||||
        self.widget_labels = {}
 | 
			
		||||
 | 
			
		||||
        self.setupUi()
 | 
			
		||||
        self.params = None
 | 
			
		||||
        settings = QgsSettings()
 | 
			
		||||
@ -159,6 +162,7 @@ class ModelerParametersDialog(QDialog):
 | 
			
		||||
                    tooltip = param.description()
 | 
			
		||||
                    widget.setToolTip(tooltip)
 | 
			
		||||
                    label = wrapper.label
 | 
			
		||||
                self.widget_labels[param.name()] = label
 | 
			
		||||
 | 
			
		||||
                if param.flags() & QgsProcessingParameterDefinition.FlagAdvanced:
 | 
			
		||||
                    label.setVisible(self.showAdvanced)
 | 
			
		||||
@ -231,8 +235,13 @@ class ModelerParametersDialog(QDialog):
 | 
			
		||||
            self.advancedButton.setText(self.tr('Show advanced parameters'))
 | 
			
		||||
        for param in self._alg.parameterDefinitions():
 | 
			
		||||
            if param.flags() & QgsProcessingParameterDefinition.FlagAdvanced:
 | 
			
		||||
                self.wrappers[param.name()].widget.setVisible(self.showAdvanced)
 | 
			
		||||
                self.wrappers[param.name()].label.setVisible(self.showAdvanced)
 | 
			
		||||
                wrapper = self.wrappers[param.name()]
 | 
			
		||||
                if issubclass(wrapper.__class__, QgsProcessingModelerParameterWidget):
 | 
			
		||||
                    wrapper.setVisible(self.showAdvanced)
 | 
			
		||||
                else:
 | 
			
		||||
                    wrapper.widget.setVisible(self.showAdvanced)
 | 
			
		||||
 | 
			
		||||
                self.widget_labels[param.name()].setVisible(self.showAdvanced)
 | 
			
		||||
 | 
			
		||||
    def getAvailableValuesOfType(self, paramType, outTypes=[], dataTypes=[]):
 | 
			
		||||
        # upgrade paramType to list
 | 
			
		||||
 | 
			
		||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user