void UITree::clearTree() { for(int i=0; i < treeChildren.size(); i++) { UITree *child = treeChildren[i]; removeChild(child); child->removeEventListener(this, UITreeEvent::NEED_REFRESH_EVENT); child->removeEventListener(this, UITreeEvent::SELECTED_EVENT); child->removeEventListener(this, UITreeEvent::EXECUTED_EVENT); delete child; } treeChildren.clear(); }
UITree::~UITree() { for(int i=0; i < treeChildren.size(); i++) { UITree *child = treeChildren[i]; removeChild(child); child->removeEventListener(this, UITreeEvent::NEED_REFRESH_EVENT); child->removeEventListener(this, UITreeEvent::SELECTED_EVENT); child->removeEventListener(this, UITreeEvent::EXECUTED_EVENT); //treeChildren.erase(treeChildren.begin()+i); delete child; } }