]> SALOME platform Git repositories - modules/eficas.git/commitdiff
Salome HOME
pour verifexistence
authorPascale Noyret <pascale.noyret@edf.fr>
Fri, 16 Jul 2010 14:47:35 +0000 (14:47 +0000)
committerPascale Noyret <pascale.noyret@edf.fr>
Fri, 16 Jul 2010 14:47:35 +0000 (14:47 +0000)
InterfaceQT4/browser.py
InterfaceQT4/monPlusieursIntoPanel.py
InterfaceQT4/qtSaisie.py
Noyau/N_VALIDATOR.py

index 2f2d3d5cbe666198ca238957a47d40ea456befee..1a97d5c7e4a12f21e48a943a1d55373f965f41a2 100644 (file)
@@ -79,7 +79,6 @@ class JDCTree( QTreeWidget ):
            item.menu.exec_(coord)            
             
     def handleOnItem(self,item,int):
-        item.affichePanneau()
         self.itemCourrant=item
         #try :
         if 1 :
@@ -89,6 +88,7 @@ class JDCTree( QTreeWidget ):
         #except:
         else:
             pass
+        item.affichePanneau()
 
 
 # type de noeud
@@ -307,7 +307,6 @@ class JDCNode(QTreeWidgetItem):
 #        
 #    #------------------------------------------------------------------
     def onValid(self):        
-        #print "onValid ", self, " ", self.item.nom
         if self.item.nom == "VARIABLE" and self.item.isvalid():
            self.item.jdc.recalcule_etat_correlation()
         if hasattr(self.item,'forceRecalcul'):
index 55dab33394d14e9b26956a45719e6d2a459c7a91..b1a7da7bc81877fa523c263823a5649fa5e4650b 100644 (file)
@@ -63,10 +63,10 @@ class MonPlusieursIntoPanel(DPlusInto,QTPanel,SaisieValeur):
         QTPanel.__init__(self,node,parent)
         DPlusInto.__init__(self,parent,fl)
         self.politique=PolitiquePlusieurs(node,parent)
+        self.InitCommentaire()
         SaisieValeur.BuildLBValeurs(self)
         self.listeValeursCourantes=self.node.item.GetListeValeurs()
         SaisieValeur.RemplitPanel(self,self.listeValeursCourantes)
-        self.InitCommentaire()
         self.connecterSignaux()
 
   def connecterSignaux(self) :
index a01012aed47d38304bcc77d37963c76a7727da85..b82e1190c9702fc570a86fe9fd68eeaf4b7a1c82 100644 (file)
@@ -63,9 +63,21 @@ class SaisieValeur:
 
   def RemplitPanel(self,listeDejaLa=[]):
         self.listBoxVal.clear()
-        if hasattr(self.node.item.definition.validators,'set_liste'):
-            self.node.item.definition.validators.set_liste(self.node.item)
-            if self.node.item.isvalid() == 0 : listeDejaLa=[]
+        # Traitement particulier pour le validator VerifExistence
+        # dont les valeurs possibles peuvent changer : into variable
+        if hasattr(self.node.item.definition.validators,'set_MCSimp'):
+            obj=self.node.item.getObject()
+            self.node.item.definition.validators.set_MCSimp(obj)
+            if self.node.item.isvalid() == 0 : 
+               liste=[]
+               for item in listeDejaLa:
+                   if self.node.item.definition.validators.verif_item(item)==1:
+                      liste.append(item)
+                   self.node.item.set_valeur(liste)
+                   self.BuildLBValeurs()
+                   self.listeValeursCourantes=liste
+                   self.editor.affiche_infos("Attention, valeurs modifiees", Qt.red)
+               listeDejaLa=liste
         lChoix=self.node.item.get_liste_possible(listeDejaLa)
         for valeur in lChoix :
             self.listBoxVal.addItem( str(valeur) ) 
index 0e06870a315ef4057a806888af6debefcd8cc5f3..7a1c67e72a343ece81392d410464691644a661a3 100644 (file)
@@ -803,6 +803,7 @@ class AndVal(Valid):
           return chaine
 
       def verif(self,valeur):
+          print "je suis dans le verif du AndVal"
           for validator in self.validators:
               v=validator.verif(valeur)
               if not v :
@@ -1305,28 +1306,19 @@ class VerifExiste(ListVal) :
           self.niveauVerif=niveauVerif
           self.MCSimp=None
           self.listeDesFreres=()
-          self.fonctions=('set_liste','verifie_liste','set_MCSimp')
-
-      def set_liste(self,item):
-          #on cherche le bon niveau de l arbre
-          k=self.niveauVerif
-          obj=item.getObject()
-          while (k != 0) :
-             parent=obj.parent
-             obj=parent
-             k=k-1
-         #on met la liste à jour
-          self.listeDesFreres=parent.liste_mc_presents()
+          self.fonctions=('verifie_liste','set_MCSimp')
 
       def is_list(self):
           return 1
 
       def verifie_liste(self,liste):
+          self.set_MCSimp(self.MCSimp)
           for item in liste :
             if not( item in self.listeDesFreres) : return 0
           return 1
 
       def verif_item(self,valeur):
+          self.set_MCSimp(self.MCSimp)
           if valeur in self.listeDesFreres : return 1
           return 0
 
@@ -1342,7 +1334,6 @@ class VerifExiste(ListVal) :
           parent.forceRecalcul=self.niveauVerif
           self.listeDesFreres=parent.liste_mc_presents()
 
-
       def convert_item(self,valeur):
           if valeur in self.listeDesFreres : return valeur
           raise ValError(str(valeur)+" n est pas dans " + str(self.listeDesFreres))