// BCValueDelegate.h #ifndef BCVALUEDELEGATE_H #define BCVALUEDELEGATE_H #include class BCValueDelegate : public QStyledItemDelegate { Q_OBJECT public: explicit BCValueDelegate(QObject *parent = nullptr); // WICHTIG: Zuständig für die normale Anzeige (ohne Editor) QString displayText(const QVariant& dataValue, const QLocale& locale) const override; // Zuständig für den Edit-Modus (Doppelklick) 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 updateEditorGeometry(QWidget *editor, const QStyleOptionViewItem &option, const QModelIndex &index) const override; QSize sizeHint(const QStyleOptionViewItem &option,const QModelIndex &index) const override; private: QString formatDisplayString(const QModelIndex &index) const; }; #endif // BCVALUEDELEGATE_H