bool HierarchyTreeAggregatorNode::Save(YamlNode* node, const QString& path, bool saveAll) { String relPath = ResourcesManageHelper::GetResourceRelativePath(path, true).toStdString(); for (CHILDS::iterator iter = childs.begin(); iter != childs.end(); ++iter) { HierarchyTreeControlNode* controlNode = (*iter); UIAggregatorControl* aggregatorControl = dynamic_cast<UIAggregatorControl*>(controlNode->GetUIObject()); DVASSERT(aggregatorControl); if (!aggregatorControl) continue; aggregatorControl->SetAggregatorPath(relPath); } node->Set(WIDTH_NODE, (int32)rect.dx); node->Set(HEIGHT_NODE, (int32)rect.dy); return HierarchyTreeScreenNode::Save(path, saveAll); }