]> SALOME platform Git repositories - tools/eficas.git/commitdiff
Salome HOME
correction bug ajout Fact plus menage
authorPASCALE NOYRET <pascale.noyret@edf.fr>
Fri, 1 Apr 2022 13:38:01 +0000 (15:38 +0200)
committerPASCALE NOYRET <pascale.noyret@edf.fr>
Fri, 1 Apr 2022 13:38:01 +0000 (15:38 +0200)
Editeur/Objecttreeitem.py
Ihm/I_MCCOMPO.py
InterfaceWeb/browser.py
InterfaceWeb/compofact.py
InterfaceWeb/compojdc.py
InterfaceWeb/compomclist.py
InterfaceWeb/compooper.py
Noyau/N_JDC.py

index b002ceae55707b2db73de548aad66f4180d4c3b0..ede94af83c569d866812835596806122380b9fc7 100644 (file)
@@ -452,6 +452,10 @@ class SequenceTreeItem(ObjectTreeItem):
         return  "    "
 
     def addItem(self,obj,pos):
+        print ('je passe dans addItem obosolete pour', self.nom)
+        print ('je passe dans addItem obosolete pour', self.nom)
+        print ('je passe dans addItem obosolete pour', self.nom)
+        print ('Fonction obsolete --> prevenir PN', self.nom)
         self._object.insert(pos,obj)
         item = self.makeObjecttreeitem(self.appliEficas, obj.nom + ":", obj)
         return item
index aa7fe89b7bb31851f218429bfe281eab2de50038..ba175b090b236ade7753d0e324654e841f489d7f 100644 (file)
@@ -157,20 +157,25 @@ class MCCOMPO(I_OBJECT.OBJECT):
         return (self.listeMc,self.listeMcRegle,self.dictToolTipMc)
 
     def calculOptionnelInclutBlocs(self):
+        debug=0
+        if debug : print ('-------------- calculOptionnelInclutBlocs' , self.nom)
         self.dictMCVenantDesBlocs={}
         liste, listeRouge, dictToolTipMc = self.calculOptionnel()
         dictNomsPresents = self.dictMcPresents()
+        for mc in liste : self.dictMCVenantDesBlocs[mc]=self 
         for mc in self.listeMcPresents():
             obj=dictNomsPresents[mc]
             if obj.nature!='MCBLOC' : continue
+            if debug : print (mc , 'est present')
             (l,lr,d)=obj.calculOptionnelInclutBlocs()
+            #print ('optionnels', l)
             liste = liste+l
             listeRouge = listeRouge+lr
             for k in d : dicToolTipMC[k]=d[k]
-            for mcFils in liste : 
-               if mcFils not in self.mcListe : self.dictMCVenantDesBlocs[mcFils]=obj
             for (k,v) in obj.dictMCVenantDesBlocs.items() : self.dictMCVenantDesBlocs[k]=v
-        if self.nom == 'MonProc2' :print ('ccOptio' , self,self.nom, self.dictMCVenantDesBlocs)
+         
+        if debug :print ('ccOptio' , self.nom, self.dictMCVenantDesBlocs)
+        if debug : print ('fin calculOPtionnel' , self.nom , '_____________')
         return (liste, listeRouge,dictToolTipMc)
 
    
@@ -190,14 +195,19 @@ class MCCOMPO(I_OBJECT.OBJECT):
           Retourne l'index dans la liste des fils de self du nouveau fils de nom nom_fils
           Permet de savoir a quelle position il faut ajouter un nouveau mot-cle
         """
+        debug=1
+        if debug : print ('getIndexChild pour : ', self.nom)
         cata_ordonne = self.jdc.cata_ordonne_dico
         liste_noms_mc_ordonnee = self.getListeMcOrdonneeBrute(self.getGenealogie(),cata_ordonne)
         liste_noms_mc_presents = self.listeMcPresents()
         index=0
+        if debug : print (liste_noms_mc_ordonnee)
+        if debug : print (liste_noms_mc_presents)
         for nom in liste_noms_mc_ordonnee:
             if nom == nom_fils:break
             if nom not in liste_noms_mc_presents :continue
             index=index+1
+        if debug : print ('index : ' , index)
         return index
 
     def chercheIndiceDsLeContenu(self,objet) :
@@ -279,7 +289,8 @@ class MCCOMPO(I_OBJECT.OBJECT):
             Ajoute le mot-cle name a la liste des mots-cles de
             l'objet MCCOMPOSE
         """
-        #print ('addEntite mccompo', name, pos)
+        debug=0
+        if debug : print ('addEntite mccompo', name, pos)
         self.initModif()
         if type(name)==bytes or type(name) == str :
                 # on est en mode creation d'un motcle
@@ -304,7 +315,7 @@ class MCCOMPO(I_OBJECT.OBJECT):
         # On cherche s'il existe deja un mot cle de meme nom
         old_obj = self.getChild(objet.nom,restreint = 'oui')
         if not old_obj :
