本文整理汇总了C++中TreeModelItem::children方法的典型用法代码示例。如果您正苦于以下问题:C++ TreeModelItem::children方法的具体用法?C++ TreeModelItem::children怎么用?C++ TreeModelItem::children使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类TreeModelItem
的用法示例。
在下文中一共展示了TreeModelItem::children方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: addItem
void TreeModel::addItem(QString label, QVariantList data, QString path)
{
qDebug() << "Adding item" << label << path;
if (data.count() != m_roles.count())
qDebug() << "Adding an item with a different number of roles" << data.count() << m_roles.count();
if (path.isEmpty())
{
TreeModelItem *item = new TreeModelItem(label);
QQmlEngine::setObjectOwnership(item, QQmlEngine::CppOwnership);
item->setData(data);
int addIndex = getItemIndex(label);
beginInsertRows(QModelIndex(), addIndex, addIndex);
m_items.insert(addIndex, item);
endInsertRows();
}
else
{
TreeModelItem *item = NULL;
QStringList pathList = path.split("/");
if (m_itemsPathMap.contains(pathList.at(0)))
{
item = m_itemsPathMap[pathList.at(0)];
}
else
{
item = new TreeModelItem(pathList.at(0));
item->setPath(pathList.at(0));
QQmlEngine::setObjectOwnership(item, QQmlEngine::CppOwnership);
if (item->setChildrenColumns(m_roles) == true)
{
connect(item->children(), SIGNAL(singleSelection(TreeModelItem*)),
this, SLOT(setSingleSelection(TreeModelItem*)));
qDebug() << "Tree" << this << "connected to tree" << item->children();
}
int addIndex = getFolderIndex(label);
beginInsertRows(QModelIndex(), addIndex, addIndex);
m_items.insert(addIndex, item);
endInsertRows();
m_itemsPathMap[pathList.at(0)] = item;
}
if (pathList.count() == 1)
{
if (item->addChild(label, data, m_sorting) == true)
{
connect(item->children(), SIGNAL(singleSelection(TreeModelItem*)),
this, SLOT(setSingleSelection(TreeModelItem*)));
qDebug() << "Tree" << this << "connected to tree" << item->children();
}
}