]> SALOME platform Git repositories - tools/eficas.git/commitdiff
Salome HOME
changement nom des fact pour qu ils soient corrects
authorPASCALE NOYRET <pascale.noyret@edf.fr>
Thu, 17 Feb 2022 17:34:19 +0000 (18:34 +0100)
committerPASCALE NOYRET <pascale.noyret@edf.fr>
Thu, 17 Feb 2022 17:34:19 +0000 (18:34 +0100)
Editeur/Objecttreeitem.py
Ihm/I_MCFACT.py
Ihm/I_MCLIST.py
Ihm/I_MCSIMP.py
Ihm/I_OBJECT.py
InterfaceWeb/browser.py
InterfaceWeb/compofact.py
InterfaceWeb/compomclist.py

index 0a845e44c2af2496804c93e8d44f0d8569cf90f3..3b8b26fa301d60ddbc704e4f3e37be71c52922c6 100644 (file)
@@ -60,7 +60,7 @@ class TreeItem(object):
     # itemNode(treeOrNode,item,command,rmenu)
     # ou treeOrNode est le noeud parent, item est l'item associe
     # command est une fonction python appelee sur selection graphique
-    # du noeud et rmenu est une fonction python appelee sur click droit sur le noeud
+    # du noeud (pas utilisee) et rmenu est une fonction python appelee sur click droit sur le noeud
     itemNode=None
 
     def __init__(self):
@@ -484,9 +484,6 @@ class SequenceTreeItem(ObjectTreeItem):
         else:
             return "ast-yel-los"
 
-    def ajoutPossible(self):
-        return self._object.ajoutPossible()
-
     def getIndex(self,child):
         """ Retourne le numero de child dans la liste des enfants de self """
         return self._object.getIndex(child.getObject())
@@ -510,7 +507,6 @@ class SequenceTreeItem(ObjectTreeItem):
             return 0
 
     def getSubList(self):
-        print ('auriouuzeeeeeeeeeeeeeeeeeeeeeeeeee')
         isublist=iter(self.sublist)
         liste=self._object.data
         iliste=iter(liste)
index 1e656bc3bce0eb04ca8b55f8961d769aff9a2bd3..53bcc72f747be5a8e471b6a9987f300df9e1d194 100644 (file)
@@ -30,16 +30,17 @@ class MCFACT(I_MCCOMPO.MCCOMPO):
             Retourne 1 si le mot-cle facteur self peut etre repete
             Retourne 0 dans le cas contraire
         """
-        if self.definition.max > 1:
-            # marche avec '**'
+        objet = self.parent.getChild(self.nom)
+        lenDejaLa=len(objet)
+        if self.definition.max > 1 and lenDejaLa < self.definition.max :
             return 1
         else :
             return 0
 
     def isOblig(self):
-        if self.definition.statut != 'o' : return 0
+        if self.definition.statut != 'f' : return 0
         objet = self.parent.getChild(self.nom)
-        if len(objet) > 1 : return 0
+        if len(objet) > self.definition.min : return 0
         else : return 1
 
     def getMinMax(self):
index 7d36b474a1bf61861fd61250f0a561c793f48939..956bd5d066d6e462c37c291d7d35b5b474332c6a 100644 (file)
@@ -56,9 +56,9 @@ class MCList:
            Indique si l'objet est repetable.
            Retourne 1 si le mot-cle facteur self peut etre repete
            Retourne 0 dans le cas contraire
+           Appele uniquement pour le 1er fact de la liste
         """
-        if self.data[0].definition.max > 1:
-            # marche avec '**'
+        if self.data[0].definition.max > 1 :
             return 1
         else :
             return 0
index e9491592dc1b0cdcdf710305cd948844d0af0256..12db3549c6c2ebadbe3c8a473e85aa19f9946407 100644 (file)
@@ -72,9 +72,6 @@ class MCSIMP(I_OBJECT.OBJECT):
     def getDicoObjetsCompletsPourTree(self):
         #print ('MCSIMP getDicoObjetsCompletsPourTree ', self)
         monDico={}
-        print('-----')
-        print(self.getNomClassWeb())
-        print('-----')
 #        leTexte="<span class='" + self.getNomClassWeb() + "' id='" +self.idUnique+ "'>" + self.nom + '  ' + str(self.val) + "</span>"
         leTexte= "<span class='" + self.getNomClassWeb() + "' id='" +self.idUnique+ "'>" + \
             "<label class='form-check-label'>" + self.nom + \
index 8d993f38cda63e479908e1438e733c14a4db7ef8..cc9baec82f1e1d0fb4a89dd1a63bb02e77b59317 100644 (file)
@@ -239,6 +239,7 @@ class OBJECT:
         return monDico
 
     def getNomClassWeb(self):
+        # code mort
         laClasse=self.nature
         if self.isValid() : laClasse+='Valide'
         else : laClasse+='NonValide'
