From 932691a1e4615fb7e9f0a1c6e73dea5967192b36 Mon Sep 17 00:00:00 2001 From: eficas <> Date: Mon, 13 Oct 2003 15:56:07 +0000 Subject: [PATCH] =?utf8?q?PN=20:=20version=20interm=C3=A9diaire?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit --- Editeur/composimp.py | 31 ++++++++++++++++++------------- Ihm/I_VALIDATOR.py | 18 +++++++++++++++++- 2 files changed, 35 insertions(+), 14 deletions(-) diff --git a/Editeur/composimp.py b/Editeur/composimp.py index 617d02d9..1fe42aab 100644 --- a/Editeur/composimp.py +++ b/Editeur/composimp.py @@ -104,8 +104,11 @@ class newSIMPPanel(panels.OngletPanel): if validite : if self.node.item.is_list() : validite=self.node.item.valide_liste_complete(valeur) + commentaire=self.node.item.info_erreur_liste() else : validite=self.node.item.valide_item(valeur) + commentaire=self.node.item.info_erreur_item() + if validite : self.node.item.set_valeur(valeur) self.parent.appli.affiche_infos(mess) @@ -119,7 +122,6 @@ class newSIMPPanel(panels.OngletPanel): if self.node.item.isvalid(): self.node.parent.select() else : - commentaire=self.node.item.info_erreur_item() self.parent.appli.affiche_infos(commentaire) # ---------------------------------------------------------------------------------------- @@ -292,8 +294,6 @@ class PLUSIEURS_Panel(newSIMPPanel): commentaire="Valeur incorrecte : ajout à la liste refusé" testvalide=1 - print name - print name.__class__.__name__ if name != None : valeur = name else: @@ -305,15 +305,17 @@ class PLUSIEURS_Panel(newSIMPPanel): encorevalide = -2 commentaire = "Pas de saisie des valeurs nulles" - if testvalide : - if (encorevalide ==0) : - commentaire=self.node.item.info_erreur_item() - if (encorevalide == -1) : - commentaire=self.node.item.info_erreur_liste() + if (encorevalide ==0) : + commentaire=self.node.item.info_erreur_item() + if (encorevalide == -1) : + commentaire=self.node.item.info_erreur_liste() + if (not testvalide) : + commentaire = "impossible d'évaluer : %s " %`valeurentree` + + if testvalide and (encorevalide == 1): min,max = self.node.item.GetMinMax() testtype = self.node.item.object.verif_type(valeur) - if testtype : liste_valeurs = self.Liste_valeurs.get_liste() if len(liste_valeurs) >= max : @@ -325,8 +327,6 @@ class PLUSIEURS_Panel(newSIMPPanel): commentaire="Nouvelle valeur acceptée" else : commentaire ="Type de la valeur incorrecte" - else : - commentaire = "impossible d'évaluer : %s " %`valeurentree` self.erase_valeur() self.parent.appli.affiche_infos(commentaire) @@ -1500,8 +1500,13 @@ class SIMPTreeItem(Objecttreeitem.AtomicObjectTreeItem): return validite def valide_liste_complete (self,valeur): - valide=1 - return valide + valeuravant=self.object.valeur + retour=self.object.set_valeur(valeur) + validite=0 + if self.object.isvalid(): + validite=1 + retour=self.object.set_valeur(valeuravant) + return validite def info_erreur_item(self) : commentaire="" diff --git a/Ihm/I_VALIDATOR.py b/Ihm/I_VALIDATOR.py index 54a90317..b823cc9b 100644 --- a/Ihm/I_VALIDATOR.py +++ b/Ihm/I_VALIDATOR.py @@ -63,6 +63,9 @@ class Valid: """ return 0 + def valide_liste_partielle(self): + return 0 + def get_into(self,liste_courante=None,into_courant=None): """ Cette méthode retourne la liste de choix proposée par le validateur. Si le validateur ne propose @@ -231,6 +234,13 @@ class CardVal(Valid): else: return 0 + def valide_liste_partielle(self,liste_courante=None): + validite=1 + if liste_courante != None : + if len(liste_courante) > self.max : + validite=0 + return validite + def get_into(self,liste_courante=None,into_courant=None): if into_courant is None: return None @@ -276,11 +286,17 @@ class EnumVal(ListVal): liste_choix.append(e) return liste_choix -class LongStr(ListVal):pass +class LongStr(ListVal): + def info_erreur_item(self): + return "Longueur de la chaine incorrecte" + class RangeVal(ListVal):pass class TypeVal(ListVal):pass class PairVal(ListVal): + def info_erreur_item(self): + return "La valeur saisie doit être paire" + #ATTENTION METHODE SURCHARGEE: a resorber dans une future version def verif_item(self,valeur): if self.is_eval(valeur): -- 2.39.2