Skip to content

Commit 9f1fcb7

Browse files
committed
processing: enable translation for parameter descriptions
1 parent 6564da0 commit 9f1fcb7

File tree

6 files changed

+25
-22
lines changed

6 files changed

+25
-22
lines changed

python/plugins/processing/algs/grass7/Grass7Algorithm.py

+3-2
Original file line numberDiff line numberDiff line change
@@ -68,7 +68,7 @@
6868

6969
from processing.core.ProcessingConfig import ProcessingConfig
7070

71-
from processing.core.parameters import (getParameterFromString)
71+
from processing.core.parameters import getParameterFromString
7272

7373
from .Grass7Utils import Grass7Utils
7474

@@ -203,6 +203,7 @@ def defineCharacteristicsFromFile(self):
203203
self._name = self.grass7Name
204204
else:
205205
self._name = line[:line.find(' ')].lower()
206+
self._short_description = QCoreApplication.translate("GrassAlgorithm", line)
206207
self._display_name = self._name
207208
# Read the grass group
208209
line = lines.readline().strip('\n').strip()
@@ -219,7 +220,7 @@ def defineCharacteristicsFromFile(self):
219220
line = line.strip('\n').strip()
220221
if line.startswith('Hardcoded'):
221222
self.hardcodedStrings.append(line[len('Hardcoded|'):])
222-
parameter = getParameterFromString(line)
223+
parameter = getParameterFromString(line, "GrassAlgorithm")
223224
if parameter is not None:
224225
self.params.append(parameter)
225226
if isinstance(parameter, (QgsProcessingParameterVectorLayer, QgsProcessingParameterFeatureSource)):

python/plugins/processing/algs/grass7/ext/i.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -182,7 +182,7 @@ def verifyRasterNum(alg, parameters, context, rasters, mini, maxi=None):
182182
# alg.removeOutputFromName(output)
183183

184184
# # Create output parameter
185-
# param = getParameterFromString("ParameterString|{}|output file|None|False|False".format(output))
185+
# param = getParameterFromString("ParameterString|{}|output file|None|False|False".format(output), 'GrassAlgorithm')
186186
# param.value = outputFile.value
187187
# alg.addParameter(param)
188188

python/plugins/processing/algs/otb/OtbAlgorithm.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -135,7 +135,7 @@ def defineCharacteristicsFromFile(self):
135135
options = params[2].split(';')
136136
param = OtbParameterChoice(params[0], params[1], options, params[3], params[4])
137137
else:
138-
param = getParameterFromString(line)
138+
param = getParameterFromString(line, 'OtbAlgorithm')
139139

140140
#if parameter is None, then move to next line and continue
141141
if param is None:

python/plugins/processing/algs/saga/SagaParameters.py

+4-4
Original file line numberDiff line numberDiff line change
@@ -26,8 +26,7 @@
2626

2727
__revision__ = '$Format:%H$'
2828

29-
import os
30-
import importlib
29+
from qgis.PyQt.QtCore import QCoreApplication
3130
from qgis.core import QgsProcessingParameterRasterDestination
3231
from processing.core.parameters import getParameterFromString
3332

@@ -70,6 +69,7 @@ def create_parameter_from_line(line):
7069
params[3] = True if params[3].lower() == 'true' else False
7170
if len(params) > 4:
7271
params[4] = True if params[4].lower() == 'true' else False
73-
return SagaImageOutputParam(*params)
72+
param = SagaImageOutputParam(*params)
73+
param.setDescription(QCoreApplication.translate("SAGAAlgorithm", param.description()))
7474
else:
75-
return getParameterFromString(line)
75+
return getParameterFromString(line, "SAGAAlgorithm")

python/plugins/processing/core/parameters.py

+3-1
Original file line numberDiff line numberDiff line change
@@ -89,7 +89,7 @@
8989
PARAMETER_RASTER_DESTINATION = 'rasterDestination'
9090

9191

92-
def getParameterFromString(s):
92+
def getParameterFromString(s, context):
9393
# Try the parameter definitions used in description files
9494
if '|' in s and (s.startswith("QgsProcessingParameter") or s.startswith("*QgsProcessingParameter") or s.startswith('Parameter') or s.startswith('*Parameter')):
9595
isAdvanced = False
@@ -244,6 +244,8 @@ def getParameterFromString(s):
244244
if isAdvanced:
245245
param.setFlags(param.flags() | QgsProcessingParameterDefinition.FlagAdvanced)
246246

247+
param.setDescription(QCoreApplication.translate(context, param.description()))
248+
247249
return param
248250
else:
249251
return None

scripts/processing2ui.pl

+13-13
Original file line numberDiff line numberDiff line change
@@ -48,6 +48,13 @@ sub xmlescape {
4848
my $name = scalar(<I>);
4949
my $desc = scalar(<I>);
5050
my $group = scalar(<I>);
51+
52+
while( my($class, $name, $description, $rest) = split /\|/, scalar(<I>) ) {
53+
next unless defined $description;
54+
$description =~ s/\s+$//;
55+
$strings{"GrassAlgorithm"}{$description} = 1
56+
}
57+
5158
close I;
5259

5360
chop $desc;
@@ -57,23 +64,16 @@ sub xmlescape {
5764
$strings{"GrassAlgorithm"}{$group} = 1;
5865
}
5966

60-
for my $f (<python/plugins/processing/algs/taudem/description/*/*.txt>) {
67+
for my $f (<python/plugins/processing/algs/saga/description/*/*.txt>) {
6168
open I, $f;
6269
my $desc = scalar(<I>);
63-
my $name = scalar(<I>);
64-
my $group = scalar(<I>);
65-
close I;
6670

67-
chop $desc;
68-
chop $group;
69-
70-
$strings{"TAUDEMAlgorithm"}{$desc} = 1;
71-
$strings{"TAUDEMAlgorithm"}{$group} = 1;
72-
}
71+
while( my($class, $name, $description, $rest) = split /\|/, scalar(<I>) ) {
72+
next unless defined $description;
73+
$description =~ s/\s+$//;
74+
$strings{"SAGAAlgorithm"}{$description} = 1
75+
}
7376

74-
for my $f (<python/plugins/processing/algs/saga/description/*/*.txt>) {
75-
open I, $f;
76-
my $desc = scalar(<I>);
7777
close I;
7878

7979
chop $desc;

0 commit comments

Comments
 (0)