index bc8f218e45bfdd8417c432e87e67bee3e88338bc..9ba47708dc51bff370739abdd293b338ba18a0e9 100644 (file)
@@ -84,7 +84,9 @@ class JDCNode():
         self.appliEficas = treeParent.appliEficas
         self.firstAffiche = True
         self.childrenComplete=[]
-        self.oldValidite='init'
+        self.oldValidite  = 'init'
+        self.oldRepetable = 'init'
+        self.oldStatut    = 'init'
         self.item.fauxNoeudGraphique = self
         if item.nom != tr(item.nom)                           : name = str(tr(item.nom)+" :")
 
@@ -105,7 +107,7 @@ class JDCNode():
     def onValid(self):
     #-----------------
         debug=0
-        if self.treeParent.oldValidite=='init'  : self.treeParent.oldValidite='unknown'
+        #if self.treeParent.oldValidite=='init'  : self.treeParent.oldValidite='unknown'
         validite=self.item.isValid()
         if debug : print ('ds onValid', self.item.nom, self.oldValidite, validite)
         if self.oldValidite==validite : return
@@ -113,8 +115,8 @@ class JDCNode():
            self.oldValidite=validite
            if self.item.state != 'modified' :  return
         self.oldValidite=validite
-        #print ('appel de propageValide pour ', self.item.nom, validite,self.oldValidite)
         self.editor.connecteur.toWebApp('propageValide',self.getIdUnique(), validite)
+        if debug : print ('appel de propageValide pour ', self.item.nom, validite,self.oldValidite)
 
     def onAdd(self,ajout):
     #----------------------
@@ -122,7 +124,7 @@ class JDCNode():
         debug=0
         if debug : print ('on add de browser', '________ ajout', ajout, ' dans ', self.item.nom)
         if debug : print ('nature de  l item', self.item.nature)
-        if self.oldValidite=='init'  : self.oldValidite='unknown'
+        #if self.oldValidite=='init'  : self.oldValidite='unknown'
         self.buildChildren()
 
         # si on a un copie multiple --> pas gere correctement 
@@ -154,12 +156,13 @@ class JDCNode():
         posOuAjouter=posDansArbre
                
         self.editor.connecteur.toWebApp('appendChildren',ouAjouter,laListe,posOuAjouter)
+        print (laListe)
         #print ('la pos ', posOuAjouter)
         #print (' appel appendChild',self.item.idUnique,laListe,pos)
 
     def onSupp(self,suppression):
     #---------------------------
-        if self.treeParent.oldValidite=='init'  : self.treeParent.oldValidite='unknown'
+        #if self.treeParent.oldValidite=='init'  : self.treeParent.oldValidite='unknown'
         if len(suppression) > 1 : 
             print ('onSupp suppression multiple non valeur')
             return
@@ -303,7 +306,27 @@ class JDCNode():
     def updateNodeLabel(self):
     #-------------------------
         monDictPartiel={} 
-        monDictPartiel['title']=self.item.getLabelText()[0]
+        monDictPartiel['title']=self.item.getLabelText()[0][0:-1]
+        self.editor.connecteur.toWebApp('updateNodeInfo',self.getIdUnique(), monDictPartiel)
+
+    def updateRepetable(self,isRepetable):
+    #-------------------------------------
+        monDictPartiel={} 
+        monDictPartiel['repetable']=isRepetable
+        self.editor.connecteur.toWebApp('updateNodeInfo',self.getIdUnique(), monDictPartiel)
+
+    def updateStatut(self,statut):
+    #-----------------------------
+        monDictPartiel={} 
+        monDictPartiel['statut']=statut
+        self.editor.connecteur.toWebApp('updateNodeInfo',self.getIdUnique(), monDictPartiel)
+
+    def updateOptionnels(self):
+    #---------------------------
+        print ('dans updateOptionnels')
+        return
+        monDictPartiel={} 
+        monDictPartiel['infoOptionnels']=maNouvelleListeOtionnels
         self.editor.connecteur.toWebApp('updateNodeInfo',self.getIdUnique(), monDictPartiel)
 
     #def chercheNoeudCorrespondant(self,objSimp):
index f3f03beec089911cb3c0f67b52a5081f7ae315d6..31c74c8b1def5620786ab66d173c6619bb08f434 100644 (file)
@@ -36,15 +36,21 @@ class Node(browser.JDCNode,typeNode.PopUpMenuNodePartiel):
         """
         print ('******* mcfact :_appel de delete _______', self, self.vraiParent, self.item.nature)
         if len(self.vraiParent.item._object) == 1 :
-             print ('JE PASSE LA !!!!!!!!!!!!!!!!!!!!!!!')
              treeParent=self.vraiParent.treeParent
-             print (self.vraiParent.treeParent, self.vraiParent)
              ret,commentaire=self.vraiParent.treeParent.item.suppItem(self.vraiParent.item)
              if ret!=0 : treeParent.buildChildren()
              return (ret,commentaire) 
 
+     
+        obj=self.item.getObject()
+        indexFact=self.vraiParent.item._object.index(obj)
         ret,commentaire=self.vraiParent.item.suppItem(self.item)
-        if ret!=0 : self.treeParent.buildChildren()
+        if not ret : return (ret,commentaire) 
+        self.treeParent.buildChildren()
+        self.vraiParent.buildChildren()
+        for c in  self.vraiParent.children[indexFact:] :
+            c.updateNodeLabel()
+        self.treeParent.updateOptionnels()
         return (ret,commentaire) 
 
 
@@ -131,6 +137,11 @@ class FACTTreeItem(Objecttreeitem.ObjectTreeItem):
              - item = item du MOCLE a supprimer du MOCLE pere
              - item.getObject() = MCSIMP ou MCBLOC
         """
