def getWidgetFromParameter(self, param): """ Overload for custom Qwidget(Panel) from Parameter return item : Qwidget(Panel) """ if param.name in ["CHANGES"]: item = TableReplaceInputDialog(self, param) elif param.name in ["MAP_CSV"]: item = FileSelectionCSVTXTPanel(param.isFolder, param.ext) elif isinstance(param, ParameterRaster): # === Overload of Panel for Raster in order to add signal for updating param layers = dataobjects.getRasterLayers() items = [] if param.optional: items.append((self.NOT_SELECTED, None)) self.NONE_SELECTED = self.tr('Chose a layer') items.append((self.NONE_SELECTED, "")) # Not use None for layer in layers: items.append((self.getExtendedLayerName(layer), layer)) item = InputLayerSelectorPanel(items, param) else: # == default Wigdet from Parameter, i.e. use parent method item = ParametersPanel.getWidgetFromParameter(self, param) return item
def getWidgetFromParameter(self, param): """ Overload for custom Qwidget(Panel) from Parameter return item : Qwidget(Panel) """ if param.name in ["METRICS"]: # === Overload ParameterString for special parameter name like FIELDS,..s item = DoubleCmbBoxSelectionPanel(self.parent, self.alg, param.default) elif param.name in ["FILTER", "UNFILTER"]: # === Overload ParameterString for special parameter name like FIELDS,..s item = ValuesSelectionPanel(self.parent, self.alg, param.default, 'INPUT_LAYER_ASC') if param.default: item.setText(unicode(param.default)) elif isinstance(param, ParameterRaster): # === Overload of Panel for Raster in order to add signal for updating param layers = dataobjects.getRasterLayers() items = [] if param.optional: items.append((self.NOT_SELECTED, None)) self.NONE_SELECTED = self.tr('Chose a layer') items.append((self.NONE_SELECTED, "")) # Not use None for layer in layers: items.append((self.getExtendedLayerName(layer), layer)) item = InputLayerSelectorPanel(items, param) else: # == default Wigdet from Parameter, i.e. use parent method item = ParametersPanel.getWidgetFromParameter(self, param) return item
def getWidgetFromParameter(self, param): if isinstance(param, ParameterBands): item = GPFBandsSelectorPanel(param.default, self.parent, self.alg.programKey, param.bandSourceRaster, False) # Sspecial treatment for S1 Toolbox Terrain-Correction to get pixel sizes from SAR image elif isinstance(param, ParameterPixelSize): item = S1TbxPixelSizeInputPanel(param.default, param.isInteger, self.parent, self.alg.programKey) else: item = ParametersPanel.getWidgetFromParameter(self, param) return item
def getWidgetFromParameter(self, param): """ Overload for custom Qwidget(Panel) from Parameter return item : Qwidget(Panel) """ if param.name in ["METRICS"]: # === Overload ParameterString for special parameter name like FIELDS,..s item = ListSelectionPanel(self.parent, self.alg, param.default) else: # == default Wigdet from Parameter, i.e. use parent method item = ParametersPanel.getWidgetFromParameter(self,param) return item
def getWidgetFromParameter(self, param): """ Overload for custom Qwidget(Panel) from Parameter return item : Qwidget(Panel) """ if param.name in ["INPUTS_MATRIX"]: options = dataobjects.getRasterLayers(sorting=False) opts = [self.getExtendedLayerName(opt) for opt in options] item = OrderedMultipleInputPanel(opts) else: # == default Wigdet from Parameter, i.e. use parent method item = ParametersPanel.getWidgetFromParameter(self,param) return item
def getWidgetFromParameter(self, param): if isinstance(param, ParameterFieldsMapping): item = FieldsMappingPanel() if param.parent in self.dependentItems: items = self.dependentItems[param.parent] else: items = [] self.dependentItems[param.parent] = items items.append(param.name) parent = self.alg.getParameterFromName(param.parent) if isinstance(parent, ParameterVector): layers = dataobjects.getVectorLayers(parent.shapetype) else: layers = dataobjects.getTables() if len(layers) > 0: item.setLayer(layers[0]) return item return ParametersPanel.getWidgetFromParameter(self, param)
def getWidgetFromParameter(self, param): if isinstance(param, ParameterFieldsMapping): item = FieldsMappingPanel() if param.parent in self.dependentItems: items = self.dependentItems[param.parent] else: items = [] self.dependentItems[param.parent] = items items.append(param.name) parent = self.alg.getParameterFromName(param.parent) if isinstance(parent, ParameterVector): layers = dataobjects.getVectorLayers(parent.shapetype) else: layers = dataobjects.getTables() if len(layers) > 0: item.setLayer(layers[0]) return item return ParametersPanel.getWidgetFromParameter(self, param)
def getWidgetFromParameter(self, param): """ Overload for custom Qwidget(Panel) from Parameter return item : Qwidget(Panel) """ # if isinstance(param, ParameterString) and param.name in ["VALUES_RANGES"]: # # === Overload ParameterString for special parameter name like VALUES_RANGES,.. # if param.name == "VALUES_RANGES": # item = ValuesSelectionPanel(self.parent, self.alg, param.default) # if param.default: # item.setText(unicode(param.default)) # == default Wigdet from Parameter, i.e. use parent method item = ParametersPanel.getWidgetFromParameter(self, param) return item
def getWidgetFromParameter(self, param): """ Overload for custom Qwidget(Panel) from Parameter return item : Qwidget(Panel) """ if param.name in ["FIELDS"]: # === Overload ParameterString for special parameter name like FIELDS,.. item = CSVFieldSelectionPanel(self.parent, self.alg, param.default) if param.default: item.setText(unicode(param.default)) elif param.name in ["INPUT_FILE_CSV"]: layers = dataobjects.getTables() items = [] if param.optional: items.append((self.NOT_SELECTED, None)) for layer in layers: items.append((layer.name(), layer)) # if already set, put first in list for i, (name, layer) in enumerate(items): if layer and layer.source() == param.value: items.insert(0, items.pop(i)) item = InputLayerSelectorPanel(items, param) # # === Overload ParameterString for special parameter name like FIELDS,.. # item = CSVFieldSelectionPanel(self.parent, self.alg, param.default) # if param.default: # item.setText(unicode(param.default)) # elif isinstance(param, ParameterFile): # # === Overload of Panel for Raster in order to add signal for updating param # item = CustomFileSelectionPanel(param.isFolder, param.ext) else: # == default Wigdet from Parameter, i.e. use parent method item = ParametersPanel.getWidgetFromParameter(self,param) return item
def getWidgetFromParameter(self, param): if param.name in self.customParam.keys(): return self.customParam[param.name] return ParametersPanel.getWidgetFromParameter(self, param)