From ca2fd64302576eb776464d751acba740334f1e3d Mon Sep 17 00:00:00 2001 From: Robert Jelic Date: Wed, 20 Mar 2024 00:51:12 +0100 Subject: [PATCH] Container removeChild fix - fixed containers removeChild call - fixed using remove on flexbox childrens --- Basalt/objects/Container.lua | 2 +- Basalt/objects/Flexbox.lua | 19 +++++++++++++++++++ 2 files changed, 20 insertions(+), 1 deletion(-) diff --git a/Basalt/objects/Container.lua b/Basalt/objects/Container.lua index 67e9115..1a66c38 100644 --- a/Basalt/objects/Container.lua +++ b/Basalt/objects/Container.lua @@ -93,7 +93,7 @@ return function(name, basalt) return end for i, v in ipairs(children) do - if v.element == element then + if v.element:getName() == element:getName() then table.remove(children, i) return true end diff --git a/Basalt/objects/Flexbox.lua b/Basalt/objects/Flexbox.lua index c1705ae..6cfed61 100644 --- a/Basalt/objects/Flexbox.lua +++ b/Basalt/objects/Flexbox.lua @@ -408,6 +408,25 @@ return function(name, basalt) end end, + removeChild = function(self, child) + if (type(child)=="string") then + child = getChild(element:getName()) + end + if (child==nil) then + return + end + base.removeChild(self, child) + for k, v in pairs(children) do + if v:getName() == child:getName() then + table.remove(children, k) + break + end + end + updateLayout = true + self:updateDraw() + return self + end, + draw = function(self) base.draw(self) self:addDraw("flexboxDraw", function()