CUICellItem* CUICellItem::PopChild() { CUICellItem* itm = m_childs.back(); m_childs.pop_back (); std::swap (itm->m_pData, m_pData); UpdateItemText (); R_ASSERT (itm->ChildsCount()==0); itm->SetOwnerList (NULL); return itm; }
CUICellItem* CUICellItem::PopChild(CUICellItem* needed) { CUICellItem* itm = m_childs.back(); m_childs.pop_back (); if(needed) { if(itm!=needed) std::swap (itm->m_pData, needed->m_pData); }else { std::swap (itm->m_pData, m_pData); } UpdateItemText (); R_ASSERT (itm->ChildsCount()==0); itm->SetOwnerList (NULL); return itm; }