построил модель от QAbstractListModel с такой внутренней структурой
QList <QPair<QString,QPair<QImage,QPair<QStringList,QStringList> > > > mainMap;
в методе data данной модели, описываю так
QVariant MainModel::data(const QModelIndex &index, int role) const
{
if (!index.isValid()) return QVariant();
if (!index.row() >= mainMap.size()) return QVariant();
if (role == Qt::DisplayRole) return mainMap.at(index.row());
else return QVariant();
}
В каком методе представления (от QAbstractItemView) нужно определять какие данные из возвращаемого QVariant нужно брать что бы отборазить в списке (например в одном списке нужно отобразить mainMap.at(index.row()).first а в другом mainMap.at(index.row()).second.second.first) ?