For that kind of things the combo: QListView QStringListModel QIdentityProxyModel << Customize the icons here would do it in a simpler way. As for items being QObject derived classes, rather not. The various QXXXItem classes must be as lightweight as possible since there can be several thousands of them and QObject has a cost and constraints. Except maybe in a few corner cases there would be no real benefit to have it there for the common usage.