мои действия:
1) удалить старые данные, они мне больше не нужны
2) вставить новые данные
3) обновить модель, так?
т.е.
void SnowFileModel::files_found(const QFileInfoList &file_info_list, int model_index)
{
auto start = createIndex(0, 0);
auto end = createIndex(file_info_list.size(), 0);
beginRemoveRows(start, 0, m_file_info_list.size());
for (int idx = 0; idx < m_file_info_list.size(); ++idx) {
m_file_info_list.removeAt(idx);
}
endRemoveRows();
beginInsertRows(start, 0, file_info_list.size());
for (auto idx = 0; idx < file_info_list.size(); ++idx) {
m_file_info_list.insert(idx, file_info_list[idx]);
}
endInsertRows();
}
очень грубо это будет выглядеть как-ток
Если у тебя ощутимые изменения в модели, используй beginModelReset/endModelReset, чтобы не заморачиваться с индексами
Обсуждают сегодня