本文整理汇总了C++中DomItem::isFolder方法的典型用法代码示例。如果您正苦于以下问题:C++ DomItem::isFolder方法的具体用法?C++ DomItem::isFolder怎么用?C++ DomItem::isFolder使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类DomItem
的用法示例。
在下文中一共展示了DomItem::isFolder方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: setData
bool DomModel::setData(const QModelIndex &index,
const QVariant &value, int role)
{
if (!index.isValid())
return false;
DomItem *item = static_cast<DomItem*>(index.internalPointer());
switch (role) {
case Qt::EditRole:
item->setName(value.toString());
break;
case Qt::UserRole:
if (item->isFolder())
item->setName(value.toString());
else if (item->isSiteReference())
item->setUuid(value.toString());
break;
default:
return false;
}
emit dataChanged(index, index);
return true;
}
示例2: data
QVariant DomModel::data(const QModelIndex &index, int role) const
{
if (!index.isValid())
return QVariant();
DomItem *item = static_cast<DomItem*>(index.internalPointer());
switch (role) {
case Qt::UserRole:
if (item->isFolder()) {
return item->name();
} else {
return item->uuid();
}
break;
case Qt::DisplayRole:
return item->name();
break;
case Qt::DecorationRole:
switch (type(index)) {
case Folder:
return QVariant(QIcon(":/pic/folder.png"));
case Favorite:
return QVariant(QIcon(":/pic/folder_favorite.png"));
case Site:
return QVariant(QIcon(":/pic/tabpad.png"));
}
default:
return QVariant();
}
}
示例3: type
DomModel::ItemType DomModel::type(const QModelIndex &index) const
{
if (!index.isValid())
return Unknown;
DomItem *item = static_cast<DomItem*>(index.internalPointer());
if (item->isFolder())
return Folder;
else if (item->isSiteReference()) {
QString uuid = data(index, Qt::UserRole).toString();
// get favor attributes
QDomNodeList siteList = domDocument.elementsByTagName("site");
for (int i=0; i<siteList.count(); i++) {
QDomElement element = siteList.item(i).toElement();
if (element.attribute("uuid") == uuid)
if (element.attribute("favor") == "1")
return Favorite;
else
return Site;
}
}
return Unknown;
}