Skip to content

Commit d908060

Browse files
committed
bpo-33096 Modify ttk.Treeview.insert
Allow ttk.Treeview.insert to insert False iid. Note iid=0 and iid=false would be same
1 parent e4ce9fa commit d908060

File tree

2 files changed

+12
-1
lines changed

2 files changed

+12
-1
lines changed

Lib/tkinter/test/test_ttk/test_widgets.py

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1662,6 +1662,17 @@ def test_insert_item(self):
16621662
self.tv.insert('', 'end', text=value), text=None),
16631663
value)
16641664

1665+
# test for values which are not None
1666+
itemid = self.tv.insert('', 'end', 0)
1667+
self.assertEqual(itemid, '0')
1668+
itemid = self.tv.insert('', 'end', 0.0)
1669+
self.assertEqual(itemid, '0.0')
1670+
# this is because False is resolveds to 0 and element with 0 id is already present
1671+
self.assertRaises(tkinter.TclError, self.tv.insert, '', '',
1672+
False)
1673+
self.assertRaises(tkinter.TclError, self.tv.insert, '', '',
1674+
'')
1675+
16651676

16661677
def test_selection(self):
16671678
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
@@ -1361,7 +1361,7 @@ def insert(self, parent, index, iid=None, **kw):
13611361
already exist in the tree. Otherwise, a new unique identifier
13621362
is generated."""
13631363
opts = _format_optdict(kw)
1364-
if iid:
1364+
if iid is not None:
13651365
res = self.tk.call(self._w, "insert", parent, index,
13661366
"-id", iid, *opts)
13671367
else:

0 commit comments

Comments
 (0)