-            # on normalize l'objet
+            # on normalize l'objet --> Ihm I_MCFACT ou self
             objet=objet.normalize()
             # Le mot cle n'existe pas encore. On l'ajoute a la position
             # demandee (pos)
index 4665aec639b3524ad9c2f6f3be39e3e09a1f63ab..f987ed9eaf318a0a931cb54b35b4596c6ebc190c 100644 (file)
@@ -145,8 +145,8 @@ class JDCNode():
             posDansArbre+=c.item.longueurDsArbreAvecConsigne()
 
         if not trouve : print ('browser : souci au add *************************')
-        if debug : print  ('posDansSelf', posDansSelf)
-        if debug : print  ('posDansArbre', posDansSelf)
+        if debug : print  ('uuuu posDansSelf', posDansSelf)
+        if debug : print  ('posDansArbre', posDansArbre)
 
         if self.children[posDansSelf].item.nature == 'MCBLOC' : laListe=self.children[posDansSelf].item.getDicoForFancy()
         elif self.children[posDansSelf].item.nature == 'MCList' : laListe=self.children[posDansSelf].item.getDicoForFancy()
@@ -199,13 +199,17 @@ class JDCNode():
     #------------------------------------------
         """ Construit la liste des enfants de self """
         """ Se charge de remettre les noeuds Expanded dans le meme etat """
-        # print ("*********** buildChildren ",self,self.item, self.item.nom,self.children)
-        # print ("*********** buildChildren ",self,self.item, self.item.nom)
+        debug=0
+        if debug : print ("*********** buildChildren ",self,self.item, self.item.nom,self.children)
+        if debug : print ("*********** buildChildren ",self,self.item, self.item.nom)
 
 
         self.children = []
         self.childrenItemComplete = []
         sublist = self.item._getSubList()
+        if debug :
+           print ('sublist : ')
+           for s in sublist : print (s.nom)
         ind=0
 
         # si le faux noeud graphique existe deja on ne le recree pas
@@ -220,7 +224,7 @@ class JDCNode():
  
         self.childrenItemComplete=self.construitChildrenComplete()
 
-        #print ("fin *********** buildChildren ",self,self.item, self.item.nom, self.children)
+        if debug : print ("fin *********** buildChildren ",self,self.item, self.item.nom, self.children)
 
      
     def construitChildrenComplete(self):
@@ -256,14 +260,13 @@ class JDCNode():
            Si pos vaut None, on le place a la position du catalogue.
            Attention a la delegation et aux dictionnaires 
         """
-        #print ("************** appendChild ",self.item.getLabelText(), pos )
-        #import traceback
-        #traceback.print_stack()
+        debug=1
+        if debug : print ("************** appendChild ",self.item.getLabelText(), pos, name )
 
-      
         if self.item.nature != 'JDC' : dictMCVenantDesBlocs=self.item.object.dictMCVenantDesBlocs
         else : dictMCVenantDesBlocs={}
 
+        if debug : print ("dictMCVenantDesBlocs" , dictMCVenantDesBlocs)
         if name in dictMCVenantDesBlocs  :
         # cas d un MC sous un bloc
             mcPere = self.item.object.dictMCVenantDesBlocs[name]
@@ -274,12 +277,15 @@ class JDCNode():
                 elif type(pos)  == object : index = mcPere.getIndex(pos) +1 # pos est un item. Il faut inserer name apres pos
                 elif type(name) == object : index = mcPere.getIndexChild(name.nom)
                 elif self.item.nature != 'JDC' : index = mcPere.getIndexChild(name)
-                else : return None
+                else : index = self.item.getIndexChild(name)
+                #else : return None
             except :
                 txt=' Impossible d ajouter {} en position {}'.format(name, pos)
                 self.editor.afficheInfos(txt,'rouge')
                 return None
-            obj = mcPere.addEntite(name,pos)
+            if debug : print ('name : ', name, ' a pour index : ', index)
+            obj = mcPere.addEntite(name,index)
+            if debug : print ('mcPere', mcPere.nom, mcPere.mcListe)
         else : 
             try :
                 if   pos == 'first'       : index = 0
@@ -288,14 +294,17 @@ class JDCNode():
                 elif type(pos)  == object : index = self.item.getIndex(pos) +1 # pos est un item. Il faut inserer name apres pos
                 elif type(name) == object : index = self.item.getIndexChild(name.nom)
                 elif self.item.nature != 'JDC' : index = self.item.getIndexChild(name)
-                else : return None
+                else : index = self.item.getIndexChild(name)
+                #else : return None
             except :
                 txt=' Impossible d ajouter {} en position {}'.format(name, pos)
                 self.editor.afficheInfos(txt,'rouge')
                 return None
-            obj = self.item.addItem(name,index) # emet le signal 'add'
+            if debug : print ('name : ', name, ' a pour index : ', index)
+            obj = self.item.addEntite(name,index) # emet le signal 'add'
         
         if not obj : return None
+        if debug : print ('obj', obj.name, obj.mcListe)
         self.updateOptionnels()
         return True
         #return child.getIdUnique()
index 0bffe940895e18f0fc7235fc7757d45a2d97e3ab..c14b4484bedd72d64288aeb86effa9b806c87fbd 100644 (file)
@@ -34,7 +34,8 @@ class Node(browser.JDCNode,typeNode.PopUpMenuNodePartiel):
         """
             Methode externe pour la destruction de l'objet associe au noeud
         """
-        print ('******* mcfact :_appel de delete _______', self, self.vraiParent, self.item.nature)
+        debug = 0
+        if debug : print ('******* mcfact :_appel de delete _______', self, self.vraiParent, self.item.nature)
         if len(self.vraiParent.item._object) == 1 :
              treeParent=self.vraiParent.treeParent
              ret,commentaire=self.vraiParent.treeParent.item.suppItem(self.vraiParent.item)
@@ -126,9 +127,9 @@ class FACTTreeItem(Objecttreeitem.ObjectTreeItem):
         self.sublist=sublist
         return self.sublist
 
-    def addItem(self,name,pos):
-        objet = self.object.addEntite(name,pos)
-        return objet
+    #def addItem(self,name,pos):
+    #    objet = self.object.addEntite(name,pos)
+    #    return objet
 
     def suppItem(self,item) :
         """
