From 9b58ddb2da26c9c89fdc9e2a245c3bbc73247aab Mon Sep 17 00:00:00 2001 From: eficas <> Date: Wed, 10 Apr 2002 12:36:11 +0000 Subject: [PATCH] =?utf8?q?F.R:=20-=20modification=20ordre=20d'appel=20?= =?utf8?q?=C3=A0=20node.parent.select=20et=20les=20autres=20F.R:=20=20=20a?= =?utf8?q?ctions=20li=C3=A9es=20au=20node=20(car=20la=20s=C3=A9lection=20d?= =?utf8?q?'un=20noeud=20tue=20l'ancien=20panel=5F=20F.R:=20=20=20courant?= =?utf8?q?=20)?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit --- Editeur/composimp.py | 16 +++++++--------- Editeur/panels.py | 7 +++++-- 2 files changed, 12 insertions(+), 11 deletions(-) diff --git a/Editeur/composimp.py b/Editeur/composimp.py index f7522e8b..f0368965 100644 --- a/Editeur/composimp.py +++ b/Editeur/composimp.py @@ -706,22 +706,20 @@ class UNIQUE_Panel(newSIMPPanel): if not test : mess = "impossible d'évaluer : %s " %`valeur` self.parent.appli.affiche_infos("Valeur du mot-clé non autorisée :"+mess) - return elif self.node.item.isvalid() : self.parent.appli.affiche_infos('Valeur du mot-clé enregistrée') + if self.node.item.get_position()=='global': + self.node.etape.verif_all() + elif self.node.item.get_position()=='global_jdc': + self.node.racine.verif_all() + else : + self.node.parent.verif() + self.node.update() self.node.parent.select() else : cr = self.node.item.get_cr() mess = "Valeur du mot-clé non autorisée :"+cr.get_mess_fatal() self.record_valeur(anc_val,mess=mess) - return - if self.node.item.get_position()=='global': - self.node.etape.verif_all() - elif self.node.item.get_position()=='global_jdc': - self.node.racine.verif_all() - else : - self.node.parent.verif() - self.node.update() class UNIQUE_INTO_Panel(UNIQUE_Panel): """ diff --git a/Editeur/panels.py b/Editeur/panels.py index 19162fb3..78d292ae 100644 --- a/Editeur/panels.py +++ b/Editeur/panels.py @@ -33,7 +33,6 @@ class Panel(Frame) : Frame.destroy(self) self.panneau=None self.parent=None - self.node=None # Because on herite de Frame self.master=None # On supprime explicitement les references aux objets Tk @@ -50,7 +49,11 @@ class Panel(Frame) : self.frame_param=None # On termine la suppression de facon brutale (objets Tk et non Tk) for k in self.__dict__.keys(): - setattr(self,k,None) + # il est plus prudent de ne pas détruire le lien sur le Node + # si on voulait mettre l'attribut node à None, il faudrait + # que tous les appels à node.parent.select() apparaissent après + # toutes les autres actions liées au panel (node.item.isglobal(), ...) + if k != 'node' : setattr(self,k,None) def creer_boutons(self): """ -- 2.39.2