Yeah, unfortunately manipulating the structure in a proxy model is not that easy.

I would suggest that you try to implement a simple tree model yourself first as to get a hang on how the model indexes work in tree structures.

Like starting with a list model (subclass QAbstractListModel) and once you fnd yourself comfortable with that try an QAbstractItemModel subclass.

Cheers,
_