]> SALOME platform Git repositories - tools/eficas.git/commitdiff
Salome HOME
modif bloc
authorpascale.noyret <pascale.noyret@edf.fr>
Tue, 26 Oct 2021 07:56:35 +0000 (09:56 +0200)
committerpascale.noyret <pascale.noyret@edf.fr>
Tue, 26 Oct 2021 07:56:35 +0000 (09:56 +0200)
Editeur/Objecttreeitem.py
Ihm/I_MCBLOC.py
Ihm/I_OBJECT.py
InterfaceWeb/browser.py
InterfaceWeb/compomclist.py
WebTest/web_tres_simple_avec_2Procs.comm
testFlask/connectEficas.py

index 6f79ad8e446c478ea39d914293927ab21b6b8f34..cbdef924a16b4b830f1cf432afd3034604810341 100644 (file)
@@ -167,12 +167,14 @@ class ObjectTreeItem(TreeItem,Delegate):
         self.init()
         # on met le meme id au noeud et a l objet
         self.idUnique=uuid1().hex
+
         if self._object.nature == 'MCList' and len(self._object.data) == 1 :
             self._object.data[0].idUnique=self.idUnique
             if hasattr (self._object.data[0],'idUnique') : self._object.data[0].remplaceId = self._object.data[0].idUnique
             else : self._object.data[0].remplaceId = None
         if hasattr (self._object,'idUnique') : self._object.remplaceId = self._object.idUnique
         else : self._object.remplaceId = None
+
         self._object.idUnique=self.idUnique
         # Ici on teste si Web
         if hasattr (self.appliEficas,'dicoIdNode') : self.appliEficas.dicoIdNode[self.idUnique]=self
@@ -452,6 +454,7 @@ class ObjectTreeItem(TreeItem,Delegate):
            Cette methode, globale pour les objets de type item, permet de construire et de retourner un objet
            de type item associe a l'object passe en argument.
         """
+        if labeltext == 'b1 :' :print ('---------------makeObjecttreeitem', labeltext,object)
         return makeObjecttreeitem(appliEficas,labeltext,object,setFunction)
 
     #def __del__(self):
index c96a9f80f6e43934cc80d70863dca98fd28b3187..402f924d029390f4e18bbf8d30a285d4c4c41618 100644 (file)
@@ -23,3 +23,13 @@ class MCBLOC(I_MCCOMPO.MCCOMPO):
 
     def getNomDsXML(self):
         return self.parent.getNomDsXML()
+
+    def getDicoForFancy(self):
+        listeNodes=[]
+        for obj in self.mcListe:
+             lesNodes=obj.getDicoForFancy()
+             if not (isinstance(lesNodes,list)) : listeNodes.append(lesNodes)
+             else :
+               for leNode in lesNodes : listeNodes.append(leNode)
+        return listeNodes
+
index a6b6c02996d10251d0d950d24f9cb42733d3fa44..2a35cd5fd91f1f6dd9fd2c119579870788d281de 100644 (file)
@@ -215,7 +215,8 @@ class OBJECT:
         monDico['title']=leNom
         monDico['key']=self.idUnique
         monDico['classeAccas']=self.nature
-        if self.nature == 'MCLIST': monDico['validite']=None
+        if   self.nature == 'MCLIST': monDico['validite']=None
+        elif self.nature == 'MCBLOC': monDico['validite']=None
         else : monDico['validite']=self.getValid()
         listeNodes=[]
         for obj in self.mcListe:
index 743b80a26bff57d78a96c12d8bfbefbca000be39..7edbcb589ed4a6dbc71a1215d3619798858ebd7f 100644 (file)
@@ -164,21 +164,26 @@ class JDCNode():
         #print ('appel de propageValide pour ', self.item.nom, validite,self.oldValidite)
         self.editor.connecteur.toWebApp('propageValide',self.item.idUnique, validite)
 
-    def onAdd(self,ajout):
+    def onAddV0(self,ajout):
     #--------------------------
     # bien tester avec les blocs
-        #print ('on add', '________ object', object)
+    # En fait, on a toujours ajour d 1 seul MC donc on est toujours dans la creation
+        print ('on add', '________ object', object , ' dans ', self.item.nom)
         avantChildren=self.children
         indexAvant=0
         indexApres=0
         reconstruitMoi=False
+        if self.item.nom == 'MonProc2' : print ('avant Children ', avantChildren)
+           
         self.buildChildren()
+        if self.item.nom == 'MonProc2' : print (' Children ', self.children)
         if len(ajout) > 1 : 
            reconstruitMoi=False
         elif len(avantChildren)+1 == len(self.children):
             for i in range(len(avantChildren)): 
-                id1=avantChildren[indexAvant].item.idUnique
-                id2=self.children[indexApres].item.idUnique
+                print (avantChildren[indexAvant].item)
+                id1=avantChildren[indexAvant].getIdUnique()
+                id2=self.children[indexApres].getIdUnique()
                 if id1 == id2 :
                     indexAvant += 1
                     indexApres += 1
@@ -189,8 +194,8 @@ class JDCNode():
             reconstruitMoi=False
             if indexAvant == len(avantChildren) : pos = indexApres 
             while (indexAvant < len(avantChildren)):
-                id1=avantChildren[indexAvant].idUnique
-                id2=self.children[indexApres].idUnique
+                id1=avantChildren[indexAvant].getIdUnique()
+                id2=self.children[indexApres].getIdUnique()
                 if id1 == id2 :
                     indexAvant += 1
                     indexApres += 1
@@ -199,12 +204,31 @@ class JDCNode():
         else : reconstruitMoi=True
             
         if reconstruitMoi : 
-            print ('Remplace', self.item.idUnique, self.item.remplaceId)
-            self.editor.connecteur.toWebApp('RemplacementNode',self.item.remplaceId,self.item.idUnique,self.item.getDicoForFancy()) # faut il ajouter pos
+            print ('-------------- Remplace', self.item.idUnique, self.item.remplaceId)
+            self.editor.connecteur.toWebApp('remplacementNode',self.item.remplaceId,self.item.getIdUnique(),self.item.getDicoForFancy()) # faut il ajouter pos
         else : 
-            print ('Add', self.item.idUnique)
-            if (ajout[0] != self.children[pos].item._object ) : print ('souci au add *************************')
-            self.editor.connecteur.toWebApp('creationNodeFils',self.item.idUnique,self.children[pos].item.getDicoForFancy(),pos)
+            print ('-------------- Add', self.item.idUnique)
+            self.editor.connecteur.toWebApp('creationNodeFils',self.item.idUnique(),self.children[pos].item.getDicoForFancy(),pos)
+
+    def onAdd(self,ajout):
+    #-----------------------
+        print ('on add', '________ ajout', ajout , ' dans ', self.item.nom)
+        self.buildChildren()
+        # si on a un copie multiple
+
+        if len(ajout) > 1 : 
+            self.editor.connecteur.toWebApp('remplacementNode',self.item.remplaceId,self.item.idUnique(),self.item.getDicoForFancy()) 
+            return
+        mcAjoute= ajout[0]  
+        pos = 0; trouve=0
+        for c in self.children :
+            if c.item._object == mcAjoute : 
+                 pos+=1
+                 trouve=1
+                 break
+        if not trouve : print ('souci au add *************************')
+        self.editor.connecteur.toWebApp('appendChild',self.item.idUnique,self.children[pos].item.getDicoForFancy(),pos)
 
     def onSupp(self,object):
     #-----------------------
@@ -213,10 +237,13 @@ class JDCNode():
     def onRedessine(self):
     #----------------------
         print ('on Redessine pour ', self)
-
     #---------------------
     #    self.affichePanneau()
 
+    def getIdUnique(self):
+    #---------------------
+    # surcharge pour mcliste
+       return self.item.idUnique
 
     def buildChildren(self,posInsertion=10000):
     #------------------------------------------
index 5d74def083b7936903b4c02dd7cfec5a951403ad..e6b2cc9f5868c976a4f8b2823acdd79be171b139 100644 (file)
@@ -72,6 +72,10 @@ class Node(browser.JDCNode,typeNode.PopUpMenuNodeMinimal):
         self.parent().buildChildren()
         return child
 
+    def getIdUnique(self):
+    #---------------------
+       return 3 
+
 
 
 class MCListTreeItem(Objecttreeitem.SequenceTreeItem,compofact.FACTTreeItem):
index ae56a41944ce102611234d6377535e13490e4471..308b34cd5e6e4728301ddb6aba6426c40f99d6e3 100644 (file)
@@ -2,4 +2,5 @@
 MonProc(param1=2.0,);
 
 MonProc(param1=3.0,);
-#CHECKSUM:d68d2f6ef67b2266c1a22c4c29ca5d7a  -:FIN CHECKSUM
\ No newline at end of file
+
+#CHECKSUM:e6a300dc9063eaaa855d6c43d8ed2eaf  -:FIN CHECKSUM
index 0335164be0348c1193c04d088f5f63d907cf417e..8888adfdf7054e64a676b357d5d66df20d79097d 100644 (file)
@@ -106,9 +106,12 @@ class accasConnecteur :
          doit-on mettre l ancienne valeur en retour qui serait utile si validité = Non 
          """ 
          monNode=self.monEditeur.getNodeById(id)
