]> SALOME platform Git repositories - modules/eficas.git/commitdiff
Salome HOME
*** empty log message ***
authorPascale Noyret <pascale.noyret@edf.fr>
Thu, 12 Feb 2009 09:58:30 +0000 (09:58 +0000)
committerPascale Noyret <pascale.noyret@edf.fr>
Thu, 12 Feb 2009 09:58:30 +0000 (09:58 +0000)
Accas/__init__.py
Cuve2dg/Cuve2dg_Cata_VPN.py
InterfaceQT4/browser.py
InterfaceQT4/monFonctionPanel.py
InterfaceQT4/politiquesValidation.py
Noyau/N_VALIDATOR.py

index 2241fee151ba5db5b4c9e6216ef09112ceae19dd..e3b2deeac385dfc98c8bf57a18cd8c10c2c7d173 100644 (file)
@@ -83,6 +83,7 @@ from A_VALIDATOR import OrVal,AndVal
 from A_VALIDATOR import OrdList,NoRepeat,LongStr,Compulsory
 from A_VALIDATOR import RangeVal, EnumVal, TypeVal, PairVal
 from A_VALIDATOR import CardVal, InstanceVal
+from A_VALIDATOR import VerifTypeTuple
 
 # On remplace la factory des validateurs initialement dans Noyau par celle
 # de A_VALIDATOR
index 1cd34a01d981268091f32c6a7d0c117e1879d050..852c6efde0435ff6ab14b58d4fb83a52f4899fd6 100644 (file)
@@ -99,10 +99,11 @@ OPTIONS = PROC ( nom = "OPTIONS",
                          typ = Tuple(2),
                          max = "**",
                          fr = "Liste des instants ",
+                         validators=VerifTypeTuple(('R','R')),
                          ),
 
   ListeInstants2 = SIMP ( statut = "o",
-                         typ = Tuple(3),
+                         typ = Tuple(2),
                          max = "**",
                          fr = "Liste des instants ",
                          ),
index f742185a8ac4dbb616e3b35548bccba6cfbf7484..5922297e194706436354d05046e51a2ce0b8f747 100644 (file)
@@ -341,16 +341,6 @@ class JDCNode(QTreeWidgetItem):
             for child in self.children:
                 if child.isHidden() == false : child.update_texte()
         
-#    def update_valid(self) :
-#        """Cette methode a pour but de mettre a jour la validite du noeud
-#           et de propager la demande de mise a jour a son Parent
-#        """
-#        #print "NODE update_valid", self.item.GetLabelText()
-#        self.update_node_valid()
-#        try :
-#          self.treeParent.update_valid()            
-#        except:
-#          pass
  
     def doPasteCommande(self,objet_a_copier):
         """
index 999587cb637294121821492dc0ac6fa2e6af243b..0909093ff16900967784bc02df0385d97cbbe1aa 100644 (file)
@@ -121,6 +121,7 @@ class MonFonctionPanel(MonPlusieursBasePanel):
         for valeur in self.listeValeursCourantes :
                 listeVal.append(valeur)
         if self.node.item.wait_tuple()== 1 :
+             indexListe = index
              validite,comm,comm2,listeRetour=self.politique.AjoutTuple(liste,index,listeVal)
         else :
              validite,comm,comm2,listeRetour=self.politique.AjoutValeurs(liste,index,listeVal)
@@ -137,7 +138,6 @@ class MonFonctionPanel(MonPlusieursBasePanel):
               listeATraiter=self.DecoupeListeValeurs(listeRetour)
            for valeur in  listeATraiter :
                str_valeur=str(valeur)
-               print str_valeur
                self.LBValeurs.insertItem(index,str_valeur)
                item=self.LBValeurs.item(index)
                item.setSelected(1)
index 47a8b5e9cb788d4bd745e45263e9cdb62247846c..062f9a870cce77db7a569f16586a714264561857 100644 (file)
@@ -168,12 +168,12 @@ class PolitiquePlusieurs:
          valide=self.node.item.valide_item(valeurTuple)
          if not valide :
             try :
-                valeur,valide=self.node.item.eval_valeur(valeur)
-                valide,commentaire = self.node.item.object.verif_type(valeur)
+                valeur,valide=self.node.item.eval_valeur(valeurTuple)
+                valide = self.node.item.valide_item(valeur)
             except :
                 pass
          if not valide:
-            commentaire="Valeur "+str(valeur)+ " incorrecte : ajout à la liste refusé"
+            commentaire="Valeur "+str(valeurTuple)+ " incorrecte : ajout à la liste refusé"
             commentaire2=self.node.item.info_erreur_item()
             return valide,commentaire,commentaire2,listeRetour
 
@@ -186,7 +186,5 @@ class PolitiquePlusieurs:
             if len(listecourante) + 1 >= max :
                commentaire="La liste a déjà atteint le nombre maximum d'éléments,ajout refusé"
                return valide,commentaire,commentaire2,listeRetour
-         listecourante.insert(index,valeurTuple)
-         index=index+1
          listeRetour.append(valeurTuple)
          return valide,commentaire,commentaire2,listeRetour
index 61a79a4ce4d679491a1d88898cda6123a3273147..21fa1f26744035957105650083321082449c61f9 100644 (file)
@@ -1213,3 +1213,59 @@ class InstanceVal(ListVal):
           if not isinstance(valeur,self.aClass): return 0
           return 1
 
+class VerifTypeTuple(Valid,ListVal) :
+      def __init__(self,typeDesTuples):
+          self.typeDesTuples=typeDesTuples
+          Valid.__init__(self)
+          self.cata_info=""
+
+      def info(self):
+          return ": verifie les types dans un tuple"
+
+      def info_erreur_liste(self):
+          return "Les types entres  ne sont pas permis"
+
+      def default(self,valeur):
+          #if valeur in self.liste : raise ValError("%s est un doublon" % valeur)
+          return valeur
+
+      def is_list(self) :
+          return 1
+
+      def convert_item(self,valeur):
+          if len(valeur) != len(self.typeDesTuples):
+             raise ValError("%s devrait etre de type  %s " %(valeur,self.typeDesTuples))
+          for i in range(len(valeur)) :
+              ok=self.verifType(valeur[i],self.typeDesTuples[i])
+              if ok!=1 : 
+                 raise ValError("%s devrait etre de type  %s " %(valeur,self.typeDesTuples))
+          return valeur
+
+      def verif_item(self,valeur):
+          try :
+               if len(valeur) != len(self.typeDesTuples): return 0
+                for i in range(len(valeur)) :
+                    ok=self.verifType(valeur[i],self.typeDesTuples[i])
+                    if ok!=1 : return 0
+          except :
+                return 0
+          return 1
+
+      def verifType(self,valeur,type_permis):
+          if type_permis == 'R':
+             if type(valeur) in (types.IntType,types.FloatType,types.LongType):return 1
+          elif type_permis == 'I':
+             if type(valeur) in (types.IntType,types.LongType):return 1
+          elif type_permis == 'C':
+             if self.is_complexe(valeur):return 1
+          elif type_permis == 'TXM':
+             if type(valeur)==types.StringType:return 1
+          return 0
+
+      def verif(self,valeur):
+          if type(valeur) in (types.ListType,types.TupleType):
+             liste=list(valeur)
+             for val in liste:
+                if self.verif_item(val)!=1 : return 0
+             return 1
+