I have a QTableView, a QSqlTableModel, and an QItemDelegate subclass. I create my model, and set that on the table view. I create my delegate, and call tableView->setItemDelegate(new MyDelegate());.

When my window display, the table does display the data from the SQL table. However, not a single method in my delegate is called. I implement
QWidget *createEditor(QWidget *parent, const QStyleOptionViewItem &, const QModelIndex &index) const;
void setEditorData(QWidget *editor, const QModelIndex &index) const;
void setModelData(QWidget *editor, QAbstractItemModel *model, const QModelIndex &index) const;

and have a log statement as the first line in each method. None gets hit.

Is there something about the combination of thee three classes that make them incompatible? Am I missing something?

Thanks!