1 #ifndef MODELS_CHECKLISTMODEL_H 2 #define MODELS_CHECKLISTMODEL_H 6 #include <QAbstractListModel> 9 QT_FORWARD_DECLARE_CLASS(QSettings)
20 ChecklistItem(
const QVariant &
id = QVariant(),
const QString &label = QString(), Qt::CheckState checked = Qt::Unchecked);
22 const QVariant &id()
const;
23 const QString &label()
const;
24 Qt::CheckState checkState()
const;
25 bool isChecked()
const;
30 Qt::CheckState m_checkState;
33 inline ChecklistItem::ChecklistItem(
const QVariant &
id,
const QString &label, Qt::CheckState checkState) :
36 m_checkState(checkState)
69 return m_checkState == Qt::Checked;
78 int rowCount(
const QModelIndex &parent = QModelIndex())
const;
79 Qt::ItemFlags flags(
const QModelIndex &index)
const;
80 QVariant data(
const QModelIndex &index,
int role = Qt::DisplayRole)
const;
81 QMap<int, QVariant> itemData(
const QModelIndex &index)
const;
82 bool setData(
const QModelIndex &index,
const QVariant &value,
int role = Qt::DisplayRole);
83 bool setItemData(
const QModelIndex &index,
const QMap<int, QVariant> &roles);
84 virtual QString labelForId(
const QVariant &
id)
const;
85 Qt::DropActions supportedDropActions()
const;
86 bool insertRows(
int row,
int count,
const QModelIndex &parent);
87 bool removeRows(
int row,
int count,
const QModelIndex &parent);
88 const QList<ChecklistItem> &items()
const;
89 void setItems(
const QList<ChecklistItem> &items);
90 void restore(QSettings &settings,
const QString &name);
91 void save(QSettings &settings,
const QString &name)
const;
92 static inline constexpr
int idRole();
95 QList<ChecklistItem> m_items;
112 return Qt::UserRole + 1;
117 #endif // MODELS_CHECKLISTMODEL_H const QVariant & id() const
Returns the ID of the item.
friend class ChecklistModel
#define QT_UTILITIES_EXPORT
Marks the symbol to be exported by the qtutilities library.
static constexpr int idRole()
Returns the role used to get or set the item ID.
Qt::CheckState checkState() const
Returns the check state.
The ChecklistItem class provides an item for use with the ChecklistModel class.
The ChecklistModel class provides a generic model for storing checkable items.
const QString & label() const
Returns the label.
bool isChecked() const
Returns whether the item is checked.
const QList< ChecklistItem > & items() const
Returns the items.