QTreeView & QAbstractItemModel & insertRow

Estoy intentando implementar QAbstractItemModel para QTreeView. Tengo un problema al insertar filas. Noté que si inserto al comienzo de mi aplicación, todo funciona bien. Pero si inserto filas más tarde, después de algunas otras operaciones (como selecciones, etc.), los nuevos elementos permanecen invisibles. Además, QTreeView parece no funcionar en absoluto. ¿Tengo que emitir algunas señales para notificar a QTreeView sobre la inserción de filas?

Este es mi método de inserción:

bool LayersModel::insertRows(int position, int count, const QModelIndex  & parent)
{
    LayersModelItem * parentItem = getItem(parent);
    if (position > parentItem->childCount())
        return false;
    beginInsertRows(parent,position,position+count-1);
    bool result = true;
    for (;count;--count)
        result &= parentItem->insertChildren(position, new LayersModelItem());
    endInsertRows();
    return result;
}

LayersModelItem es una clase con QList con sus elementos secundarios y datos.

El código completo de mi proyecto (se necesitan librerías de KDE) está aquí:https: //github.com/coder89/PhotoFramesEditor/tree/v0.0. Para ver el problema, seleccione uno de los elementos azules en la ventana principal y luego haga clic derecho sobre él y seleccione "Eliminar elemento". (este método está en Canvas :: removeItems ()) y está completamente comentado: estoy desesperado y he tratado de encontrar la razón de este problema ... (de hecho, no eliminó nada, agrega un nuevo elemento ).

¡Gracias por cualquier ayuda y consejo!

Respuestas a la pregunta(1)

Su respuesta a la pregunta