#ifndef PARAMTYPEDELEGATE_H #define PARAMTYPEDELEGATE_H #include class TypeSelectionItemModel; /** Item delegate for supplying a combobox for selected the parameter type in * the parameter list. */ class ParamTypeDelegate : public QStyledItemDelegate { Q_OBJECT public: ParamTypeDelegate(); ~ParamTypeDelegate(); QWidget *createEditor(QWidget *parent, const QStyleOptionViewItem &option, const QModelIndex &index) const override; void setTypeSelectionModel(TypeSelectionItemModel* model); void setEditorData(QWidget *editor, const QModelIndex &index) const override; void setModelData(QWidget *editor, QAbstractItemModel *model, const QModelIndex &index) const override; private: TypeSelectionItemModel* m_typeSelectionModel = nullptr; private slots: void commitAndCloseEditor(); }; #endif // PARAMTYPEDELEGATE_H