]> SALOME platform Git repositories - modules/eficas.git/commitdiff
Salome HOME
F.R: Plusieurs bugs corrigés pour arriver à écrire la première moitié
authoreficas <>
Wed, 27 Mar 2002 16:20:02 +0000 (16:20 +0000)
committereficas <>
Wed, 27 Mar 2002 16:20:02 +0000 (16:20 +0000)
F.R: du cas test de recette d'EFICAS

Editeur/appli.py
Editeur/treeitemincanvas.py
Editeur/treewidget.py
Extensions/parametre_eval.py
Ihm/I_ETAPE.py
Ihm/I_MCCOMPO.py
Ihm/I_MCLIST.py
Ihm/I_MCSIMP.py
Ihm/I_OBJECT.py

index f8b031f7a1d5aed6a8ea4dc3b33fb14e213af666..701d57660f68a20ca34341d1e81b2e6a24981401 100644 (file)
@@ -110,6 +110,7 @@ class APPLI:
         root.option_add('*background', 'grey')
         root.option_add('*foreground', 'black')
         root.option_add('*EntryField.Entry.background', 'white')
+       root.option_add('*Entry*background', 'white')
         root.option_add('*Listbox*background', 'white')
         root.option_add('*Listbox*selectBackground', '#00008b')
         root.option_add('*Listbox*selectForeground', 'white')
index 5ec26438ba59c5c6d55ee64af3c6097b064e2daf..a9f60e76f1221f0c3e8afd2ac0546d7fbaf909d5 100644 (file)
@@ -25,7 +25,7 @@ class TREEITEMINCANVAS:
       self.parent=parent
 
       self.item=Objecttreeitem.make_objecttreeitem(self.appli,self.nom,self.object)
-      self.canvas=Pmw.ScrolledCanvas(self.parent,borderframe=1)
+      self.canvas=Pmw.ScrolledCanvas(self.parent,borderframe=1,canvas_background='gray95')
       self.canvas.pack(padx=10,pady=10,fill = 'both', expand = 1)
       if not sel:
          def sel(event=None):
index a0d6554eacc6172e053c382649c465fd5ada1c63..c80538f9a01a9541d3bb739e7b897062562df5c6 100644 (file)
@@ -13,8 +13,8 @@ import fontes
 import images
 
 #
-__version__="$Name: V1_1p1 $"
-__Id__="$Id: treewidget.py,v 1.1.1.1 2001/12/04 15:38:23 eficas Exp $"
+__version__="$Name:  $"
+__Id__="$Id: treewidget.py,v 1.1.1.1 2002/03/26 09:08:45 eficas Exp $"
 #
 
 Fonte_Standard = fontes.standard
@@ -468,6 +468,7 @@ class Node :
         try:
             self.canvas.addtag_overlapping('move',bbox1[0],self.y +10,bbox1[2],bbox1[3])
         except:
+           print "Erreur dans move :"
             print self
             print self.item
             print self.item.object
@@ -493,6 +494,7 @@ class Node :
             try:
                 child.trace_ligne()
             except:
+               print "Erreur dans trace_ligne :"
                 print child
                 print child.item.object
 
index 73bf9bd6189b872f4b07b7f3b6d9b42064b97278..a968549868e33822ef99f8bb01b9971537918b1f 100644 (file)
@@ -60,6 +60,8 @@ class PARAMETRE_EVAL(parametre.PARAMETRE) :
     """
     if not val : return None
     d={}
+    val = string.strip(val)
+    if val[-1] == ';' : val = val[0:-1]
     d['EVAL'] = Accas.EVAL
     try:
         valeur = eval(val,{},d)
index 8937c11075bb2ada199d240c0f0bc11f03c87c29..d6f6f58c076cc3187552fff3434456d512222269 100644 (file)
@@ -237,6 +237,10 @@ class ETAPE(I_MCCOMPO.MCCOMPO):
       etape.mc_liste=[]
       for objet in self.mc_liste:
         new_obj = objet.copy()
+       new_obj.parent = etape
+       if hasattr(new_obj,'isMcList') :
+          if new_obj.isMCList() :
+             new_obj.init(new_obj.nom,etape)
         etape.mc_liste.append(new_obj)
       return etape
 
index 24f71ccabc4688572d99453a42d6ecdc94cf52b9..31efd18fcca10c353f6429a6cefa334a84571e23 100644 (file)
@@ -32,7 +32,7 @@ class MCCOMPO(I_OBJECT.OBJECT):
     """
     l=[]
     objet = self
