X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=Noyau%2FN_MACRO_ETAPE.py;h=57a4b8ef9e9f692c46366760cf5698fff35dd3f9;hb=f1ca95b49f76bed371d3bc90fc94bd12a6f17523;hp=6061b2a3464691c33413883a40df163b334e114f;hpb=7f1efd93c8848548cd258b1dda5ec07486cc92b7;p=tools%2Feficas.git diff --git a/Noyau/N_MACRO_ETAPE.py b/Noyau/N_MACRO_ETAPE.py index 6061b2a3..57a4b8ef 100644 --- a/Noyau/N_MACRO_ETAPE.py +++ b/Noyau/N_MACRO_ETAPE.py @@ -1,4 +1,5 @@ -#@ MODIF N_MACRO_ETAPE Noyau DATE 06/01/2003 AUTEUR ASSIRE A.ASSIRE +#@ MODIF N_MACRO_ETAPE Noyau DATE 14/09/2004 AUTEUR MCOURTOI M.COURTOIS +# -*- coding: iso-8859-1 -*- # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG @@ -18,6 +19,8 @@ # # # ====================================================================== + + """ Ce module contient la classe MACRO_ETAPE qui sert à vérifier et à exécuter une commande @@ -529,6 +532,37 @@ class MACRO_ETAPE(N_ETAPE.ETAPE): d.update(self.g_context) return d + def copy(self): + """ Méthode qui retourne une copie de self non enregistrée auprès du JDC + et sans sd + On surcharge la methode de ETAPE pour exprimer que les concepts crees + par la MACRO d'origine ne sont pas crees par la copie mais eventuellement + seulement utilises + """ + etape=N_ETAPE.ETAPE.copy(self) + etape.sdprods=[] + return etape + + def copy_intern(self,etape): + """ Cette méthode effectue la recopie des etapes internes d'une macro + passée en argument (etape) + """ + self.etapes=[] + for etp in etape.etapes: + new_etp=etp.copy() + new_etp.copy_reuse(etp) + new_etp.copy_sdnom(etp) + new_etp.reparent(self) + if etp.sd: + new_sd = etp.sd.__class__(etape=new_etp) + new_etp.sd = new_sd + if etp.reuse: + new_sd.nom = etp.sd.nom + else: + self.NommerSdprod(new_sd,etp.sd.nom) + new_etp.copy_intern(etp) + self.etapes.append(new_etp) +