Salome HOME
Version initiale de EFICAS 1.2
[tools/eficas.git] / Ihm / I_OBJECT.py
1 """
2 """
3
4 class OBJECT:
5   def isMCList(self):
6     """ 
7         Retourne 1 si self est une MCList (liste de mots-clés), 
8                  0 sinon (défaut) 
9     """
10     return 0
11
12   def get_regles(self):
13     """ 
14        Retourne les règles de self 
15     """
16     if hasattr(self,'definition'):
17       return self.definition.regles
18     elif hasattr(self,'regles'):
19       return self.regles
20     else :
21       return []
22
23   def init_modif(self):
24     """
25        Met l'état de l'objet à modified et propage au parent
26        qui vaut None s'il n'existe pas
27     """
28     self.state = 'modified'
29     if self.parent:
30       self.parent.init_modif()
31
32   def fin_modif(self):
33       """
34       Méthode appelée après qu'une modification a été faite afin de déclencher
35       d'éventuels traitements post-modification
36       """
37       # pour les objets autres que les commandes, aucun traitement spécifique 
38       # on remonte l'info de fin de modif au parent
39       if self.parent:
40         self.parent.fin_modif()
41
42   def isrepetable(self):
43     """
44          Indique si l'objet est répétable
45     """
46     return 0
47
48   def liste_mc_presents(self):
49     """
50          Retourne la liste des noms des mots clés présents
51     """
52     return []
53
54   def get_docu(self):
55     return self.definition.get_docu()
56
57   def get_liste_mc_inconnus(self):
58      """
59      Retourne la liste des mots-clés inconnus dans self
60      """
61      return []
62
63   def verif_condition_regles(self,liste_presents):
64     """ 
65         Retourne la liste des mots-clés à rajouter pour satisfaire les règles
66         en fonction de la liste des mots-clés présents 
67     """
68     liste=[]
69     for regle in self.definition.regles:
70         liste=regle.verif_condition_regle(liste,liste_presents)
71     return liste
72
73   def verif_condition_bloc(self):
74     """ 
75         Evalue les conditions de tous les blocs fils possibles 
76         (en fonction du catalogue donc de la définition) de self et
77         retourne deux listes :
78         - la première contient les noms des blocs à rajouter
79         - la seconde contient les noms des blocs à supprimer
80     """
81     return [],[]
82
83