pgLab/pglab/ParamTypeDelegate.h
2022-04-09 08:57:29 +02:00

32 lines
917 B
C++

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