From 34017a8c5aaca2723fb62e79ea177b5579040ad3 Mon Sep 17 00:00:00 2001 From: Ulf Hermann Date: Fri, 2 Dec 2016 10:51:15 +0100 Subject: Sql: Add a feature for the SQL item models ... and make sure we can build if it's switched off. Change-Id: I9565a2ce632a861a99e1276f3edf4f0d094b5451 Reviewed-by: Oswald Buddenhagen Reviewed-by: Edward Welbourne --- configure.json | 1 + src/plugins/sqldrivers/configure.json | 2 +- src/sql/configure.json | 22 ++++++++++++++++++++++ src/sql/kernel/qtsqlglobal.h | 1 + src/sql/kernel/qtsqlglobal_p.h | 1 + src/sql/models/qsqlquerymodel.h | 3 ++- src/sql/models/qsqlquerymodel_p.h | 2 ++ src/sql/models/qsqlrelationaldelegate.h | 2 ++ src/sql/models/qsqlrelationaltablemodel.h | 2 ++ src/sql/models/qsqltablemodel.h | 2 ++ src/sql/models/qsqltablemodel_p.h | 2 ++ src/sql/sql.pro | 2 +- 12 files changed, 39 insertions(+), 3 deletions(-) create mode 100644 src/sql/configure.json diff --git a/configure.json b/configure.json index a7b8149469..e6d054d64a 100644 --- a/configure.json +++ b/configure.json @@ -11,6 +11,7 @@ "src/corelib", "src/network", "src/gui", + "src/sql", "src/xml", "src/widgets", "src/printsupport", diff --git a/src/plugins/sqldrivers/configure.json b/src/plugins/sqldrivers/configure.json index 234f880579..4802d3b04d 100644 --- a/src/plugins/sqldrivers/configure.json +++ b/src/plugins/sqldrivers/configure.json @@ -229,7 +229,7 @@ Oracle driver, as the current build will most likely fail." "summary": [ { - "section": "Qt Sql", + "section": "Qt Sql Drivers", "entries": [ "sql-db2", "sql-ibase", "sql-mysql", "sql-oci", "sql-odbc", "sql-psql", "sql-sqlite2", "sql-sqlite", "system-sqlite", "sql-tds" diff --git a/src/sql/configure.json b/src/sql/configure.json new file mode 100644 index 0000000000..8fdc27e3a2 --- /dev/null +++ b/src/sql/configure.json @@ -0,0 +1,22 @@ +{ + "module": "sql", + "depends": [ + "core" + ], + + "features": { + "sqlmodel": { + "label": "SQL item models", + "purpose": "Provides item model classes backed by SQL databases.", + "condition": "features.itemmodel", + "output": [ "publicFeature" ] + } + }, + + "summary": [ + { + "section": "Qt Sql", + "entries": [ "sqlmodel" ] + } + ] +} diff --git a/src/sql/kernel/qtsqlglobal.h b/src/sql/kernel/qtsqlglobal.h index d421adc84b..ec79e8da1e 100644 --- a/src/sql/kernel/qtsqlglobal.h +++ b/src/sql/kernel/qtsqlglobal.h @@ -41,6 +41,7 @@ #define QTSQLGLOBAL_H #include +#include QT_BEGIN_NAMESPACE diff --git a/src/sql/kernel/qtsqlglobal_p.h b/src/sql/kernel/qtsqlglobal_p.h index ab45f6cd38..78a2461257 100644 --- a/src/sql/kernel/qtsqlglobal_p.h +++ b/src/sql/kernel/qtsqlglobal_p.h @@ -53,5 +53,6 @@ #include #include +#include #endif // QTSQLGLOBAL_P_H diff --git a/src/sql/models/qsqlquerymodel.h b/src/sql/models/qsqlquerymodel.h index 869a5f030c..427b369ae2 100644 --- a/src/sql/models/qsqlquerymodel.h +++ b/src/sql/models/qsqlquerymodel.h @@ -44,8 +44,9 @@ #include #include -QT_BEGIN_NAMESPACE +QT_REQUIRE_CONFIG(sqlmodel); +QT_BEGIN_NAMESPACE class QSqlQueryModelPrivate; class QSqlError; diff --git a/src/sql/models/qsqlquerymodel_p.h b/src/sql/models/qsqlquerymodel_p.h index ffc34b9f95..76aaf00c88 100644 --- a/src/sql/models/qsqlquerymodel_p.h +++ b/src/sql/models/qsqlquerymodel_p.h @@ -60,6 +60,8 @@ #include "QtCore/qvarlengtharray.h" #include "QtCore/qvector.h" +QT_REQUIRE_CONFIG(sqlmodel); + QT_BEGIN_NAMESPACE class QSqlQueryModelPrivate: public QAbstractItemModelPrivate diff --git a/src/sql/models/qsqlrelationaldelegate.h b/src/sql/models/qsqlrelationaldelegate.h index 53f43a4acb..0af87f64ae 100644 --- a/src/sql/models/qsqlrelationaldelegate.h +++ b/src/sql/models/qsqlrelationaldelegate.h @@ -42,6 +42,8 @@ #include +QT_REQUIRE_CONFIG(sqlmodel); + #ifdef QT_WIDGETS_LIB #include diff --git a/src/sql/models/qsqlrelationaltablemodel.h b/src/sql/models/qsqlrelationaltablemodel.h index 90b7a6481f..555755009c 100644 --- a/src/sql/models/qsqlrelationaltablemodel.h +++ b/src/sql/models/qsqlrelationaltablemodel.h @@ -45,6 +45,8 @@ #include +QT_REQUIRE_CONFIG(sqlmodel); + QT_BEGIN_NAMESPACE diff --git a/src/sql/models/qsqltablemodel.h b/src/sql/models/qsqltablemodel.h index 77b0517c74..7acc7dc94d 100644 --- a/src/sql/models/qsqltablemodel.h +++ b/src/sql/models/qsqltablemodel.h @@ -44,6 +44,8 @@ #include #include +QT_REQUIRE_CONFIG(sqlmodel); + QT_BEGIN_NAMESPACE diff --git a/src/sql/models/qsqltablemodel_p.h b/src/sql/models/qsqltablemodel_p.h index 490bb48a24..faa1b30803 100644 --- a/src/sql/models/qsqltablemodel_p.h +++ b/src/sql/models/qsqltablemodel_p.h @@ -56,6 +56,8 @@ #include "QtSql/qsqlindex.h" #include "QtCore/qmap.h" +QT_REQUIRE_CONFIG(sqlmodel); + QT_BEGIN_NAMESPACE class Q_AUTOTEST_EXPORT QSqlTableModelPrivate: public QSqlQueryModelPrivate diff --git a/src/sql/sql.pro b/src/sql/sql.pro index 821ae1c9b9..1cd2a05250 100644 --- a/src/sql/sql.pro +++ b/src/sql/sql.pro @@ -11,7 +11,7 @@ PRECOMPILED_HEADER = ../corelib/global/qt_pch.h SQL_P = sql include(kernel/kernel.pri) -include(models/models.pri) +qtConfig(sqlmodel): include(models/models.pri) MODULE_PLUGIN_TYPES = \ sqldrivers -- cgit v1.2.3