what I should read to better understand Model / View / Delegate programming?
Basically everything I know comes from Advanced Qt Prgramming: Creating Great Software with C++ and Qt4
It is normal to set new delegate for each item if I need to show heterogeneous data in list?
No. What I would do is create a QStackedWidget with the possible combinations, use that as base and display the correct page based on the data in the index