#pragma once #include enum ChannelDataRole { ChannelNameRole = Qt::DisplayRole, ChannelIconRole = Qt::DecorationRole, ChannelLastMessageRole = Qt::UserRole + 1, ChannelChannelIdRole = Qt::UserRole + 2 }; class ChannelDelegate : public QStyledItemDelegate { Q_OBJECT public: explicit ChannelDelegate(QObject *parent = nullptr); void paint(QPainter *painter, const QStyleOptionViewItem &option, const QModelIndex &index) const override; QSize sizeHint(const QStyleOptionViewItem &option, const QModelIndex &index) const override; };