diff --git a/src/corelib/.prev_configure.cmake b/src/corelib/.prev_configure.cmake index 9b69329c9b..63238845a0 100644 --- a/src/corelib/.prev_configure.cmake +++ b/src/corelib/.prev_configure.cmake @@ -782,7 +782,7 @@ qt_feature("sortfilterproxymodel" PUBLIC SECTION "ItemViews" LABEL "QSortFilterProxyModel" PURPOSE "Supports sorting and filtering of data passed between another model and a view." - CONDITION QT_FEATURE_proxymodel + CONDITION QT_FEATURE_proxymodel AND QT_FEATURE_regularexpression ) qt_feature_definition("sortfilterproxymodel" "QT_NO_SORTFILTERPROXYMODEL" NEGATE VALUE "1") qt_feature("identityproxymodel" PUBLIC diff --git a/src/corelib/configure.cmake b/src/corelib/configure.cmake index 6dab11b5a5..0b272a6c70 100644 --- a/src/corelib/configure.cmake +++ b/src/corelib/configure.cmake @@ -788,7 +788,7 @@ qt_feature("sortfilterproxymodel" PUBLIC SECTION "ItemViews" LABEL "QSortFilterProxyModel" PURPOSE "Supports sorting and filtering of data passed between another model and a view." - CONDITION QT_FEATURE_proxymodel + CONDITION QT_FEATURE_proxymodel AND QT_FEATURE_regularexpression ) qt_feature_definition("sortfilterproxymodel" "QT_NO_SORTFILTERPROXYMODEL" NEGATE VALUE "1") qt_feature("identityproxymodel" PUBLIC diff --git a/src/corelib/configure.json b/src/corelib/configure.json index 9c8615cf74..b1ba89cd39 100644 --- a/src/corelib/configure.json +++ b/src/corelib/configure.json @@ -898,7 +898,7 @@ "label": "QSortFilterProxyModel", "purpose": "Supports sorting and filtering of data passed between another model and a view.", "section": "ItemViews", - "condition": "features.proxymodel", + "condition": "features.proxymodel && features.regularexpression", "output": [ "publicFeature", "feature" ] }, "identityproxymodel": { diff --git a/src/corelib/global/qconfig-bootstrapped.h b/src/corelib/global/qconfig-bootstrapped.h index 4649395c5f..a3db9231a9 100644 --- a/src/corelib/global/qconfig-bootstrapped.h +++ b/src/corelib/global/qconfig-bootstrapped.h @@ -66,8 +66,6 @@ #define QT_NO_USING_NAMESPACE #define QT_NO_DEPRECATED -#define QT_NO_REGEXP - // Keep feature-test macros in alphabetic order by feature name: #define QT_FEATURE_alloca 1 #define QT_FEATURE_alloca_h -1 diff --git a/src/corelib/global/qt_pch.h b/src/corelib/global/qt_pch.h index 8e59ace85d..58697517b5 100644 --- a/src/corelib/global/qt_pch.h +++ b/src/corelib/global/qt_pch.h @@ -69,7 +69,9 @@ #include #include /* All moc genereated code has this include */ #include -#include +#if QT_CONFIG(regularexpression) +# include +#endif #include #include #include diff --git a/src/corelib/itemmodels/qsortfilterproxymodel.cpp b/src/corelib/itemmodels/qsortfilterproxymodel.cpp index 38417bbba6..398425c020 100644 --- a/src/corelib/itemmodels/qsortfilterproxymodel.cpp +++ b/src/corelib/itemmodels/qsortfilterproxymodel.cpp @@ -2484,7 +2484,6 @@ Qt::SortOrder QSortFilterProxyModel::sortOrder() const return d->sort_order; } -#if QT_CONFIG(regularexpression) /*! \since 5.12 \property QSortFilterProxyModel::filterRegularExpression @@ -2512,7 +2511,6 @@ void QSortFilterProxyModel::setFilterRegularExpression(const QRegularExpression d->filter_data = regularExpression; d->filter_changed(QSortFilterProxyModelPrivate::Direction::Rows); } -#endif /*! \property QSortFilterProxyModel::filterKeyColumn @@ -2640,7 +2638,6 @@ void QSortFilterProxyModel::setSortLocaleAware(bool on) emit sortLocaleAwareChanged(on); } -#if QT_CONFIG(regularexpression) /*! \since 5.12 @@ -2661,7 +2658,6 @@ void QSortFilterProxyModel::setFilterRegularExpression(const QString &pattern) d->filter_data.setPattern(pattern); d->filter_changed(QSortFilterProxyModelPrivate::Direction::Rows); } -#endif /*! Sets the wildcard expression used to filter the contents diff --git a/src/corelib/itemmodels/qsortfilterproxymodel.h b/src/corelib/itemmodels/qsortfilterproxymodel.h index d2c5054351..026da9ecf7 100644 --- a/src/corelib/itemmodels/qsortfilterproxymodel.h +++ b/src/corelib/itemmodels/qsortfilterproxymodel.h @@ -42,9 +42,7 @@ #include -#if QT_CONFIG(regularexpression) -# include -#endif +#include QT_REQUIRE_CONFIG(sortfilterproxymodel); @@ -61,9 +59,7 @@ class Q_CORE_EXPORT QSortFilterProxyModel : public QAbstractProxyModel friend class QSortFilterProxyModelGreaterThan; Q_OBJECT -#if QT_CONFIG(regularexpression) Q_PROPERTY(QRegularExpression filterRegularExpression READ filterRegularExpression WRITE setFilterRegularExpression) -#endif Q_PROPERTY(int filterKeyColumn READ filterKeyColumn WRITE setFilterKeyColumn) Q_PROPERTY(bool dynamicSortFilter READ dynamicSortFilter WRITE setDynamicSortFilter) Q_PROPERTY(Qt::CaseSensitivity filterCaseSensitivity READ filterCaseSensitivity WRITE setFilterCaseSensitivity NOTIFY filterCaseSensitivityChanged) @@ -86,9 +82,7 @@ public: QItemSelection mapSelectionToSource(const QItemSelection &proxySelection) const override; QItemSelection mapSelectionFromSource(const QItemSelection &sourceSelection) const override; -#if QT_CONFIG(regularexpression) QRegularExpression filterRegularExpression() const; -#endif int filterKeyColumn() const; void setFilterKeyColumn(int column); @@ -121,10 +115,8 @@ public: void setAutoAcceptChildRows(bool accept); public Q_SLOTS: -#if QT_CONFIG(regularexpression) void setFilterRegularExpression(const QString &pattern); void setFilterRegularExpression(const QRegularExpression ®ularExpression); -#endif void setFilterWildcard(const QString &pattern); void setFilterFixedString(const QString &pattern); void invalidate(); diff --git a/src/corelib/text/qstring.cpp b/src/corelib/text/qstring.cpp index 390c10e1fc..24e725ee9a 100644 --- a/src/corelib/text/qstring.cpp +++ b/src/corelib/text/qstring.cpp @@ -4569,7 +4569,7 @@ QString QString::section(const QString &sep, qsizetype start, qsizetype end, Sec return ret; } -#if !(defined(QT_NO_REGEXP) && !QT_CONFIG(regularexpression)) +#if QT_CONFIG(regularexpression) class qt_section_chunk { public: qt_section_chunk() {} @@ -4637,9 +4637,7 @@ static QString extractSections(const QList §ions, qsizetyp return ret; } -#endif -#if QT_CONFIG(regularexpression) /*! \overload section() \since 5.0