8000 bpo-33096: Fix ttk.Treeview.insert. (GH-6228) · python/cpython@45116d3 · GitHub
[go: up one dir, main page]

Skip to content

Commit 45116d3

Browse files
bpo-33096: Fix ttk.Treeview.insert. (GH-6228)
Allow ttk.Treeview.insert to insert iid that has a false boolean value. Note iid=0 and iid=False would be same. (cherry picked from commit 3ab44c0) Co-authored-by: Garvit Khatri <garvitdelhi@gmail.com>
1 parent f5befbb commit 45116d3

File tree

3 files changed

+14
-1
lines changed

3 files changed

+14
-1
lines changed

Lib/tkinter/test/test_ttk/test_widgets.py

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1485,6 +1485,15 @@ def test_insert_item(self):
14851485
self.tv.insert('', 'end', text=value), text=None),
14861486
value)
14871487

1488+
# test for values which are not None
1489+
itemid = self.tv.insert('', 'end', 0)
1490+
self.assertEqual(itemid, '0')
1491+
itemid = self.tv.insert('', 'end', 0.0)
1492+
self.assertEqual(itemid, '0.0')
1493+
# this is because False resolves to 0 and element with 0 iid is already present
1494+
self.assertRaises(tkinter.TclError, self.tv.insert, '', 'end', False)
1495+
self.assertRaises(tkinter.TclError, self.tv.insert, '', 'end', '')
1496+
14881497

14891498
def test_selection(self):
14901499
self.assertRaises(TypeError, self.tv.selection, 'spam')

Lib/tkinter/ttk.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1336,7 +1336,7 @@ def insert(self, parent, index, iid=None, **kw):
13361336
already exist in the tree. Otherwise, a new unique identifier
13371337
is generated."""
13381338
opts = _format_optdict(kw)
1339-
if iid:
1339+
if iid is not None:
13401340
res = self.tk.call(self._w, "insert", parent, index,
13411341
"-id", iid, *opts)
13421342
else:
Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
Allow ttk.Treeview.insert to insert iid that has a false boolean value.
2+
Note iid=0 and iid=False would be same.
3+
Patch by Garvit Khatri.
4+

0 commit comments

Comments
 (0)
0