index 1b26b568076cf52d081c78ac275653105e14eae8..2658a10fe272a569a5681245b15b99d0236ce14b 100644 (file)
@@ -66,9 +66,9 @@ class JDCTreeItem(Objecttreeitem.ObjectTreeItem):
             return "ast-red-square"
 
 
-    def addItem(self,name,pos):
-        cmd = self._object.addEntite(name,pos)
-        return cmd
+    #def addItem(self,name,pos):
+    #    cmd = self._object.addEntite(name,pos)
+    #    return cmd
 
     def suppItem(self,item) :
         # item             = item de l'ETAPE a supprimer du JDC
index 72bb6649daa5dce3159c82bd679cd3e1dc203e85..700a3383421d8b2cb8a4b3871a5941d15c10a6a1 100644 (file)
@@ -244,13 +244,12 @@ class MCListTreeItem(Objecttreeitem.SequenceTreeItem,compofact.FACTTreeItem):
     def getCopieObjet(self):
         return self._object.data[0].copy()
 
-    def addItem(self,obj,pos):
-        print ("compomclist.addItem",obj,pos)
-        if len(self._object) <= 1:
-            return compofact.FACTTreeItem.addItem(self,obj,pos)
-
-        o= self.object.addEntite(obj,pos)
-        return o
+    #def addItem(self,obj,pos):
+    #    print ("compomclist.addItem",obj,pos)
+    #    if len(self._object) <= 1:
+    #        return compofact.FACTTreeItem.addItem(self,obj,pos)
+    #    o = self.object.addEntite(obj,pos)
+    #    return o
 
     def suppItem(self,item):
         """
index 2881e52948e614b9c4b5997e1c971299aa42ad53..fe4bb67680cf22dd62e896d5e110d6eb1b4474c1 100644 (file)
@@ -122,9 +122,9 @@ class EtapeTreeItem(Objecttreeitem.ObjectTreeItem):
    #     else:
    #        return ""
 
-    def addItem(self,name,pos):
-        mcent = self._object.addEntite(name,pos)
-        return mcent
+   # def addItem(self,name,pos):
+   #     mcent = self._object.addEntite(name,pos)
+   #     return mcent
 
 
     def suppItem(self,item) :
@@ -154,11 +154,13 @@ class EtapeTreeItem(Objecttreeitem.ObjectTreeItem):
         """
            Reactualise la liste des items fils stockes dans self.sublist
         """
-        if self.isActif():
-            liste=self.object.mcListe
-        else:
-            liste=[]
+        debug=0
+        if self.isActif(): liste=self.object.mcListe
+        else: liste=[]
 
+        
+        if debug : print ('getSubList, liste', liste)
+        if debug : print ('getSubList, sublist', self.sublist)
         sublist=[None]*len(liste)
         # suppression des items lies aux objets disparus
         for item in self.sublist:
@@ -171,6 +173,10 @@ class EtapeTreeItem(Objecttreeitem.ObjectTreeItem):
 
         # ajout des items lies aux nouveaux objets
         pos=0
+        if debug : 
+           print ('-------------------------')
+           for obj in liste : print (obj.nom)
+           print ('-------------------------')
         for obj in liste:
             if sublist[pos] is None:
                 # nouvel objet : on cree un nouvel item
index 4f1e7ba973b752aa105a9ffb974a79f65d13d44f..8d77cda467d913157553dd98a4b392a61de49815 100644 (file)
@@ -258,6 +258,7 @@ Causes possibles :
 
         except NameError as e:
             etype, value, tb = sys.exc_info()
+            print (etype, value,)
             l = traceback.extract_tb(tb)
             s = traceback.format_exception_only("Erreur de nom", e)[0][:-1]
             msg = "erreur de syntaxe,  %s ligne %d" % (s, l[-1][1])