else :
commentaire ="Type de la valeur incorrecte"
- self.erase_valeur()
+ #self.erase_valeur()
self.parent.appli.affiche_infos(commentaire)
def sup_valeur_sans_into(self,name=None):
Retourne la phrase d'aide indiquant de quel type de base doivent être les valeurs
que saisit l'utilisateur
"""
+ commentaire=""
mc = self.node.item.get_definition()
d_aides = { 'TXM' : 'chaînes de caractères',
'R' : 'réels',
else :
return "entrez entre "+str(mc.min)+" et "+str(mc.max)+" valeurs"
if mc.min == mc.max:
- return "Une liste de "+str(mc.min)+" "+d_aides[type]+" est attendue"
+ commentaire="Une liste de "+str(mc.min)+" "+d_aides[type]+" est attendue"
else :
- return "Entre "+str(mc.min)+" et "+str(mc.max)+" valeurs de type "+d_aides[type]+" sont attendues"
- return " "
+ commentaire="Entre "+str(mc.min)+" et "+str(mc.max)+" valeurs de type "+d_aides[type]+" sont attendues"
+ aideval=self.node.item.aide()
+ commentaire=commentaire + "\n" + aideval
+ return commentaire
def get_bulle_aide(self):
"""
Retourne la phrase d'aide indiquant de quel type de base doivent être les valeurs
que saisit l'utilisateur
"""
+ commentaire=""
mc = self.node.item.get_definition()
d_aides = { 'TXM' : 'chaînes de caractères',
'R' : 'réels',
type = mc.type[0]
if not d_aides.has_key(type) : return 'Type de base inconnu'
if mc.min == mc.max:
- return "Une liste de "+d_aides[type]+" chaînes de caractères est attendue"
+ commentaire="Une liste de "+d_aides[type]+" chaînes de caractères est attendue"
else :
- return "Une liste de "+d_aides[type]+" est attendue (min="+`mc.min`+",max="+`mc.max`+')'
+ commentaire="Une liste de "+d_aides[type]+" est attendue (min="+`mc.min`+",max="+`mc.max`+')'
+ aideval=self.node.item.aide()
+ commentaire=commentaire +"\n"+aideval
+ return commentaire
def make_entry(self,frame,command):
"""
Retourne la phrase d'aide indiquant de quel type doivent être les
valeurs que doit entrer l'utilisateur
"""
+ commentaire=""
mc = self.node.item.get_definition()
type = mc.type[0].__name__
if len(mc.type)>1 :
for typ in mc.type[1:] :
type = type + ' ou '+typ.__name__
if mc.min == mc.max:
- return "Une liste de "+`mc.min`+" objets de type "+type+" est attendue"
+ commentaire="Une liste de "+`mc.min`+" objets de type "+type+" est attendue"
else :
- return "Une liste d'objets de type "+type+" est attendue (min="+`mc.min`+",max="+`mc.max`+')'
+ commentaire="Une liste d'objets de type "+type+" est attendue (min="+`mc.min`+",max="+`mc.max`+')'
+ aideval=self.node.item.aide()
+ commentaire=commentaire +"\n"+ aideval
+ return commentaire
+
def sup_valeur(self,name=None):
"""
if len(mc.type)>1 :
for typ in mc.type[1:] :
type = type + ' ou '+typ.__name__
- return "Un objet de type "+type+" est attendu"
+ commentaire="Un objet de type "+type+" est attendu"
+ aideval=self.node.item.aide()
+ commentaire=commentaire +"\n"+ aideval
+ return commentaire
+
def select_valeur_from_list(self):
"""
'R' : "Un réel est attendu",
'I' : "Un entier est attendu"}
type = mc.type[0]
- return d_aides.get(type,"Type de base inconnu")
+ commentaire=d_aides.get(type,"Type de base inconnu")
+ aideval=self.node.item.aide()
+ commentaire=commentaire +"\n"+ aideval
+ return commentaire
def get_bulle_aide(self):
"""
Retourne la phrase d'aide décrivant le type de la valeur que peut prendre
le mot-clé simple courant
"""
- return 'Un complexe est attendu'
+ commentaire='Un complexe est attendu'
+ aideval=self.node.item.aide()
+ commentaire=commentaire +"\n"+ aideval
+ return commentaire
def get_valeur(self):
"""
return has_an_into
def valide_item(self,item):
+ """
+ On fait un try except pour les erreurs de types (exple
+ on rentre 1 pour une chaine de caracteres
+ """
valide=1
if self.definition.validators :
- valide=self.definition.validators.verif(item)
+ if not self.definition.validators.is_list():
+ try :
+ valide=self.definition.validators.verif(item)
+ except :
+ valide=0
return valide
def valide_liste_partielle(self,item,listecourante):
valeuravant=self.object.valeur
valeur=listecourante
valeur.append(item)
- if len(valeur) > 1 :
- valeur = tuple(valeur)
- else :
- valeur=valeur[0]
+ valeur = tuple(valeur)
retour=self.object.set_valeur(valeur)
validite=0
if self.object.isvalid():
validite=1
+ elif self.definition.validators :
+ validite=self.definition.validators.valide_liste_partielle(valeur)
+ if validite==0:
+ min,max=self.GetMinMax()
+
+ if len(valeur) < min :
+ validite=1
retour=self.object.set_valeur(valeuravant)
return validite
commentaire=self.definition.validators.info_erreur_item()
return commentaire
+ def aide(self) :
+ commentaire=""
+ if self.definition.validators :
+ commentaire=self.definition.validators.aide()
+ return commentaire
+
def info_erreur_liste(self) :
commentaire=""
if self.definition.validators :