Хы... Ну в принципе то, я так пока и сделал - в смысле стандартный рекурсивный алгоритм обхода дерева.
Но мне почему-то казалось что при наличии
QModelIndexList QAbstractItemModel::match который по идее уже сам умеет делать обход дерева, должны быть и готовые к использованию функции простого превращения дерева в массив.