bool CWizDatabase::DeleteTagWithChildren(const WIZTAGDATA& data, bool bLog) { CWizTagDataArray arrayChildTag; GetChildTags(data.strGUID, arrayChildTag); foreach (const WIZTAGDATA& childTag, arrayChildTag) { DeleteTagWithChildren(childTag, bLog); }
bool CWizIndexBase::GetAllChildTags(const CString& strParentTagGUID, CWizTagDataArray& arrayTag) { CWizTagDataArray arrayTagCurrent; GetChildTags(strParentTagGUID, arrayTagCurrent); arrayTag.insert(arrayTag.begin(), arrayTagCurrent.begin(), arrayTagCurrent.end()); CWizTagDataArray::const_iterator it; for (it = arrayTagCurrent.begin(); it != arrayTagCurrent.end(); it++) { GetAllChildTags(it->strGUID, arrayTag); } return true; }
bool CWizIndexBase::GetAllChildTagsSize(const CString& strParentTagGUID, int& size) { int nSizeCurrent; GetChildTagsSize(strParentTagGUID, nSizeCurrent); size += nSizeCurrent; CWizTagDataArray arrayTagCurrent; GetChildTags(strParentTagGUID, arrayTagCurrent); CWizTagDataArray::const_iterator it; for (it = arrayTagCurrent.begin(); it != arrayTagCurrent.end(); it++) { GetAllChildTagsSize(it->strGUID, size); } return true; }