Beispiel #1
0
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();
}
Beispiel #2
0
void WTreeNode::addChildNode(WTreeNode *node)
{
    childNodes_.push_back(node);
    node->parentNode_ = this;

    expandedContent_->addWidget(node);

    childNodesChanged();
}
Beispiel #3
0
void WTreeNode::removeChildNode(WTreeNode *node)
{
    childNodes_.erase(std::find(childNodes_.begin(), childNodes_.end(), node));	

    node->parentNode_ = 0;

    expandedContent_->removeWidget(node); 
    expandedDeviceContent_->removeWidget(node);
    childNodesChanged();
}