Commit 8e92f572 authored by Serhiy Storchaka's avatar Serhiy Storchaka

Issue #22769: Fixed ttk.Treeview.tag_has() when called without arguments.

parent 72a7f7c4
import unittest import unittest
import tkinter import tkinter
from tkinter import ttk from tkinter import ttk, TclError
from test.support import requires from test.support import requires
import sys import sys
...@@ -1563,6 +1563,21 @@ class TreeviewTest(AbstractWidgetTest, unittest.TestCase): ...@@ -1563,6 +1563,21 @@ class TreeviewTest(AbstractWidgetTest, unittest.TestCase):
'blue') 'blue')
self.assertIsInstance(self.tv.tag_configure('test'), dict) self.assertIsInstance(self.tv.tag_configure('test'), dict)
def test_tag_has(self):
item1 = self.tv.insert('', 'end', text='Item 1', tags=['tag1'])
item2 = self.tv.insert('', 'end', text='Item 2', tags=['tag2'])
self.assertRaises(TypeError, self.tv.tag_has)
self.assertRaises(TclError, self.tv.tag_has, 'tag1', 'non-existing')
self.assertTrue(self.tv.tag_has('tag1', item1))
self.assertFalse(self.tv.tag_has('tag1', item2))
self.assertFalse(self.tv.tag_has('tag2', item1))
self.assertTrue(self.tv.tag_has('tag2', item2))
self.assertFalse(self.tv.tag_has('tag3', item1))
self.assertFalse(self.tv.tag_has('tag3', item2))
self.assertEqual(self.tv.tag_has('tag1'), (item1,))
self.assertEqual(self.tv.tag_has('tag2'), (item2,))
self.assertEqual(self.tv.tag_has('tag3'), ())
@add_standard_options(StandardTtkOptionsTests) @add_standard_options(StandardTtkOptionsTests)
class SeparatorTest(AbstractWidgetTest, unittest.TestCase): class SeparatorTest(AbstractWidgetTest, unittest.TestCase):
......
...@@ -1456,7 +1456,11 @@ class Treeview(Widget, tkinter.XView, tkinter.YView): ...@@ -1456,7 +1456,11 @@ class Treeview(Widget, tkinter.XView, tkinter.YView):
all items which have the specified tag. all items which have the specified tag.
* Availability: Tk 8.6""" * Availability: Tk 8.6"""
return self.tk.getboolean( if item is None:
return self.tk.splitlist(
self.tk.call(self._w, "tag", "has", tagname))
else:
return self.tk.getboolean(
self.tk.call(self._w, "tag", "has", tagname, item)) self.tk.call(self._w, "tag", "has", tagname, item))
......
...@@ -36,6 +36,8 @@ Core and Builtins ...@@ -36,6 +36,8 @@ Core and Builtins
Library Library
------- -------
- Issue #22769: Fixed ttk.Treeview.tag_has() when called without arguments.
- Issue #22417: Verify certificates by default in httplib (PEP 476). - Issue #22417: Verify certificates by default in httplib (PEP 476).
- Issue #22775: Fixed unpickling of http.cookies.SimpleCookie with protocol 2 - Issue #22775: Fixed unpickling of http.cookies.SimpleCookie with protocol 2
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment