[Processing] Add shortHelp for Scripts, Models and R

And enhance getParameterDescriptions
This commit is contained in:
rldhont 2016-05-28 09:17:21 +02:00
parent 2c1f2ce1c0
commit 8592a7e3ac
3 changed files with 55 additions and 12 deletions

View File

@ -434,15 +434,34 @@ class RAlgorithm(GeoAlgorithm):
else:
return False, None
def shortHelp(self):
if self.descriptionFile is None:
return None
helpFile = unicode(self.descriptionFile) + '.help'
if os.path.exists(helpFile):
with open(helpFile) as f:
try:
descriptions = json.load(f)
if 'ALG_DESC' in descriptions:
return self._formatHelp(unicode(descriptions['ALG_DESC']))
except:
return None
return None
def getParameterDescriptions(self):
descs = {}
helpfile = unicode(self.descriptionFile) + '.help'
if os.path.exists(helpfile):
if self.descriptionFile is None:
return descs
helpFile = unicode(self.descriptionFile) + '.help'
if os.path.exists(helpFile):
with open(helpFile) as f:
descriptions = json.load(f)
for param in self.parameters:
if param.name in descriptions:
descs[param.name] = unicode(descriptions[param.name])
try:
descriptions = json.load(f)
for param in self.parameters:
if param.name in descriptions:
descs[param.name] = unicode(descriptions[param.name])
except:
return None
return descs
def checkBeforeOpeningParametersDialog(self):

View File

@ -544,6 +544,11 @@ class ModelerAlgorithm(GeoAlgorithm):
except:
return False, None
def shortHelp(self):
if 'ALG_DESC' in self.helpContent:
return self._formatHelp(unicode(self.helpContent['ALG_DESC']))
return None
def getParameterDescriptions(self):
descs = {}
descriptions = self.helpContent

View File

@ -349,13 +349,32 @@ class ScriptAlgorithm(GeoAlgorithm):
else:
return False, None
def shortHelp(self):
if self.descriptionFile is None:
return None
helpFile = unicode(self.descriptionFile) + '.help'
if os.path.exists(helpFile):
with open(helpFile) as f:
try:
descriptions = json.load(f)
if 'ALG_DESC' in descriptions:
return self._formatHelp(unicode(descriptions['ALG_DESC']))
except:
return None
return None
def getParameterDescriptions(self):
descs = {}
helpfile = unicode(self.descriptionFile) + '.help'
if os.path.exists(helpfile):
if self.descriptionFile is None:
return descs
helpFile = unicode(self.descriptionFile) + '.help'
if os.path.exists(helpFile):
with open(helpFile) as f:
descriptions = json.load(f)
for param in self.parameters:
if param.name in descriptions:
descs[param.name] = unicode(descriptions[param.name])
try:
descriptions = json.load(f)
for param in self.parameters:
if param.name in descriptions:
descs[param.name] = unicode(descriptions[param.name])
except:
return None
return descs