Нужно написать контакт лист для мессенджера. Для этого пытаюсь правильно все спроектировать для удобной работы и простого расширения.
На данный момент имеется несколько моделей сущностей с представлений для них. Назовем их User, Chat, Group (у всех есть общий родитель AbstractModel) и ***View для каждого из них.
Необходимо это красиво рисовать списком пока по некоторым критериям:
Знаю, что уже на этом этапе все плохо, но проект коммерческий и все переписать я не могу.
Так вот, на данный момент лучшее, что я придумал это сделать модель, унаследованную от QAbstractListModel и содержать в ней все элементы (QVector<AbstractModel>), эту модель привязать к QListView и создать QSortFilterProxyModel, которая как раз будет отвечать за отображение по критериям + сортировка.
Но в этом подходе наткнулся на одну очень весомую проблему, которую не могу решить уже на протяжении нескольких дней: у каждого элемента есть свое специфичное представление и я не знаю как его правильно установить т.к. QListView не умеет расширять строки по необходимости.
Самое забавное, что в QListWidget этих проблем в принципе нет, но привязать свои модели к нему нельзя...
Может я где-то не прав? Буду признателен, если укажите
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости