- Qt 6.9
- Qt Widgets
- C++ Classes
- QStandardItemEditorCreator
- Qt 6.9.2 Reference Documentation

# QStandardItemEditorCreator Class

template <typename T> class QStandardItemEditorCreator

The QStandardItemEditorCreator class provides the possibility to register widgets without having to subclass QItemEditorCreatorBase. More...

Header: | `#include <QStandardItemEditorCreator>`
CMake: | `find_package(Qt6 REQUIRED COMPONENTS Widgets)` `target_link_libraries(mytarget PRIVATE Qt6::Widgets)`
qmake: | `QT += widgets`
Inherits: | QItemEditorCreatorBase

## Detailed Description

This convenience template class makes it possible to register widgets without having to subclass QItemEditorCreatorBase.

Example:

     QItemEditorFactory *editorFactory = new QItemEditorFactory;
     QItemEditorCreatorBase *creator = new QStandardItemEditorCreator<MyFancyDateTimeEdit>();
     editorFactory->registerEditor(QMetaType::QDateTime, creator);

Setting the `editorFactory` created above in an item delegate via QStyledItemDelegate::setItemEditorFactory() makes sure that all values of type QMetaType::QDateTime will be edited in `MyFancyDateTimeEdit`.

The editor must provide a user property that will contain the editing data. The property is used by QStyledItemDelegates to set and retrieve the data (using Qt's meta-object system). You set the user property with the USER keyword:

     Q_PROPERTY(QColor color READ color WRITE setColor USER true)

See also QItemEditorCreatorBase, QItemEditorCreator, QItemEditorFactory, and QStyledItemDelegate.