-    while objet.definition.label != 'JDC' :
+    while objet.nature != 'JDC' :
       if not objet.isMCList() :
         l.append(string.strip(objet.nom))
       else :
@@ -304,11 +304,17 @@ class MCCOMPO(I_OBJECT.OBJECT):
   def copy(self):
     """ Retourne une copie de self """
     objet = self.makeobjet()
+    # FR : attention !!! avec makeobjet, objet a le même parent que self
+    # ce qui n'est pas du tout bon dans le cas d'une copie !!!!!!!
+    # FR : peut-on passer par là autrement que dans le cas d'une copie ???
+    # FR --> je suppose que non
+    objet.parent = None
     objet.valeur = copy(self.valeur)
     objet.val = copy(self.val)
     objet.mc_liste=[]
     for obj in self.mc_liste:
       new_obj = obj.copy()
+      new_obj.parent = objet
       objet.mc_liste.append(new_obj)
     return objet
 
index c08a383493db0b9448b6767c156833671b4396d2..c58c6d40b7a667a74b12b790427dd13d7403429a 100644 (file)
@@ -49,11 +49,16 @@ class MCList:
       child.delete_concept(sd)
 
   def copy(self):
+    """
+       Réalise la copie d'une MCList
+    """
     liste = self.data[0].definition.list_instance()
     # XXX Pas de parent ??
-    liste.init(self.nom)
+    # FR -->Il faut en spécifier un pour la méthode init qui attend 2 arguments ...
+    liste.init(self.nom,self.parent)
     for objet in self:
       new_obj = objet.copy()
+      new_obj.parent = liste
       liste.append(new_obj)
     return liste
 
@@ -93,3 +98,21 @@ class MCList:
     # Sans objet pour une liste de mots clés facteurs
     return [],[]
 
+  def init_modif(self):
+    """
+       Met l'état de l'objet à modified et propage au parent
+       qui vaut None s'il n'existe pas
+    """
+    self.state = 'modified'
+    if self.parent:
+      self.parent.init_modif()
+
+  def get_etape(self):
+     """
+        Retourne l'étape à laquelle appartient self
+        Un objet de la catégorie etape doit retourner self pour indiquer que
+        l'étape a été trouvée
+        XXX double emploi avec self.etape ???
+     """
+     if self.parent == None: return None
+     return self.parent.get_etape()
index 96fe6ccd23bd8b39c79f43da88674b21723d8618..c7f3fb7359a572daf320e24563b80fe098999d86 100644 (file)
@@ -257,3 +257,13 @@ class MCSIMP(I_OBJECT.OBJECT):
       if issubclass(self.valeur.__class__,ASSD) : l.append(self.valeur)
     return l
 
+
+  def set_valeur_co(self,nom_co):
+      """
+      Affecte à self l'objet de type CO et de nom nom_co
+      """
+      new_objet = CO(nom_co)
+      self.valeur = new_objet
+      self.val = new_objet
+      self.init_modif()
+       
index 559ebcd5736f9283db4634b0ae1db4487d2ecad2..04ef8ccaafeea2e1b535a0697a52ca06ab3351dc 100644 (file)
@@ -1,5 +1,6 @@
 """
 """
+import string
 
 class OBJECT:
   def isMCList(self):
@@ -80,4 +81,9 @@ class OBJECT:
     """
     return [],[]
 
-
+  def get_genealogie(self):
+    """ 
+        Retourne la liste des noms des ascendants (noms de MCSIMP,MCFACT,MCBLOC
+        ou ETAPE) de self jusqu'au premier objet etape rencontré
+    """
+    return []