本文整理汇总了C++中QStandardItemModel::fetchMore方法的典型用法代码示例。如果您正苦于以下问题:C++ QStandardItemModel::fetchMore方法的具体用法?C++ QStandardItemModel::fetchMore怎么用?C++ QStandardItemModel::fetchMore使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类QStandardItemModel
的用法示例。
在下文中一共展示了QStandardItemModel::fetchMore方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: retarget
void LeafTreeItem::retarget(Element *object)
{
if(object_ == object)
return;
bool was_expanded = is_expanded_;
//qDebug() << __func__ << tndParent()->text() << (object ? object->name_ : "0x0");
QStandardItemModel *m = 0;
if(object_)
{
m = &object_->visualizer_->model_;
removeRows(0, rowCount());
setExpanded(false);
object_->node_list_.erase(self_ref_);
}
object_ = object;
if(object_)
{
m = &object_->visualizer_->model_;
self_ref_ = object_->node_list_.insert(object_->node_list_.end(), this);
QModelIndex clone_index = object_->node_list_.first()->index();
for(int i = 0; i < HeaderCount; ++i)
m->setItemData
( index().sibling(row(), i)
, m->itemData(clone_index.sibling(clone_index.row(), i)));
if(was_expanded)
{
m->fetchMore(index());
setExpanded(true);
}
} else
{
QMap<int, QVariant> red_zero;
red_zero[Qt::DisplayRole] = QVariant("invalid");
red_zero[Qt::ForegroundRole] = Qt::red;
m->setItemData(index().sibling(row(), 0), red_zero);
for(int i = 1; i < HeaderCount; ++i)
m->setItemData(index().sibling(row(), i), QMap<int, QVariant>());
setExpanded(false);
}
}