Issue #20636: Improved the repr of Tkinter widgets.

This commit is contained in:
Serhiy Storchaka 2014-04-04 15:45:02 +03:00
parent 578c9211d6
commit bcc174615c
4 changed files with 13 additions and 1 deletions

View File

@ -1879,7 +1879,7 @@ Settings and special methods
>>> cv = screen.getcanvas()
>>> cv
<turtle.ScrolledCanvas object at ...>
<turtle.ScrolledCanvas object ...>
.. function:: getshapes()

View File

@ -1280,6 +1280,11 @@ class Misc:
def __str__(self):
"""Return the window path name of this widget."""
return self._w
def __repr__(self):
return '<%s.%s object %s>' % (
self.__class__.__module__, self.__class__.__qualname__, self._w)
# Pack methods that apply to the master
_noarg_ = ['_noarg_']
def pack_propagate(self, flag=_noarg_):

View File

@ -10,6 +10,11 @@ class MiscTest(unittest.TestCase):
def setUp(self):
self.root = ttk.setup_master()
def test_repr(self):
t = tkinter.Toplevel(self.root, name='top')
f = tkinter.Frame(t, name='child')
self.assertEqual(repr(f), '<tkinter.Frame object .top.child>')
def test_tk_setPalette(self):
root = self.root
root.tk_setPalette('black')

View File

@ -29,6 +29,8 @@ Core and Builtins
Library
-------
- Issue #20636: Improved the repr of Tkinter widgets.
- Issue #19505: The items, keys, and values views of OrderedDict now support
reverse iteration using reversed().