From 4a0c0d63a0eeaaef96d8e13eac365d1444eeb551 Mon Sep 17 00:00:00 2001
From: Francois Henrotte <francois.henrotte@ulg.ac.be>
Date: Wed, 14 May 2014 13:05:40 +0000
Subject: [PATCH] modified functions : _setNumberChoices, addNumberChoice and
 resetNumberChoices

---
 contrib/onelab/python/onelab.py | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/contrib/onelab/python/onelab.py b/contrib/onelab/python/onelab.py
index c7d7e07ce7..0a203b9be0 100755
--- a/contrib/onelab/python/onelab.py
+++ b/contrib/onelab/python/onelab.py
@@ -242,22 +242,28 @@ class client :
     if not self.socket :
       return
     self._send(self._GMSH_PARAMETER_CLEAR, str(name))
-    
-  def addNumberChoice(self, name, value):
+
+  def _setNumberChoices(self, name, val):
     if not self.socket :
       return
     p = _parameter('number', name=name)
     self._send(self._GMSH_PARAMETER_QUERY, p.tochar())
     (t, msg) = self._receive() 
     if t == self._GMSH_PARAMETER :
-      p.fromchar(msg).value = value
-      if self.loop :
-        p.choices.append(value)
-      else :
+      if len(val) : # add new choices
+        p.fromchar(msg).value = val[0]
+        p.choices.extend(val)
+      else : # reset choices list
         p.choices = ()
     elif t == self._GMSH_PARAMETER_NOT_FOUND :
       print ('Unknown parameter %s' %(param.name))
     self._send(self._GMSH_PARAMETER, p.tochar())
+    
+  def resetNumberChoices(self, name):
+    self._setNumberChoices(name,[])
+
+  def addNumberChoice(self, name, value):
+    self._setNumberChoices(name,[value])
 
   def getNumber(self, name, warn_if_not_found=True):
     param = _parameter('number', name=name)
-- 
GitLab