summaryrefslogtreecommitdiffstats
path: root/src/sql/models/qsqlrelationaldelegate.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/sql/models/qsqlrelationaldelegate.h')
-rw-r--r--src/sql/models/qsqlrelationaldelegate.h55
1 files changed, 27 insertions, 28 deletions
diff --git a/src/sql/models/qsqlrelationaldelegate.h b/src/sql/models/qsqlrelationaldelegate.h
index 189fc876fdd..130c82868e9 100644
--- a/src/sql/models/qsqlrelationaldelegate.h
+++ b/src/sql/models/qsqlrelationaldelegate.h
@@ -46,7 +46,7 @@ QT_REQUIRE_CONFIG(sqlmodel);
#ifdef QT_WIDGETS_LIB
-#include <QtWidgets/qitemdelegate.h>
+#include <QtWidgets/qstyleditemdelegate.h>
#if QT_CONFIG(listview)
#include <QtWidgets/qlistview.h>
#endif
@@ -58,8 +58,7 @@ QT_REQUIRE_CONFIG(sqlmodel);
#include <QtCore/qmetaobject.h>
QT_BEGIN_NAMESPACE
-// ### Qt6: QStyledItemDelegate
-class QSqlRelationalDelegate: public QItemDelegate
+class QSqlRelationalDelegate : public QStyledItemDelegate
{
static int fieldIndex(const QSqlTableModel *const model,
const QSqlDriver *const driver,
@@ -73,31 +72,31 @@ class QSqlRelationalDelegate: public QItemDelegate
public:
-explicit QSqlRelationalDelegate(QObject *aParent = nullptr)
- : QItemDelegate(aParent)
-{}
+ explicit QSqlRelationalDelegate(QObject *aParent = nullptr)
+ : QStyledItemDelegate(aParent)
+ {}
-~QSqlRelationalDelegate()
-{}
+ ~QSqlRelationalDelegate()
+ {}
-QWidget *createEditor(QWidget *aParent,
- const QStyleOptionViewItem &option,
- const QModelIndex &index) const override
-{
- const QSqlRelationalTableModel *sqlModel = qobject_cast<const QSqlRelationalTableModel *>(index.model());
- QSqlTableModel *childModel = sqlModel ? sqlModel->relationModel(index.column()) : nullptr;
- if (!childModel)
- return QItemDelegate::createEditor(aParent, option, index);
- const QSqlDriver *const driver = childModel->database().driver();
-
- QComboBox *combo = new QComboBox(aParent);
- combo->setModel(childModel);
- combo->setModelColumn(fieldIndex(childModel, driver,
- sqlModel->relation(index.column()).displayColumn()));
- combo->installEventFilter(const_cast<QSqlRelationalDelegate *>(this));
-
- return combo;
-}
+ QWidget *createEditor(QWidget *aParent,
+ const QStyleOptionViewItem &option,
+ const QModelIndex &index) const override
+ {
+ const QSqlRelationalTableModel *sqlModel = qobject_cast<const QSqlRelationalTableModel *>(index.model());
+ QSqlTableModel *childModel = sqlModel ? sqlModel->relationModel(index.column()) : nullptr;
+ if (!childModel)
+ return QStyledItemDelegate::createEditor(aParent, option, index);
+ const QSqlDriver *const driver = childModel->database().driver();
+
+ QComboBox *combo = new QComboBox(aParent);
+ combo->setModel(childModel);
+ combo->setModelColumn(fieldIndex(childModel, driver,
+ sqlModel->relation(index.column()).displayColumn()));
+ combo->installEventFilter(const_cast<QSqlRelationalDelegate *>(this));
+
+ return combo;
+ }
void setEditorData(QWidget *editor, const QModelIndex &index) const override
{
@@ -117,7 +116,7 @@ QWidget *createEditor(QWidget *aParent,
return;
}
}
- QItemDelegate::setEditorData(editor, index);
+ QStyledItemDelegate::setEditorData(editor, index);
}
void setModelData(QWidget *editor, QAbstractItemModel *model, const QModelIndex &index) const override
@@ -129,7 +128,7 @@ void setModelData(QWidget *editor, QAbstractItemModel *model, const QModelIndex
QSqlTableModel *childModel = sqlModel ? sqlModel->relationModel(index.column()) : nullptr;
QComboBox *combo = qobject_cast<QComboBox *>(editor);
if (!sqlModel || !childModel || !combo) {
- QItemDelegate::setModelData(editor, model, index);
+ QStyledItemDelegate::setModelData(editor, model, index);
return;
}
const QSqlDriver *const driver = childModel->database().driver();