本文整理汇总了C++中TreeIterator::getDepth方法的典型用法代码示例。如果您正苦于以下问题:C++ TreeIterator::getDepth方法的具体用法?C++ TreeIterator::getDepth怎么用?C++ TreeIterator::getDepth使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类TreeIterator
的用法示例。
在下文中一共展示了TreeIterator::getDepth方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: createFromXml
bool Menu::createFromXml(FileBase* fileXml, MenuFuncTable* functblRef, MenuPanelFactory* pnlfctryRef, void* objCreateParam)
{
// XML ファイルをバッファに読み込む
VcString bufFile;
while(true)
{
const int SIZE_BUF = 100 * 1024;
char buf[SIZE_BUF];
int sizeRead = fileXml->read(buf, SIZE_BUF);
bufFile.add(buf, sizeRead);
if(sizeRead < SIZE_BUF) { break; }
}
CMXML_TRACE(VcString::format("{Menu::createFromXml} menu xml : size=%d\n", bufFile.getLength()));
// XML を解析する
XmlParser xmlparser;
xmlparser.parseXmlDocument(&bufFile);
CMXML_TRACE("{Menu::createFromXml} XmlParser::parseXmlDocument end.\n");
// ツリーを作成する
_tree = new Tree<MenuTreeNode>(true);
addTreeNode(_tree->addRootNode(), true, xmlparser.getRootNode());
#if defined(_DEBUG)
TRACE("{Menu::createFromXml} menu hierarchy\n");
for(TreeIterator<MenuTreeNode> it = _tree->iterator(); it.has(); it.next())
{
if(it.object() != 0L) { for(int i = 0; i < it.getDepth(); i++) { CMXML_TRACE(" "); } CMXML_TRACE( *it.object()->getName() + "\n" ); }
}
#endif
// ファンクションテーブルを保存する
_functblRef = functblRef;
// パネルファクトリを保存する
_pnlfctryRef = pnlfctryRef;
// パラメータオブジェクトを保存する
_objCreateParamRef = objCreateParam;
return true;
}