diff options
author | Guido van Rossum <guido@python.org> | 1994-08-30 12:13:44 (GMT) |
---|---|---|
committer | Guido van Rossum <guido@python.org> | 1994-08-30 12:13:44 (GMT) |
commit | f023ab0471c5b8dc9f421890481f94451b00e545 (patch) | |
tree | e8c362085c11d79f3af2f3c82c1a833a8c1594da /Lib | |
parent | c1be9d59e4b25a7185dc976b695532a397e838b0 (diff) | |
download | cpython-f023ab0471c5b8dc9f421890481f94451b00e545.zip cpython-f023ab0471c5b8dc9f421890481f94451b00e545.tar.gz cpython-f023ab0471c5b8dc9f421890481f94451b00e545.tar.bz2 |
Dialog.py: d.num should be numeric, not string
Tkinter.py: on destroy(), remove self from master's dict of children
Diffstat (limited to 'Lib')
-rw-r--r-- | Lib/lib-tk/Dialog.py | 11 | ||||
-rw-r--r-- | Lib/lib-tk/Tkinter.py | 2 | ||||
-rwxr-xr-x | Lib/tkinter/Dialog.py | 11 | ||||
-rwxr-xr-x | Lib/tkinter/Tkinter.py | 2 |
4 files changed, 16 insertions, 10 deletions
diff --git a/Lib/lib-tk/Dialog.py b/Lib/lib-tk/Dialog.py index 28222ec..022bd96 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 5a2e6b2..4b012f1 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) diff --git a/Lib/tkinter/Dialog.py b/Lib/tkinter/Dialog.py index 28222ec..022bd96 100755 --- a/Lib/tkinter/Dialog.py +++ b/Lib/tkinter/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/tkinter/Tkinter.py b/Lib/tkinter/Tkinter.py index 5a2e6b2..4b012f1 100755 --- a/Lib/tkinter/Tkinter.py +++ b/Lib/tkinter/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) |