mirror of https://github.com/python/cpython
gh-103685: Fix tkinter.Menu.index() for Tk 8.7 (#103686)
--------- Co-authored-by: Terry Jan Reedy <tjreedy@udel.edu> Co-authored-by: blurb-it[bot] <43283697+blurb-it[bot]@users.noreply.github.com>
This commit is contained in:
parent
bd2dca035a
commit
f0ed293f6a
|
@ -1377,6 +1377,11 @@ class MenuTest(AbstractWidgetTest, unittest.TestCase):
|
|||
def create(self, **kwargs):
|
||||
return tkinter.Menu(self.root, **kwargs)
|
||||
|
||||
def test_indexcommand_none(self):
|
||||
widget = self.create()
|
||||
i = widget.index('none')
|
||||
self.assertIsNone(i)
|
||||
|
||||
def test_configure_postcommand(self):
|
||||
widget = self.create()
|
||||
self.checkCommandParam(widget, 'postcommand')
|
||||
|
|
|
@ -3430,8 +3430,7 @@ class Menu(Widget):
|
|||
def index(self, index):
|
||||
"""Return the index of a menu item identified by INDEX."""
|
||||
i = self.tk.call(self._w, 'index', index)
|
||||
if i == 'none': return None
|
||||
return self.tk.getint(i)
|
||||
return None if i in ('', 'none') else self.tk.getint(i) # GH-103685.
|
||||
|
||||
def invoke(self, index):
|
||||
"""Invoke a menu item identified by INDEX and execute
|
||||
|
|
|
@ -0,0 +1 @@
|
|||
Prepare :meth:`tkinter.Menu.index` for Tk 8.7 so that it does not raise ``TclError: expected integer but got ""`` when it should return ``None``.
|
Loading…
Reference in New Issue