]> SALOME platform Git repositories - tools/eficas.git/commitdiff
Salome HOME
modifs pour valeur par defaut
authorpascale.noyret <pascale.noyret@edf.fr>
Wed, 28 Nov 2018 11:00:28 +0000 (12:00 +0100)
committerpascale.noyret <pascale.noyret@edf.fr>
Wed, 28 Nov 2018 11:00:28 +0000 (12:00 +0100)
Efi2Xsd/MCAccasXsd.py
Ihm/I_MCSIMP.py

index 0f9d060cdfa48de44991b81ee6fb9e42e85df72b..69396bc96b8fd972f0409cb54e4b29d52f9ecf99 100755 (executable)
@@ -20,7 +20,7 @@ class X_OBJECT:
 
   def delObjPyxb(self):
       if not self.cata.modeleMetier : return
-      #print ('----------- delObjPyxb', self.nom)  
+      print ('----------- delObjPyxb', self.nom)  
       trouve = False
       listeArg=[]
       for i in self.perePyxb.objPyxb.orderedContent(): 
@@ -42,43 +42,43 @@ class X_OBJECT:
       
   def addObjPyxb(self,indiceDansLeContenu):
       if not self.cata.modeleMetier : return
-      #print ('**********************************************')
-      #print ('_____________ addObjPyxb ds X_OBJECT', self.nom, indiceDansLeContenu)
+      print ('**********************************************')
+      print ('_____________ addObjPyxb ds X_OBJECT', self.nom, indiceDansLeContenu)
       # adherence Accas sur le parent
       parent=self.parent
       while (parent.isBLOC()): parent=parent.parent
       self.perePyxb=parent
       grandPere=self.perePyxb.perePyxb
       ancienObjPerePyxb=self.perePyxb.objPyxb
-      print ('dans le perePyxb', self.perePyxb.nom)
-      print ('j ai pour orderedContent', self.objPyxb.orderedContent())
+      #print ('dans le perePyxb', self.perePyxb.nom)
+      #print ('j ai pour orderedContent', self.objPyxb.orderedContent())
       self.objPyxb.objAccas=self
       
       listeArg=[]
       indice=0
       # a tester
       # a affiner si on ajoute en fin 
-      print (indiceDansLeContenu)
-      print (self.perePyxb.objPyxb.orderedContent())
+      #print (indiceDansLeContenu)
+      #print (self.perePyxb.objPyxb.orderedContent())
       for i in self.perePyxb.objPyxb.orderedContent(): 
           if indice==indiceDansLeContenu : listeArg.append(self.objPyxb)
           else : listeArg.append(i._Content__value)
           indice=indice+1
-      print ('avec', listeArg)
+      #print ('avec', listeArg)
       if indiceDansLeContenu == len(self.perePyxb.objPyxb.orderedContent()):
           listeArg.append(self.objPyxb)
 
-      print ('avec', listeArg)
+      #print ('avec', listeArg)
 
       nvlObjPerePyxb=self.perePyxb.maClasseModeleMetier(*listeArg)
       self.perePyxb.objPyxb=nvlObjPerePyxb
       self.perePyxb.objPyxb.objAccas=ancienObjPerePyxb.objAccas
-      print (self.nom, ' a pour gp ', grandPere)
+      #print (self.nom, ' a pour gp ', grandPere)
       if  grandPere : grandPere.reconstruitAvecNvlObj(ancienObjPerePyxb,nvlObjPerePyxb)
 
   def reconstruitAvecNvlObj(self, ancienObj,nvlObj):
       if not self.cata.modeleMetier : return
-      print ('reconstruitAvecNvlObj pour', self, self.nom, ancienObj,nvlObj)
+      #print ('reconstruitAvecNvlObj pour', self, self.nom, ancienObj,nvlObj)
       listeArg=[]
       for i in self.objPyxb.orderedContent(): 
           if id(ancienObj) == id(i._Content__value) : listeArg.append(nvlObj)
@@ -98,10 +98,7 @@ class X_MCSIMP(X_OBJECT):
       # self.valeur tient compte de la valeur par defaut
       # utiliser getValeur ? expression numpy
       if not self.cata.modeleMetier : return
-      print ('X_MCSIMP buildObjPyxb', self.nom, self,self.valeur)
-      #if self.nom == 'diameter' : 
-      #  traceback.print_stack()
-      #    print ('****************************************************')
+      #print ('X_MCSIMP buildObjPyxb', self.nom, self,self.valeur)
       #print ('objPyxbDeConstruction', self.objPyxbDeConstruction)
       #if self.objPyxbDeConstruction == None : print (self.nom, ' pas de pyxb')
       if self.objPyxbDeConstruction != None :
