//! [4] void StarDelegate::setModelData(QWidget *editor, QAbstractItemModel *model, const QModelIndex &index) const { if (index.data().canConvert<StarRating>()) { StarEditor *starEditor = qobject_cast<StarEditor *>(editor); model->setData(index, QVariant::fromValue(starEditor->starRating())); } else { QStyledItemDelegate::setModelData(editor, model, index); } }
void StarDelegate::setModelData(QWidget* editor, QAbstractItemModel* model, const QModelIndex& index) const { StarEditor* starEditor = qobject_cast<StarEditor*>(editor); model->setData(index, qVariantFromValue(starEditor->starRating())); }