Usually beginResetModel and endResetModel are last resorts for updating model as this would cause all delegates to be recreated. Instead in case of append we should use "beginInsertRows(QModelIndex(), rowCount(), rowCount());" and "endInsertRows()".