+        print ('lllllllllllllllllllllllllllllllllllllll')
+        print ('inutile -->  dans MCLIST              ')
+        print ('SVP si on passe la on le dit a Pascale')
+        print ('lllllllllllllllllllllllllllllllllllllll')
+        print (poum)
         itemobject=item.getObject()
         if itemobject.isOblig() :
             return (0, tr('Impossible de supprimer un mot-cle obligatoire '))
index fe0780b76734b8411521ac1aed7cd797a11fc161..789494ce75d0214b8db829c2a7732e9737a441a9 100644 (file)
@@ -34,26 +34,34 @@ from Noyau.N_OBJECT import ErrorObj
 class Node(browser.JDCNode,typeNode.PopUpMenuNodeMinimal):
 
 
-    def createPopUpMenu(self):
-        typeNode.PopUpMenuNodeMinimal.createPopUpMenu(self)
+    def __init__( self, treeParent, item, itemExpand=False, ancien=False ):
+    #--------------------------------------------------------------------
+        browser.JDCNode.__init__(self, treeParent, item, itemExpand,ancien)
+        # depend si le comm contient deja une liste ou si elle cree a  l ihm
+        if self.item.nature == 'MCList' :
+           self.minListe   = self.item.data[0].definition.min
+           self.maxListe   = self.item.data[0].definition.max
+           self.statutListe= self.item.data[0].definition.statut
+        else:
+           self.minListe   = self.item.definition.min
+           self.maxListe   = self.item.definition.max
+           self.statutListe= self.item.definition.statut
 
     def getIdUnique(self):
     #---------------------
-       print ('pas d iD unique pour la MCLIST')
+        print ('pas d iD unique pour la MCLIST')
 
     def onValid(self):
     #-----------------
        #print( self.item.nature)
-       if self.item.nature == 'MCFACT' : 
-           validite=self.item.isValid()
-           if self.oldValidite != validite :
-              self.editor.connecteur.toWebApp('propageValide',self.item.idUnique, validite)
-              self.oldValidite = validite
-       #   browser.JDCNode.onValid(self)
-       #   return
+        if self.item.nature == 'MCFACT' : 
+            validite=self.item.isValid()
+            if self.oldValidite != validite :
+               self.editor.connecteur.toWebApp('propageValide',self.item.idUnique, validite)
+               self.oldValidite = validite
 
-       if self.item.state != 'modified' :  return
-       self.treeParent.item.state= 'modified'
+        if self.item.state != 'modified' :  return
+        self.treeParent.item.state= 'modified'
 
     def onAdd(self,ajout):
     #----------------------
@@ -95,7 +103,21 @@ class Node(browser.JDCNode,typeNode.PopUpMenuNodeMinimal):
 
         if debug : print  (' posDansArbre ', posDansArbre , ' posDansSelf ', posDansSelf)
         self.editor.connecteur.toWebApp('appendChildren',ouAjouter,laListe,posDansArbre)
+
         if len(self.item.data) == 2 : self.children[0].updateNodeLabel()
+
+        for nodeChild in self.children : 
+           if nodeChild.item.isOblig() : newStatut ='o'
+           else : newStatut = 'f' 
+           if  newStatut != nodeChild.oldStatut : 
+               nodeChild.updateStatut(newStatut) 
+               nodeChild.oldStatut=newStatut
+           newRepetable=nodeChild.item.isRepetable()
+           if  newRepetable != nodeChild.oldRepetable : 
+               nodeChild.updateRepetable(newRepetable) 
+               nodeChild.oldRepetable=newRepetable
+           
+
         #print ('la pos ', posOuAjouter)
         #print (' appel appendChild',self.item.idUnique,laListe,pos)
 
@@ -220,12 +242,12 @@ class MCListTreeItem(Objecttreeitem.SequenceTreeItem,compofact.FACTTreeItem):
 
         if self.object.suppEntite(obj):
             if len(self._object) == 1: self.updateDelegate()
-            if len(self._object) == 1: print ('je change de delegate')
             message = "Mot-clef " + obj.nom + " supprime"
             return (1,message)
         else:
             return (0,tr('Impossible de supprimer ce mot-clef'))
 
+            
 
 import Accas
 objet = Accas.MCList