本文整理汇总了C++中NodeRef::setParent方法的典型用法代码示例。如果您正苦于以下问题:C++ NodeRef::setParent方法的具体用法?C++ NodeRef::setParent怎么用?C++ NodeRef::setParent使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类NodeRef
的用法示例。
在下文中一共展示了NodeRef::setParent方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: cloneTraversal
void cloneTraversal( const NodeRef& origin, NodeRef& copy )
{
for( const auto& originChild : origin->getChildren() ) {
NodeRef copyChild = originChild->clone();
copyChild->setParent( copy );
copy->addChild( copyChild );
cloneTraversal( originChild, copyChild );
}
}
示例2: insertChildAt
void Node::insertChildAt( NodeRef child, size_t index )
{
Node *former_parent = child->getParent();
if( former_parent ) // remove child from parent (but skip notifying child)
{ vector_remove( &former_parent->mChildren, child ); }
child->setParent( this );
mChildren.insert( mChildren.begin() + index, child );
childAdded( child );
}
示例3: addChild
void Node::addChild( NodeRef node )
{
if( node && !hasChild( node ) ) {
// remove child from current parent
NodeRef parent = node->getParent();
if( parent ) parent->removeChild( node );
// add to children
mChildren.push_back( node );
// set parent
node->setParent( shared_from_this() );
// store nodes in lookup table if not done yet
uuidLookup[mUuid] = NodeWeakRef( shared_from_this() );
uuidLookup[node->mUuid] = NodeWeakRef( node );
}
}