6 #include <QAbstractItemModel>
25 : QItemDelegate(parent), m_iconCheckedUrl(iconCheckedUrl), m_iconUncheckedUrl(iconUncheckedUrl)
31 const QModelIndex &index)
const
35 QCheckBox *cb =
new QCheckBox(parent);
36 if (!m_iconCheckedUrl.isEmpty() && !m_iconUncheckedUrl.isEmpty())
39 cb->setStyleSheet(
"");
40 cb->setStyleSheet(style);
47 const bool v = index.model()->data(index, Qt::UserRole).toBool();
48 QCheckBox *cb = qobject_cast<QCheckBox *>(editor);
54 QCheckBox *cb = qobject_cast<QCheckBox *>(editor);
55 const bool v = cb->isChecked();
56 model->setData(index, QVariant(v), Qt::EditRole);
60 const QModelIndex &index)
const
63 editor->setGeometry(option.rect);
static QString styleForIconCheckBox(const QString &checkedIcon, const QString &uncheckedIcon, const QString &width="16px", const QString &height="16px")
Stylesheet string for a checkbox displayed as 2 icons.
virtual QWidget * createEditor(QWidget *parent, const QStyleOptionViewItem &option, const QModelIndex &index) const
~CCheckBoxDelegate()
Destructor.
virtual void updateEditorGeometry(QWidget *editor, const QStyleOptionViewItem &option, const QModelIndex &index) const
CCheckBoxDelegate(QObject *parent=nullptr)
Constructor.
virtual void setModelData(QWidget *editor, QAbstractItemModel *model, const QModelIndex &index) const
virtual void setEditorData(QWidget *editor, const QModelIndex &index) const
Views, mainly QTableView.