Cleans up removal/deletion logic

This commit is contained in:
Areloch 2024-01-09 04:00:51 -06:00
parent 4f399eb87f
commit 192862ba6d
2 changed files with 12 additions and 5 deletions

View file

@ -704,11 +704,9 @@ bool GuiPopUpMenuCtrlEx::onWake()
void GuiPopUpMenuCtrlEx::onRemove()
{
mBackground = nullptr;
mSearchEdit = nullptr;
mTl = nullptr;
mSc = nullptr;
mBackground = nullptr;
removeChildren();
Parent::onRemove();
}
//------------------------------------------------------------------------------
bool GuiPopUpMenuCtrlEx::onAdd()
@ -1637,6 +1635,14 @@ void GuiPopUpMenuCtrlEx::addChildren()
mBackground->addObject(mSearchEdit);
}
void GuiPopUpMenuCtrlEx::removeChildren()
{
mTl->deleteObject();
mSc->deleteObject();
mSearchEdit->deleteObject();
mBackground->deleteObject();
}
//------------------------------------------------------------------------------
void GuiPopUpMenuCtrlEx::repositionPopup()
{

View file

@ -140,6 +140,7 @@ class GuiPopUpMenuCtrlEx : public GuiTextCtrl
GuiTextEditCtrl* mSearchEdit; // Added
virtual void addChildren();
virtual void removeChildren();
virtual void repositionPopup();
static bool _setBitmaps(void* obj, const char* index, const char* data);