mirror of
https://github.com/qgis/QGIS.git
synced 2025-04-15 00:04:00 -04:00
[Processing] Update gui
This commit is contained in:
parent
9da4a76e6f
commit
cc2fb2efda
@ -48,7 +48,7 @@ WIDGET, BASE = uic.loadUiType(
|
||||
|
||||
class ExtentSelectionPanel(BASE, WIDGET):
|
||||
|
||||
def __init__(self, dialog, alg, default):
|
||||
def __init__(self, dialog, alg, default=None):
|
||||
super(ExtentSelectionPanel, self).__init__(None)
|
||||
self.setupUi(self)
|
||||
|
||||
@ -66,6 +66,18 @@ class ExtentSelectionPanel(BASE, WIDGET):
|
||||
self.tool = RectangleMapTool(canvas)
|
||||
self.tool.rectangleCreated.connect(self.updateExtent)
|
||||
|
||||
if default:
|
||||
tokens = unicode(default).split(',')
|
||||
if len(tokens) == 4:
|
||||
try:
|
||||
float(tokens[0])
|
||||
float(tokens[1])
|
||||
float(tokens[2])
|
||||
float(tokens[3])
|
||||
self.leText.setText(unicode(default))
|
||||
except:
|
||||
pass
|
||||
|
||||
def canUseAutoExtent(self):
|
||||
for param in self.params:
|
||||
if isinstance(param, (ParameterRaster, ParameterVector)):
|
||||
|
@ -82,7 +82,7 @@ class GeometryPredicateSelectionPanel(BASE, WIDGET):
|
||||
|
||||
def updatePredicates(self):
|
||||
if (isinstance(self.leftLayer, QgsVectorLayer)
|
||||
and isinstance(self.rightLayer, QgsVectorLayer)):
|
||||
and isinstance(self.rightLayer, QgsVectorLayer)):
|
||||
leftType = self.leftLayer.geometryType()
|
||||
rightType = self.rightLayer.geometryType()
|
||||
unusablePredicates = self.unusablePredicates[leftType][rightType]
|
||||
@ -115,7 +115,8 @@ class GeometryPredicateSelectionPanel(BASE, WIDGET):
|
||||
return values
|
||||
|
||||
def setValue(self, values):
|
||||
for predicate in ParameterGeometryPredicate.predicates:
|
||||
widget = self.getWidget(predicate)
|
||||
widget.setChecked(predicate in values)
|
||||
if values:
|
||||
for predicate in ParameterGeometryPredicate.predicates:
|
||||
widget = self.getWidget(predicate)
|
||||
widget.setChecked(predicate in values)
|
||||
return True
|
||||
|
@ -60,8 +60,16 @@ class NumberInputPanel(BASE, WIDGET):
|
||||
else:
|
||||
self.spnValue.setMinimum(-99999999)
|
||||
|
||||
self.spnValue.setValue(float(number))
|
||||
self.spnValue.setClearValue(float(number))
|
||||
#Set default value
|
||||
if number == 0 or number:
|
||||
self.spnValue.setValue(float(number))
|
||||
self.spnValue.setClearValue(float(number))
|
||||
elif minimum == 0 or minimum:
|
||||
self.spnValue.setValue(float(minimum))
|
||||
self.spnValue.setClearValue(float(minimum))
|
||||
else:
|
||||
self.spnValue.setValue(0)
|
||||
self.spnValue.setClearValue(0)
|
||||
|
||||
self.btnCalc.clicked.connect(self.showNumberInputDialog)
|
||||
|
||||
|
@ -286,7 +286,8 @@ class ParametersPanel(BASE, WIDGET):
|
||||
elif isinstance(param, ParameterSelection):
|
||||
item = QComboBox()
|
||||
item.addItems(param.options)
|
||||
item.setCurrentIndex(param.default)
|
||||
if param.default:
|
||||
item.setCurrentIndex(param.default)
|
||||
elif isinstance(param, ParameterFixedTable):
|
||||
item = FixedTablePanel(param)
|
||||
elif isinstance(param, ParameterRange):
|
||||
@ -320,12 +321,14 @@ class ParametersPanel(BASE, WIDGET):
|
||||
verticalLayout.setSizeConstraint(
|
||||
QLayout.SetDefaultConstraint)
|
||||
textEdit = QPlainTextEdit()
|
||||
textEdit.setPlainText(param.default)
|
||||
if param.default:
|
||||
textEdit.setPlainText(param.default)
|
||||
verticalLayout.addWidget(textEdit)
|
||||
item = textEdit
|
||||
else:
|
||||
item = QLineEdit()
|
||||
item.setText(unicode(param.default))
|
||||
if param.default:
|
||||
item.setText(unicode(param.default))
|
||||
elif isinstance(param, ParameterGeometryPredicate):
|
||||
item = GeometryPredicateSelectionPanel(param.enabledPredicates)
|
||||
if param.left:
|
||||
@ -341,10 +344,12 @@ class ParametersPanel(BASE, WIDGET):
|
||||
widget.currentIndexChanged.connect(item.onRightLayerChange)
|
||||
item.rightLayer = widget.itemData(widget.currentIndex())
|
||||
item.updatePredicates()
|
||||
item.setValue(param.default)
|
||||
if param.default:
|
||||
item.setValue(param.default)
|
||||
else:
|
||||
item = QLineEdit()
|
||||
item.setText(unicode(param.default))
|
||||
if param.default:
|
||||
item.setText(unicode(param.default))
|
||||
|
||||
return item
|
||||
|
||||
@ -362,7 +367,7 @@ class ParametersPanel(BASE, WIDGET):
|
||||
if self.alg.getParameterFromName(child).optional:
|
||||
widget.addItem(self.tr('[not set]'))
|
||||
widget.addItems(self.getFields(layer,
|
||||
self.alg.getParameterFromName(child).datatype))
|
||||
self.alg.getParameterFromName(child).datatype))
|
||||
|
||||
def getFields(self, layer, datatype):
|
||||
fieldTypes = []
|
||||
|
Loading…
x
Reference in New Issue
Block a user