diff options
author | Martin v. Löwis <martin@v.loewis.de> | 2008-08-02 07:23:15 +0000 |
---|---|---|
committer | Martin v. Löwis <martin@v.loewis.de> | 2008-08-02 07:23:15 +0000 |
commit | cdfae162c9d43f8d398cdb857f56c138579ef932 (patch) | |
tree | a9e47bf578e6cb92bd95fb5187fd0aa4f94c732e /Lib | |
parent | 59b4b170edd2e62f0b2f427ebeabc0d0ae0d0219 (diff) | |
download | cpython-git-cdfae162c9d43f8d398cdb857f56c138579ef932.tar.gz |
Merged revisions 65399 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk
........
r65399 | martin.v.loewis | 2008-08-02 09:20:25 +0200 (Sa, 02 Aug 2008) | 3 lines
Issue #799428: Fix Tkinter.Misc._nametowidget to unwrap
Tcl command objects.
........
Diffstat (limited to 'Lib')
-rw-r--r-- | Lib/tkinter/__init__.py | 18 |
1 files changed, 9 insertions, 9 deletions
diff --git a/Lib/tkinter/__init__.py b/Lib/tkinter/__init__.py index dbb632b65c..08c5823ce6 100644 --- a/Lib/tkinter/__init__.py +++ b/Lib/tkinter/__init__.py @@ -1063,18 +1063,18 @@ class Misc: def nametowidget(self, name): """Return the Tkinter instance of a widget identified by its Tcl name NAME.""" + name = str(name).split('.') w = self - if name[0] == '.': + + if not name[0]: w = w._root() name = name[1:] - while name: - i = name.find('.') - if i >= 0: - name, tail = name[:i], name[i+1:] - else: - tail = '' - w = w.children[name] - name = tail + + for n in name: + if not n: + break + w = w.children[n] + return w _nametowidget = nametowidget def _register(self, func, subst=None, needcleanup=1): |