X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=InterfaceQT4%2FpolitiquesValidation.py;h=1cd9c713c6fbf19f60c5fc19b8e2091a5cb7cd79;hb=96176d0080e0d4efbd29d98c0df700a64a82acdc;hp=84c2c0530d9846739664d6a70d64f079df114b4e;hpb=16d5922e798b1254eb558678612711d72ed38b32;p=tools%2Feficas.git diff --git a/InterfaceQT4/politiquesValidation.py b/InterfaceQT4/politiquesValidation.py index 84c2c053..1cd9c713 100644 --- a/InterfaceQT4/politiquesValidation.py +++ b/InterfaceQT4/politiquesValidation.py @@ -18,12 +18,18 @@ # See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com # # Modules Python -import types, string +from __future__ import absolute_import +try : + from builtins import range +except : pass + +import types +from Accas import PARAMETRE from Extensions.i18n import tr #------------------ -class Validation : +class Validation(object) : #------------------ def __init__(self,node,parent) : self.node=node @@ -33,22 +39,23 @@ class Validation : commentaire = None valeur,validite=self.node.item.eval_valeur(valeurentree) if not validite : - commentaire = "impossible d'evaluer : %s " %`valeurentree` + commentaire = "impossible d'evaluer : %s " %repr(valeurentree) return valeur,validite,commentaire + if self.node.item.wait_TXM() and not( type(valeur) == str) : valeur=str(valeur) testtype,commentaire = self.node.item.object.verif_type(valeur) if not testtype : return valeur,0,commentaire valide=self.node.item.valide_item(valeur) - if type(valide) == types.TupleType: + if type(valide) == tuple: validite,commentaire=valide else : validite=valide commentaire=" " if not validite and commentaire is None: - commentaire = "impossible d'évaluer : %s " %`valeurentree` + commentaire = "impossible d'evaluer : %s " %repr(valeurentree) return valeur, validite, commentaire # ---------------------------------------------------------------------------------------- @@ -63,12 +70,12 @@ class Validation : if str(clef) != str(texteValeur) : self.node.item.object.init_modif() clefobj=self.node.item.object.GetNomConcept() - if not self.parent.appliEficas.dict_reels.has_key(clefobj): + if not clefobj in self.parent.appliEficas.dict_reels: self.parent.appliEficas.dict_reels[clefobj] = {} self.parent.appliEficas.dict_reels[clefobj][clef]=texteValeur self.parent.appliEficas.dict_reels[clefobj] if clefobj=="" : - if not self.parent.appliEficas.dict_reels.has_key(self.node.item.object.etape) : + if not self.node.item.object.etape in self.parent.appliEficas.dict_reels : self.parent.appliEficas.dict_reels[self.node.item.object.etape] = {} self.parent.appliEficas.dict_reels[self.node.item.object.etape][clef]=texteValeur self.node.item.object.fin_modif() @@ -77,23 +84,26 @@ class Validation : def GetValeurTexte(self,valeur) : valeurTexte=valeur + if valeur == None : return valeur from decimal import Decimal if isinstance(valeur,Decimal) : - return valeur - if valeur == None : return valeur + if self.node.wait_TXM() and not self.is_param(valeur) : return "'"+str(valeur)+"'" + else : return(valeur) if "R" in self.node.item.object.definition.type: clefobj=self.node.item.object.GetNomConcept() - if self.parent.appliEficas.dict_reels.has_key(clefobj): - if self.parent.appliEficas.dict_reels[clefobj].has_key(valeur): + if clefobj in self.parent.appliEficas.dict_reels: + if valeur in self.parent.appliEficas.dict_reels[clefobj] : valeurTexte=self.parent.appliEficas.dict_reels[clefobj][valeur] else : - if string.find(str(valeur),'.') == -1 and string.find(str(valeur),'e') == -1 and string.find(str(valeur),'E'): - # aucun '.' n'a été trouvé dans valeur --> on en rajoute un a la fin - print self.is_param(valeur) + if str(valeur).find('.') == -1 and str(valeur).find('e') == -1 and str(valeur).find('E'): + # aucun '.' n'a ete trouve dans valeur --> on en rajoute un a la fin if (self.is_param(valeur)): return valeur else: - val2=eval(str(valeur)+'.') + try : + val2=eval(str(valeur)+'.') + except : + pass return valeurTexte def is_param(self,valeur) : @@ -112,11 +122,11 @@ class Validation : clef=eval(texteValeur) if str(clef) != str(texteValeur) : clefobj=self.node.item.object.GetNomConcept() - if not self.parent.appliEficas.dict_reels.has_key(clefobj): + if not clefobj in self.parent.appliEficas : self.parent.appliEficas.dict_reels[clefobj] = {} self.parent.appliEficas.dict_reels[clefobj][clef]=texteValeur if clefobj=="" : - if not self.parent.appliEficas.dict_reels.has_key(self.node.item.object.etape) : + if not self.node.item.object.etape in self.parent.appliEficas.dict_reels : self.parent.appliEficas.dict_reels[self.node.item.object.etape] = {} self.parent.appliEficas.dict_reels[self.node.item.object.etape][clef]=texteValeur @@ -125,7 +135,7 @@ class Validation : def AjoutDsDictReelEtape(self): try: - if self.parent.appliEficas.dict_reels.has_key(self.node.item.object) : + if self.node.item.object in self.parent.appliEficas.dict_reels: self.parent.appliEficas.dict_reels[self.node.item.sdnom]=self.parent.appliEficas.dict_reels[self.node.item.object] del self.parent.appliEficas.dict_reels[self.node.item.object] except : @@ -145,6 +155,10 @@ class PolitiqueUnique(Validation) : if self.parent.modified == 'n' : self.parent.init_modif() ancienne_val = self.node.item.get_valeur() valeur,validite,commentaire =self.TesteUneValeur(valeurentree) + if validite and ('R' in self.node.item.object.definition.type) and not(isinstance(valeur,PARAMETRE)) : + s=valeurentree + if (s.find('.')== -1 and s.find('e')== -1 and s.find('E')==-1) : s=s+'.' + valeur,validite,commentaire =self.TesteUneValeur(s) if validite : validite=self.node.item.set_valeur(valeur) if self.node.item.isvalid(): @@ -165,21 +179,21 @@ class PolitiquePlusieurs(Validation): classe servant pour les entrees ne demandant qu un mot clef """ def __init__(self,node,parent) : - print "ds PolitiquePlusieurs" + #print "ds PolitiquePlusieurs" self.node=node self.parent=parent - print self.node - print self.parent + #print self.node + #print self.parent def AjoutValeurs(self,listevaleur,index,listecourante): listeRetour=[] - commentaire="Nouvelle valeur acceptée" + commentaire="Nouvelle valeur acceptee" commentaire2="" valide=1 if listevaleur==None: return if listevaleur=="": return - if not( type(listevaleur) in (types.ListType,types.TupleType)) : + if not( type(listevaleur) in (list,tuple)) : listevaleur=tuple(listevaleur) # on verifie que la cardinalite max n a pas ete atteinte min,max = self.node.item.GetMinMax() @@ -226,7 +240,7 @@ class PolitiquePlusieurs(Validation): return valide,commentaire,commentaire2,listeRetour - def AjoutTuple(self,valeurTuple,index,listecourante): + def AjoutTuple(self,valeurTuple,listecourante): listeRetour=[] commentaire="Nouvelle valeur acceptee" commentaire2="" @@ -251,10 +265,5 @@ class PolitiquePlusieurs(Validation): if not encorevalide : commentaire2=self.node.item.info_erreur_liste() return valide,commentaire,commentaire2,listeRetour - #min,max = self.node.item.GetMinMax() - #if len(listecourante) >= max : - # commentaire="La liste a deja atteint le nombre maximum d'elements,ajout refuse" - # valide=0 - # return valide,commentaire,commentaire2,listeRetour listeRetour.append(valeurTuple) return valide,commentaire,commentaire2,listeRetour