From: Jerome St-Louis Date: Wed, 21 Dec 2016 03:53:13 +0000 (-0500) Subject: extras/CheckListBox: Overriding DeleteRow() method to handle destroying checkboxes X-Git-Url: https://ecere.com/cgi-bin/gitweb.cgi?p=sdk;a=commitdiff_plain;h=81734551036152acbfc48f188803f674c8c4b0ae extras/CheckListBox: Overriding DeleteRow() method to handle destroying checkboxes --- diff --git a/extras/gui/controls/CheckListBox.ec b/extras/gui/controls/CheckListBox.ec index b6bfb27..8068e29 100644 --- a/extras/gui/controls/CheckListBox.ec +++ b/extras/gui/controls/CheckListBox.ec @@ -99,6 +99,23 @@ class CheckListBox : ListBox return false; } + public void DeleteRow(DataRow row) + { + MapIterator it { map = buttonMaps }; + NotifyCollapse(master, this, row, true); + + if(it.Index((uintptr)row, false)) + { + CheckListBoxButton button = it.data; + if(button) + { + button.Destroy(0); + it.Remove(); + } + } + ListBox::DeleteRow(row); + } + void SetupButtons(DataRow row, bool recurse) { DataRow parent;