реализации treemodel с кешированием данных
Я долго пытаюсь реализовать удаление, но не рекурсивное (как у автора), а выборочное, где родителю передаются узлы потомков удаляемого узла
Можете, пожалуйста, помочь мне понять, почему закомментированный код не работает? Точнее он работает, но после синхронизации endUpdate() появляется ошибка
m_treeModel->beginUpdate();
// outputNestedNodes.insert(outputNestedNodes.end(),
// std::make_move_iterator(inputNestedNodes.begin()),
// std::make_move_iterator(inputNestedNodes.end()));
parent->remove(productTypeNode);
m_treeModel->endUpdate();
хе... я не помню уже :) а что в begin & end Update ?
void VirtualTreeModel::beginUpdate() { ++m_updating; } void VirtualTreeModel::endUpdate() { if (m_updating == 1) syncTree(); --m_updating; // force tree to repaint all nestedNodes if (m_updating == 0) emit dataChanged(QModelIndex(), QModelIndex()); }
угу... ну похоже синхронизации не было в beginInsertRow обращение к индексу, котрый уже невалидный а если ломом? убрать условие на выполнение syncTree и emitDataChanged ?
Как именно нужно убрать условия? Не очень понял
Обсуждают сегодня