mirror of https://github.com/OpenMW/openmw
Detach elements from child before destroying it
This commit is contained in:
parent
cd4901245e
commit
b32b98d9f5
|
|
@ -49,14 +49,6 @@ namespace LuaUi
|
||||||
MyGUI::Gui::getInstancePtr()->destroyWidget(ext->widget());
|
MyGUI::Gui::getInstancePtr()->destroyWidget(ext->widget());
|
||||||
}
|
}
|
||||||
|
|
||||||
void destroyChild(WidgetExtension* ext)
|
|
||||||
{
|
|
||||||
if (!ext->isRoot())
|
|
||||||
destroyWidget(ext);
|
|
||||||
else
|
|
||||||
ext->detachFromParent();
|
|
||||||
}
|
|
||||||
|
|
||||||
void detachElements(WidgetExtension* ext)
|
void detachElements(WidgetExtension* ext)
|
||||||
{
|
{
|
||||||
auto predicate = [](WidgetExtension* child) {
|
auto predicate = [](WidgetExtension* child) {
|
||||||
|
|
@ -69,6 +61,17 @@ namespace LuaUi
|
||||||
ext->detachTemplateChildrenIf(predicate);
|
ext->detachTemplateChildrenIf(predicate);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void destroyChild(WidgetExtension* ext)
|
||||||
|
{
|
||||||
|
if (!ext->isRoot())
|
||||||
|
{
|
||||||
|
detachElements(ext);
|
||||||
|
destroyWidget(ext);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
ext->detachFromParent();
|
||||||
|
}
|
||||||
|
|
||||||
void destroyRoot(WidgetExtension* ext)
|
void destroyRoot(WidgetExtension* ext)
|
||||||
{
|
{
|
||||||
detachElements(ext);
|
detachElements(ext);
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue