From f023ab0471c5b8dc9f421890481f94451b00e545 Mon Sep 17 00:00:00 2001 From: Guido van Rossum Date: Tue, 30 Aug 1994 12:13:44 +0000 Subject: Dialog.py: d.num should be numeric, not string Tkinter.py: on destroy(), remove self from master's dict of children --- Lib/lib-tk/Dialog.py | 11 ++++++----- Lib/lib-tk/Tkinter.py | 2 ++ 2 files changed, 8 insertions(+), 5 deletions(-) (limited to 'Lib/lib-tk') diff --git a/Lib/lib-tk/Dialog.py b/Lib/lib-tk/Dialog.py index 28222ecb07..022bd96a76 100644 --- a/Lib/lib-tk/Dialog.py +++ b/Lib/lib-tk/Dialog.py @@ -4,11 +4,12 @@ from Tkinter import * class Dialog(Widget): def __init__(self, master=None, cnf={}): Widget._setup(self, master, cnf) - self.num = apply(self.tk.call, - ('tk_dialog', self._w, - cnf['title'], cnf['text'], - cnf['bitmap'], cnf['default']) - + cnf['strings']) + self.num = self.tk.getint( + apply(self.tk.call, + ('tk_dialog', self._w, + cnf['title'], cnf['text'], + cnf['bitmap'], cnf['default']) + + cnf['strings'])) try: Widget.destroy(self) except TclError: pass def destroy(self): pass diff --git a/Lib/lib-tk/Tkinter.py b/Lib/lib-tk/Tkinter.py index 5a2e6b28e1..4b012f1988 100644 --- a/Lib/lib-tk/Tkinter.py +++ b/Lib/lib-tk/Tkinter.py @@ -679,6 +679,8 @@ class Widget(Misc, Pack, Place): return self._w def destroy(self): for c in self.children.values(): c.destroy() + if self.master.children.has_key(self._name): + del self.master.children[self._name] self.tk.call('destroy', self._w) def _do(self, name, args=()): return apply(self.tk.call, (self._w, name) + args) -- cgit v1.2.1