Skip to content

Commit dc86682

Browse files
author
volayaf
committed
changed str() with unicode(), to avoid problems with files in non-ascii paths
git-svn-id: http://sextante.googlecode.com/svn/trunk/soft/bindings/qgis-plugin@166 881b9c09-3ef8-f3c2-ec3d-21d735c97f4d
1 parent cc90933 commit dc86682

File tree

8 files changed

+26
-21
lines changed

8 files changed

+26
-21
lines changed

src/sextante/core/GeoAlgorithm.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,7 @@ def getIcon(self):
5050

5151
def helpFile(self):
5252
'''Returns the path to the help file with the description of this algorithm.
53-
It should be an HTML file'''
53+
It should be an HTML file. Returns None if there is no help file available'''
5454
return None
5555

5656
def processAlgorithm(self):

src/sextante/ftools/Union.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111
from sextante.ftools import ftools_utils
1212
from sextante.core.SextanteLog import SextanteLog
1313

14-
class Union(GeoAlgorithm):
14+
class Union(GeoAlgorithm):
1515

1616
INPUT = "INPUT"
1717
INPUT2 = "INPUT2"

src/sextante/modeler/ModelerAlgorithm.py

+6
Original file line numberDiff line numberDiff line change
@@ -390,6 +390,12 @@ def hasDependencies(self, element, elementIndex):
390390

391391
return False
392392

393+
def helpfile(self):
394+
helpfile = self.descriptionFile + ".help"
395+
if os.path.exists(helpfile):
396+
return helpfile
397+
else:
398+
return None
393399

394400
class AlgorithmAndParameter():
395401

Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
from sextante.parameters.Parameter import Parameter
22
from sextante.core.SextanteUtils import SextanteUtils
3-
from sextante.core.QGisLayers import QGisLayers
43

54
class ParameterDataObject(Parameter):
65

@@ -9,6 +8,6 @@ def getValueAsCommandLineParameter(self):
98
return str(None)
109
else:
1110
if not SextanteUtils.isWindows():
12-
return "\"" + str(self.value) + "\""
11+
return "\"" + unicode(self.value) + "\""
1312
else:
14-
return "\"" + str(self.value).replace("\\", "\\\\") + "\""
13+
return "\"" + unicode(self.value).replace("\\", "\\\\") + "\""

src/sextante/parameters/ParameterMultipleInput.py

+7-7
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@ def setValue(self, obj):
4949
self.value = s;
5050
return True
5151
else:
52-
self.value = str(obj)
52+
self.value = unicode(obj)
5353
return True
5454

5555
def getSafeExportedLayers(self):
@@ -91,23 +91,23 @@ def getSafeExportedLayers(self):
9191
def getAsString(self,value):
9292
if self.datatype == ParameterMultipleInput.TYPE_RASTER:
9393
if isinstance(value, QgsRasterLayer):
94-
return str(value.dataProvider().dataSourceUri())
94+
return unicode(value.dataProvider().dataSourceUri())
9595
else:
96-
s = str(value)
96+
s = unicode(value)
9797
layers = QGisLayers.getRasterLayers()
9898
for layer in layers:
9999
if layer.name() == s:
100-
return str(layer.dataProvider().dataSourceUri())
100+
return unicode(layer.dataProvider().dataSourceUri())
101101
return s
102102
else:
103103
if isinstance(value, QgsVectorLayer):
104-
return str(value.source())
104+
return unicode(value.source())
105105
else:
106-
s = str(value)
106+
s = unicode(value)
107107
layers = QGisLayers.getVectorLayers(self.datatype)
108108
for layer in layers:
109109
if layer.name() == s:
110-
return str(layer.source())
110+
return unicode(layer.source())
111111
return s
112112

113113

src/sextante/parameters/ParameterRaster.py

+3-3
Original file line numberDiff line numberDiff line change
@@ -39,14 +39,14 @@ def setValue(self, obj):
3939
else:
4040
return False
4141
if isinstance(obj, QgsRasterLayer):
42-
self.value = str(obj.dataProvider().dataSourceUri())
42+
self.value = unicode(obj.dataProvider().dataSourceUri())
4343
return True
4444
else:
45-
self.value = str(obj)
45+
self.value = unicode(obj)
4646
layers = QGisLayers.getRasterLayers()
4747
for layer in layers:
4848
if layer.name() == self.value:
49-
self.value = str(layer.dataProvider().dataSourceUri())
49+
self.value = unicode(layer.dataProvider().dataSourceUri())
5050
return True
5151
return True
5252

src/sextante/parameters/ParameterTable.py

+3-3
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ def setValue(self, obj):
1717
else:
1818
return False
1919
if isinstance(obj, QgsVectorLayer):
20-
source = str(obj.source())
20+
source = unicode(obj.source())
2121
if source.endswith("dbf") or source.endswith("csv"):
2222
self.value = source
2323
return True
@@ -27,11 +27,11 @@ def setValue(self, obj):
2727
layers = QGisLayers.getVectorLayers()
2828
for layer in layers:
2929
if layer.name() == self.value:
30-
source = str(layer.source())
30+
source = unicode(layer.source())
3131
if source.endswith("dbf") or source.endswith("csv"):
3232
self.value = source
3333
return True
34-
val = str(obj)
34+
val = unicode(obj)
3535
if val.endswith("dbf") or val.endswith("csv"):
3636
self.value = val
3737
return True

src/sextante/parameters/ParameterVector.py

+3-3
Original file line numberDiff line numberDiff line change
@@ -26,14 +26,14 @@ def setValue(self, obj):
2626
else:
2727
return False
2828
if isinstance(obj, QgsVectorLayer):
29-
self.value = str(obj.source())
29+
self.value = unicode(obj.source())
3030
return True
3131
else:
32-
self.value = str(obj)
32+
self.value = unicode(obj)
3333
layers = QGisLayers.getVectorLayers(self.shapetype)
3434
for layer in layers:
3535
if layer.name() == self.value:
36-
self.value = str(layer.source())
36+
self.value = unicode(layer.source())
3737
return True
3838
return True
3939

0 commit comments

Comments
 (0)