+# -*- coding: utf-8 -*-
# CONFIGURATION MANAGEMENT OF EDF VERSION
# ======================================================================
# COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG
else:
return 0
+ def isrepetable(self):
+ """
+ Indique si l'objet est répétable.
+ Retourne 1 si le mot-clé facteur self peut être répété
+ Retourne 0 dans le cas contraire
+ """
+ if self.data[0].definition.max > 1:
+ # marche avec '**'
+ return 1
+ else :
+ return 0
+
def isoblig(self):
"""
Une MCList n'est jamais obligatoire (même si le MCFACT qu'elle représente l'est
"""
- return 0
- #for i in self.data:
- # if i.isoblig():return 1
+ return self.data[0].definition.statut=='o'
#return 0
def liste_mc_presents(self):
def delete_concept(self,sd):
"""
Inputs :
- sd=concept detruit
- Fonction :
- Mettre a jour les fils de l objet suite à la disparition
- du concept sd
- Seuls les mots cles simples MCSIMP font un traitement autre
- que de transmettre aux fils
+ - sd=concept detruit
+ Fonction : Mettre a jour les fils de l objet suite à la disparition
+ du concept sd
+ Seuls les mots cles simples MCSIMP font un traitement autre
+ que de transmettre aux fils
"""
for child in self.data :
child.delete_concept(sd)
def replace_concept(self,old_sd,sd):
"""
Inputs :
- old_sd=concept remplacé
- sd=nouveau concept
- Fonction :
- Mettre a jour les fils de l objet suite au remplacement
- du concept old_sd
+ - old_sd=concept remplacé
+ - sd=nouveau concept
+ Fonction : Mettre a jour les fils de l objet suite au remplacement
+ du concept old_sd
"""
for child in self.data :
child.replace_concept(old_sd,sd)
- def copy(self):
- """
- Réalise la copie d'une MCList
- """
- liste = self.data[0].definition.list_instance()
- # FR -->Il faut spécifier un parent pour la méthode init qui attend 2 arguments ...
- liste.init(self.nom,self.parent)
- for objet in self:
- new_obj = objet.copy()
- # Pour etre coherent avec le constructeur de mots cles facteurs N_FACT.__call__
- # dans lequel le parent de l'element d'une MCList est le parent de la MCList
- new_obj.reparent(self.parent)
- liste.append(new_obj)
- return liste
-
def get_docu(self):
return self.data[0].definition.get_docu()
Evalue les conditions de tous les blocs fils possibles
(en fonction du catalogue donc de la définition) de self et
retourne deux listes :
- - la première contient les noms des blocs à rajouter
- - la seconde contient les noms des blocs à supprimer
+ - la première contient les noms des blocs à rajouter
+ - la seconde contient les noms des blocs à supprimer
"""
# Sans objet pour une liste de mots clés facteurs
return [],[]
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()
+ def fin_modif(self):
+ """
+ Méthode appelée après qu'une modification a été faite afin de déclencher
+ d'éventuels traitements post-modification
+ """
+ if self.parent:
+ self.parent.fin_modif()
def get_genealogie(self):
"""
dico=objet_cata.entites
return objet_cata.ordre_mc
- def reparent(self,parent):
- """
- Cette methode sert a reinitialiser la parente de l'objet
- """
- self.parent=parent
- self.jdc=parent.jdc
- self.etape=parent.etape
- for mcfact in self.data:
- mcfact.reparent(parent)
-
def verif_existence_sd(self):
"""
Vérifie que les structures de données utilisées dans self existent bien dans le contexte
for motcle in self.data :
motcle.verif_existence_sd()
- def get_sd_utilisees(self):
- """
- Retourne la liste des concepts qui sont utilisés à l'intérieur de self
- ( comme valorisation d'un MCS)
- """
- l=[]
- for motcle in self.data:
- l.extend(motcle.get_sd_utilisees())
- return l
-
def get_fr(self):
"""
Retourne la chaine d'aide contenue dans le catalogue