@@ -116,18 +113,21 @@ class X_MCSIMP(X_OBJECT):
         #print (self.maClasseModeleMetier)
         #print (self.valeur)
         #print (type(self.valeur))
+
         if self.valeur != None : self.objPyxb=self.maClasseModeleMetier(self.valeur)
-        elif self.definition.into != None and 'TXM' in self.definition.type  : self.objPyxb = None
-        #else                   : self.objPyxb=self.maClasseModeleMetier(); 
         else                   : self.objPyxb=self.maClasseModeleMetier(_validate_constraints=False); 
+
         if self.objPyxb : self.objPyxb.objAccas=self
       #print ('X_MCSIMP', self.nom, self.objPyxb, )
-      print ('fin X_MCSIMP', self.objPyxb, self.nom,self)
+      #print ('fin X_MCSIMP', self.objPyxb, self.nom,self)
+      if self.nom=="species_pair_parameters_potential_type" : print ('X_MCSIMP buildObjPyxb', self.nom )
 
 
    def setValeurObjPyxb(self,newVal):
        if not self.cata.modeleMetier : return
+       print ('------------------------------------------------------------------')
        print ('dans setValeurObjPyxb MCSIMP ', self.nom)
+       
        #print (self.nom , ' a pour pere', self.perePyxb, self.perePyxb.nom, self.perePyxb.objPyxb)
        if newVal != None : nvlObj=self.maClasseModeleMetier(newVal)
        #else              : nvlObj=self.maClasseModeleMetier()
@@ -135,6 +135,7 @@ class X_MCSIMP(X_OBJECT):
        else              : nvlObj=self.maClasseModeleMetier(_validate_constraints=False)
        self.val=newVal
 
+       #print (self.perePyxb.objPyxb.orderedContent())
        setattr(self.perePyxb.objPyxb,self.nom,nvlObj)
        trouve=False
        indice=0
@@ -148,12 +149,14 @@ class X_MCSIMP(X_OBJECT):
        if not trouve : print ('Attention souci au changement de valeur de ', self.nom)
        self.objPyxb=nvlObj
        self.objPyxb.objAccas=self
+       #print (self.perePyxb.objPyxb.orderedContent())
+       #print ('------------------------------------------------------------------')
 
         
       
    def addObjPyxb(self, indiceDsLeContenu):
       if not self.cata.modeleMetier : return
-      #print ('addObjPyxb : ajout de ', self.nom, 'en ', indiceDsLeContenu)
+      print ('addObjPyxb : ajout de ', self.nom, 'en ', indiceDsLeContenu)
 
       # adherence Accas sur le parent
       parent=self.parent
@@ -165,17 +168,19 @@ class X_MCSIMP(X_OBJECT):
       self.monNomClasseModeleMetier='T_'+self.nom
       self.maClasseModeleMetier=getattr(self.cata.modeleMetier,self.monNomClasseModeleMetier)
       #nvlObj=self.maClasseModeleMetier() 
-      nvlObj=self.maClasseModeleMetier(_validate_constraints=False)
-      print (self.perePyxb.objPyxb.orderedContent())
-      for i in (self.perePyxb.objPyxb.orderedContent()): print i._Content__value;print (type(i._Content__value))
+      #nvlObj=self.maClasseModeleMetier(_validate_constraints=False)
+      if self.valeur != None : nvlObj=self.maClasseModeleMetier(self.valeur)
+      else                   : nvlObj=self.maClasseModeleMetier(_validate_constraints=False); 
+      #print (self.perePyxb.objPyxb.orderedContent())
+      #for i in (self.perePyxb.objPyxb.orderedContent()): print i._Content__value;print (type(i._Content__value))
       setattr(self.perePyxb.objPyxb,self.nom,nvlObj)
       tampon=self.perePyxb.objPyxb.orderedContent()[-1]
       self.objPyxb  = nvlObj
       self.objPyxb.objAccas=self
       indexOC=-1
       longueur=len(self.perePyxb.objPyxb.orderedContent())
-      print (self.perePyxb.objPyxb.orderedContent())
-      print (self.perePyxb.nom)
+      #print (self.perePyxb.objPyxb.orderedContent())
+      #print (self.perePyxb.nom)
       for i in reversed(range(longueur)):
           self.perePyxb.objPyxb.orderedContent()[i]=self.perePyxb.objPyxb.orderedContent()[i-1]
           if i == indiceDsLeContenu + 1 : break
