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; }