[processing] Fix BatchOutputSelectionPanel with QgsMapLayer instances

This commit is contained in:
arnaud.morvan@camptocamp.com 2016-11-06 13:04:32 +01:00
parent 93be141af5
commit 2d2fe8b8cc

View File

@ -31,6 +31,7 @@ __revision__ = '$Format:%H$'
import os import os
import re import re
from qgis.core import QgsMapLayer
from qgis.PyQt.QtWidgets import QWidget, QPushButton, QLineEdit, QHBoxLayout, QSizePolicy, QFileDialog from qgis.PyQt.QtWidgets import QWidget, QPushButton, QLineEdit, QHBoxLayout, QSizePolicy, QFileDialog
from qgis.PyQt.QtCore import QSettings from qgis.PyQt.QtCore import QSettings
@ -113,9 +114,12 @@ class BatchOutputSelectionPanel(QWidget):
if isinstance(param, (ParameterRaster, if isinstance(param, (ParameterRaster,
ParameterVector, ParameterTable, ParameterVector, ParameterTable,
ParameterMultipleInput)): ParameterMultipleInput)):
s = str(widget.getText()) v = widget.value()
s = os.path.basename(s) if isinstance(v, QgsMapLayer):
s = os.path.splitext(s)[0] s = v.name()
else:
s = os.path.basename(v)
s = os.path.splitext(s)[0]
elif isinstance(param, ParameterBoolean): elif isinstance(param, ParameterBoolean):
s = str(widget.currentIndex() == 0) s = str(widget.currentIndex() == 0)
elif isinstance(param, ParameterSelection): elif isinstance(param, ParameterSelection):