5#ifndef QITEMEDITORFACTORY_H
6#define QITEMEDITORFACTORY_H
8#include <QtWidgets/qtwidgetsglobal.h>
9#include <QtCore/qmetaobject.h>
10#include <QtCore/qbytearray.h>
11#include <QtCore/qhash.h>
12#include <QtCore/qvariant.h>
14QT_REQUIRE_CONFIG(itemviews);
23 virtual ~QItemEditorCreatorBase();
25 virtual QWidget *createWidget(QWidget *parent)
const = 0;
26 virtual QByteArray valuePropertyName()
const = 0;
38 QByteArray propertyName;
52 QByteArray propertyName;
57Q_INLINE_TEMPLATE QItemEditorCreator<T>::QItemEditorCreator(
const QByteArray &avaluePropertyName)
58 : propertyName(avaluePropertyName) {}
63 inline QItemEditorFactory() {}
64 virtual ~QItemEditorFactory();
66 virtual QWidget *createEditor(
int userType, QWidget *parent)
const;
67 virtual QByteArray valuePropertyName(
int userType)
const;
69 void registerEditor(
int userType, QItemEditorCreatorBase *creator);
71 static const QItemEditorFactory *defaultFactory();
72 static void setDefaultFactory(QItemEditorFactory *factory);
75 QHash<
int, QItemEditorCreatorBase *> creatorMap;
const QWidget * widget(const QStyleOptionViewItem &option) const
QSizeF doTextLayout(int lineWidth) const
QRect displayRect(const QModelIndex &index, const QStyleOptionViewItem &option, const QRect &decorationRect, const QRect &checkRect) const
QRect textLayoutBounds(const QStyleOptionViewItem &option, const QRect &decorationRect, const QRect &checkRect) const
The QItemDelegate class provides display and editing facilities for data items from a model.
The QItemEditorCreatorBase class provides an abstract base class that must be subclassed when impleme...
The QItemEditorCreator class makes it possible to create item editor creator bases without subclassin...
QWidget * createWidget(QWidget *parent) const override
\reimp
QByteArray valuePropertyName() const override
\reimp
QItemEditorCreator(const QByteArray &valuePropertyName)
Constructs an editor creator object using valuePropertyName as the name of the property to be used fo...
The QItemEditorFactory class provides widgets for editing item data in views and delegates.
\inmodule QtCore\reentrant
The QStandardItemEditorCreator class provides the possibility to register widgets without having to s...
QByteArray valuePropertyName() const override
\reimp
QStandardItemEditorCreator()
Constructs an editor creator object.
QWidget * createWidget(QWidget *parent) const override
\reimp
QT_REQUIRE_CONFIG(itemviews)
static QString qPixmapSerial(quint64 i, bool enabled)