@@ -188,8 +193,8 @@ class X_MCCOMPO(X_OBJECT) :
 # 
    def buildObjPyxb(self,mc_list) :
       #print ('________________________________________________')
-      #print ('X_MCCOMPO buildObjPyxb', self.nom, self, mc_list)
       if not self.cata.modeleMetier : return
+      #print ('X_MCCOMPO buildObjPyxb',  self, mc_list)
 
       self.listArg=[]
       for objAccas in mc_list :
@@ -202,7 +207,6 @@ class X_MCCOMPO(X_OBJECT) :
         else :
            self.listArg.append(objAccas.objPyxb)
            objAccas.perePyxb=self
-           #print (objAccas.nom ,' a pour pere Pyxb', self, self.nom)
 
       self.monNomClasseModeleMetier='T_'+self.nom
       self.maClasseModeleMetier=getattr(self.cata.modeleMetier,self.monNomClasseModeleMetier)
@@ -211,8 +215,8 @@ class X_MCCOMPO(X_OBJECT) :
         self.objPyxbDeConstruction = None
         #print ('je passe dans le if pour ', self.nom, self.objPyxb, self)
       else :
-        print (self.nom)
-        print (self.listArg)
+        #print (self.nom)
+        #print (self.listArg)
         self.objPyxb=self.maClasseModeleMetier(*self.listArg)
       self.objPyxb.objAccas=self
       #print ('X_MCCOMPO', self, self.nom, self.objPyxb)
@@ -238,7 +242,7 @@ class X_MCCOMPO(X_OBJECT) :
                # fils ou objFils
                objFils.perePyxb=self
                self.listArg.append(objFils.objPyxb)
-               #print (fils.nom ,' est un MCLIST et a pour pere Pyxb', self, self.nom)
+               print (fils.nom ,' est un MC ds un MCLIST et a pour pere Pyxb', self, self.nom)
         else :
            self.listArg.append(fils.objPyxb)
            fils.perePyxb=self
@@ -298,8 +302,6 @@ class X_JDC (X_MCCOMPO):
 # ---------------------
  
    def  __init__(self):
-      #print ('_______________________________________')
-      #print ('X_JDC buildObjPyxb',  self)
       self.perePyxb=None
       if not self.cata.modeleMetier : return
       self.monNomClasseModeleMetier=self.code
@@ -307,9 +309,9 @@ class X_JDC (X_MCCOMPO):
       self.objPyxb=self.maClasseModeleMetier()
       self.objPyxb.objAccas=self
       pyxb.GlobalValidationConfig._setContentInfluencesGeneration(pyxb.GlobalValidationConfig.NEVER)
-      #pyxb.GlobalValidationConfig._setInvalidElementInContent(pyxb.GlobalValidationConfig.RAISE_EXCEPTION)
-      #pyxb.GlobalValidationConfig._setOrphanElementInContent(pyxb.GlobalValidationConfig.RAISE_EXCEPTION)
-      #print ('fin buildObjPyxb _______________________________________')
+      pyxb.GlobalValidationConfig._setInvalidElementInContent(pyxb.GlobalValidationConfig.RAISE_EXCEPTION)
+      pyxb.GlobalValidationConfig._setOrphanElementInContent(pyxb.GlobalValidationConfig.RAISE_EXCEPTION)
+      
 
    def enregistreEtapePyxb(self,etape,indice=0):
      # OK seulement si sequence (choice ? ...)
@@ -336,6 +338,7 @@ class X_JDC (X_MCCOMPO):
       #   print(e.details())
 
    def toXml(self):
+      print ('***************',self.objPyxb,'***************',)
       if not self.cata.modeleMetier : return
       print ('***************',self.objPyxb,'***************',)
       print ('***************',self,'***************',)
index 0d7c36043153b1dd9aeee08108b5acd530b00aee..d80ed54a1c500148cd09eae0a5ab0f30b9c4a795 100644 (file)
@@ -327,7 +327,7 @@ class MCSIMP(I_OBJECT.OBJECT):
         self.initModif()
         self.valeur = new_valeur
         self.val = new_valeur
-        self.setValeurObjPyxb(new_valeur)
+        if self.isValid():self.setValeurObjPyxb(new_valeur)
         self.updateConditionBloc()
         self.etape.modified()
         self.finModif()