+         #print (' change Valeur', monNode)
          (idUnique, commentaire, validite)=monNode.fauxNoeudGraphique.traiteValeurSaisie(valeur)
-         print ('retourChangeValeur',id, commentaire, validite )
-         self.toWebApp('retourChangeValeur',id, commentaire, validite )
+         print ('retour ChangeValeur',idUnique, commentaire, validite )
+         return monNode.fauxNoeudGraphique.traiteValeurSaisie(valeur)
+
+         #self.toWebApp('retourChangeValeur',id, commentaire, validite ))
 
       
 
@@ -153,18 +156,17 @@ if __name__ == "__main__":
 
     monEficasConnecteur.litFichierComm('../WebTest/web_tres_simple_avec_2Procs.comm')
     d=monEficasConnecteur.getDicoForFancy(monEficasConnecteur.monEditeur.tree.racine)
-    #pprint.pprint(d)
-    print ('\n')
-
-    print ('\n')
-   
-   
+    pprint.pprint(d)
     #pprint.pprint (monEficasConnecteur.getDicoObjetsCompletsPourTree(monEficasConnecteur.monEditeur.tree.racine))
     idRacine=monEficasConnecteur.monEditeur.tree.racine.item.idUnique
     r=monEficasConnecteur.appendChild(idRacine,'MonProc2','last')
     d=monEficasConnecteur.getDicoForFancy(monEficasConnecteur.monEditeur.tree.racine)
+    #pprint.pprint(d)
     i=d['children'][2]['children'][0]['key']
     r=monEficasConnecteur.changeValeur(i,'65')
+    i=d['children'][2]['children'][0]['key']
+    r=monEficasConnecteur.changeValeur(i,'2')
+    #print (r)
     d=monEficasConnecteur.getDicoForFancy(monEficasConnecteur.monEditeur.tree.racine)
     pprint.pprint(d)