void WTreeNode::addChildNode(WTreeNode *node, int nType) { if(m_bNoChild) { vector<WTreeNode*>::iterator itNode; for(itNode = childNodes_.begin(); itNode != childNodes_.end(); itNode ++) delete (*itNode); childNodes_.clear(); m_bNoChild = false; } childNodes_.push_back(node); switch(nType) { case Tree_SE: case Tree_GROUP: expandedContent_->addWidget(node); break; case Tree_NOCHILD: expandedDeviceContent_->addWidget(node); m_bNoChild = true; break; case Tree_DEVICE: expandedDeviceContent_->addWidget(node); break; } node->parentNode_ = this; childNodesChanged(); }
void WTreeNode::addChildNode(WTreeNode *node) { childNodes_.push_back(node); node->parentNode_ = this; expandedContent_->addWidget(node); childNodesChanged(); }
void WTreeNode::removeChildNode(WTreeNode *node) { childNodes_.erase(std::find(childNodes_.begin(), childNodes_.end(), node)); node->parentNode_ = 0; expandedContent_->removeWidget(node); expandedDeviceContent_->removeWidget(node); childNodesChanged(); }