def getValue(self): value = self.leText.text() values = [] #for param in self.modelParametersDialog.model.parameterDefinitions(): # if isinstance(param, QgsProcessingParameterNumber): # if "@" + param.name() in value: # values.append(ValueFromInput(param.name())) #for alg in list(self.modelParametersDialog.model.algs.values()): # for out in alg.algorithm.outputDefinitions(): # if isinstance(out, QgsProcessingOutputNumber) and "@%s_%s" % (alg.modeler_name, out.name) in value: # values.append(ValueFromOutput(alg.modeler_name, out.name())) for param in self.modelParametersDialog.model.parameterDefinitions(): if isinstance(param, QgsProcessingParameterNumber): if "@" + param.name() == value: return QgsProcessingModelAlgorithm.ChildParameterSource.fromModelParameter( param.name()) for alg in list( self.modelParametersDialog.model.childAlgorithms().values()): for out in alg.algorithm().outputDefinitions(): if isinstance(out, QgsProcessingOutputNumber) and "@%s_%s" % ( alg.childId(), out.name()) == value: return QgsProcessingModelAlgorithm.ChildParameterSource.fromChildOutput( alg.childId(), out.outputName()) if values: return CompoundValue(values, value) else: return value
def getValue(self): value = self.leText.text() values = [] for param in self.modelParametersDialog.model.parameters: if isinstance(param, ParameterNumber): if "@" + param.name in value: values.append(ValueFromInput(param.name)) for alg in list(self.modelParametersDialog.model.algs.values()): for out in alg.algorithm.outputs: if isinstance(out, OutputNumber) and "@%s_%s" % (alg.name(), out.name) in value: values.append(ValueFromOutput(alg.name(), out.name)) if values: return CompoundValue(values, value) else: return value