Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025 #ifndef QXTITEMDELEGATE_H
00026 #define QXTITEMDELEGATE_H
00027
00028 #include <QItemDelegate>
00029 #include "qxtglobal.h"
00030 #include "qxtnamespace.h"
00031 #include "qxtpimpl.h"
00032
00033 class QxtItemDelegatePrivate;
00034
00035 class QXT_GUI_EXPORT QxtItemDelegate : public QItemDelegate
00036 {
00037 Q_OBJECT
00038 QXT_DECLARE_PRIVATE(QxtItemDelegate);
00039 Q_PROPERTY(Qxt::DecorationStyle decorationStyle READ decorationStyle WRITE setDecorationStyle)
00040 Q_PROPERTY(Qt::TextElideMode elideMode READ elideMode WRITE setElideMode)
00041 Q_PROPERTY(QString progressTextFormat READ progressTextFormat WRITE setProgressTextFormat)
00042 Q_PROPERTY(bool progressTextVisible READ isProgressTextVisible WRITE setProgressTextVisible)
00043
00044 public:
00045 explicit QxtItemDelegate(QObject* parent = 0);
00046 virtual ~QxtItemDelegate();
00047
00048 enum Role
00049 {
00050 ProgressValueRole = Qt::UserRole + 328,
00051 ProgressMinimumRole,
00052 ProgressMaximumRole
00053 };
00054
00055 Qxt::DecorationStyle decorationStyle() const;
00056 void setDecorationStyle(Qxt::DecorationStyle style);
00057
00058 Qt::TextElideMode elideMode() const;
00059 void setElideMode(Qt::TextElideMode mode);
00060
00061 QString progressTextFormat() const;
00062 void setProgressTextFormat(const QString& format);
00063
00064 bool isProgressTextVisible() const;
00065 void setProgressTextVisible(bool visible);
00066
00067 virtual QWidget* createEditor(QWidget* parent, const QStyleOptionViewItem& option, const QModelIndex& index) const;
00068 virtual void setModelData(QWidget* editor, QAbstractItemModel* model, const QModelIndex& index) const;
00069
00070 virtual void paint(QPainter* painter, const QStyleOptionViewItem& option, const QModelIndex& index) const;
00071 virtual QSize sizeHint(const QStyleOptionViewItem& option, const QModelIndex& index) const;
00072
00073 Q_SIGNALS:
00074 void editingStarted(const QModelIndex& index);
00075 void editingFinished(const QModelIndex& index);
00076 };
00077
00078 #endif // QXTITEMDELEGATE_H