Search code examples
c++qtmodel-view

How to replace children in Qt Model-View framework?


I am using QAbstractItemModel to implement my model. I have a parent item and want to replace its child items with another set of child items. Before and after replacing, what model methods should I use? Or what model signals should I emit? Thanks.


Solution

  • in the model with parent being the QModelIndex of the parent items and count being the amount of child items to add:

    beginRemoveRows(parent, 0, rowCount(parent));
    //remove from data
    endRemoveRows();
    beginInsertRows(parent, 0, count);
    //add rows into data
    endInsertRows();