QT Як розфарбувати рядки QListView

Всім доброго часу доби! Мені потрібно зафарбувати фон деяких рядків у QListView певним кольором. Поділіться досвідом, хто робив таке?
PS. Відображувані дані знаходяться під керуванням моделі заснованої на QAbstractListItem, може в цьому напрямку потрібно копати?



Спробуй використовувати QItemDelegate, перевизнач методvoid QItemDelegate::paint ( QPainter * painter, const QStyleOptionViewItem & option, const QModelIndex & index ) const [virtual]
Можна глянутиQtприкладQt Examples SpinBox Delegate


поки що не було завдань з реалізації свого делегата, але дотримуючись логіки:
1. метод paint викликається всім видимих item'ов 2. викликається метод paint тоді, коли необхідно показати item'и + примусово
якщо тільки так, то що заважає заюзати QTableWidget? Наповнюємо його QTableWidgetItem і за яких хочете умов у item'а змінюєте фон


якщо тільки так, то що заважає заюзати QTableWidget?
Наповнюємо його QTableWidgetItem і за яких хочете умов у item'а змінюєте фон

не знав би я про те, що можна заюзати "MVC" то зробив би так

Відображувані дані знаходяться під керуванням моделі заснованої на QAbstractListItem, чи може в цьому напрямку потрібно копати?
У цій моделі, у методі

Навіщо все так ускладнювати?
Наведене мною рішення дозволяє у два рядки вирішити це завдання.


Для тих, що не треба підсвічувати повертати порожній QVariant()
Та ні.. як мені в методі дата дізнатися треба підсвічувати чи не треба заздалегідь? Де мені зберегтиоб'єкт перетягується, щоб дослідити його на предмет того, чи підсвічувати певний рядок чи ні?


А навіщо заздалегідь? У момент початку перетягування розрахуйте що і як підсвічувати (або передайте моделі, що перетягуєте, щоб прямо в data рахувати), можна в моделі метод створити наDragHighlight, і зробіть з моделі emit dataChanged або layoutChanged.
У момент початку перетягування це і є наперед
Зробив спеціальний сигнал, але не можу його викликати у методі, який викликається в момент початку перетягування:
З константного методу не можна сигнал емітити?
))))