One approach I've been using lately is to just create a widget manually, and insert it into a cell with setCellWidget. This is probably the simplest way to create editors within cells, though at the expense of some flexibility. You lose the ability to take that cell into account when sorting, for example. However, widgets thus created will maintain their appearance (editing buttons and such will remain visible), which is a requirement for the work that I'm doing.

If there is a way to do this using delegates, I would be very interested in hearing about it!

Hope this helps.