| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556 |
- #ifndef CUSTOMITEMDELEGATE_H
- #define CUSTOMITEMDELEGATE_H
- #include <QStyledItemDelegate>
- #include <QScopedPointer>
- class CustomItemDelegatePrivate;
- class CustomItemDelegate : public QStyledItemDelegate
- {
- Q_OBJECT
- Q_DISABLE_COPY(CustomItemDelegate)
- public:
- explicit CustomItemDelegate(QObject *parent = NULL);
- ~CustomItemDelegate();
- protected:
- virtual void mousePressEvent(QMouseEvent* event,
- QAbstractItemModel *model,
- const QStyleOptionViewItem &option,
- const QModelIndex &index);
- virtual void mouseMoveEvent(QMouseEvent* event,
- QAbstractItemModel *model,
- const QStyleOptionViewItem &option,
- const QModelIndex &index);
- virtual void mouseReleaseEvent(QMouseEvent* event,
- QAbstractItemModel *model,
- const QStyleOptionViewItem &option,
- const QModelIndex &index);
- void paint(QPainter* painter,
- const QStyleOptionViewItem &option,
- const QModelIndex &index) const;
- bool editorEvent(QEvent* event,
- QAbstractItemModel *model,
- const QStyleOptionViewItem &option,
- const QModelIndex &index);
- QWidget* createEditor(QWidget* editor,
- const QStyleOptionViewItem &option,
- const QModelIndex &index) const;
- void updateEditorGeometry(QWidget* editor,
- const QStyleOptionViewItem &option,
- const QModelIndex &index) const;
- QSize sizeHint(const QStyleOptionViewItem &option,
- const QModelIndex &index) const;
- void setEditorData(QWidget* editor,
- const QModelIndex &index) const;
- void setModelData(QWidget* editor,
- QAbstractItemModel *model,
- const QModelIndex &index) const;
- protected slots:
- virtual void onCurrentIndexChange(const QModelIndex &index);
- virtual void onPressIndexChanged(const QModelIndex &index);
- private:
- friend class CustomItemDelegatePrivate;
- QScopedPointer<CustomItemDelegatePrivate> m_Private;
- };
- #endif // CUSTOMITEMDELEGATE_H
|