Exemple #1
0
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();
    }
}