diff options
author | Ulf Hermann <ulf.hermann@qt.io> | 2020-02-07 16:22:53 +0100 |
---|---|---|
committer | Ulf Hermann <ulf.hermann@qt.io> | 2020-03-17 14:44:26 +0100 |
commit | f4937a21b61bf2f214d175d77c432c68f25ead21 (patch) | |
tree | a9753103192cf6310913ed3127bf48d80aed8462 /src/qml/qml/qqmlengine.h | |
parent | 1eb20d70619cc896fc283bd6605b257a8750c518 (diff) |
Allow multiple URL interceptors per engine
We may want to have, for example, a QQmlFileSelector and a
component-specific interceptor that chooses a theme or similar.
Also, make the API public. We want to propose this as alternative to
dynamically registering QML files via qmlRegisterType(QUrl, ...).
Change-Id: I4a535d3ea556da6710fde816579ec188b3f57099
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
Diffstat (limited to 'src/qml/qml/qqmlengine.h')
-rw-r--r-- | src/qml/qml/qqmlengine.h | 16 |
1 files changed, 12 insertions, 4 deletions
diff --git a/src/qml/qml/qqmlengine.h b/src/qml/qml/qqmlengine.h index a686d8a1d9..e301082064 100644 --- a/src/qml/qml/qqmlengine.h +++ b/src/qml/qml/qqmlengine.h @@ -46,11 +46,10 @@ #include <QtQml/qjsengine.h> #include <QtQml/qqml.h> #include <QtQml/qqmlerror.h> +#include <QtQml/qqmlabstracturlinterceptor.h> QT_BEGIN_NAMESPACE -class QQmlAbstractUrlInterceptor; - class Q_QML_EXPORT QQmlImageProviderBase { public: @@ -127,8 +126,17 @@ public: QNetworkAccessManager *networkAccessManager() const; #endif - void setUrlInterceptor(QQmlAbstractUrlInterceptor* urlInterceptor); - QQmlAbstractUrlInterceptor* urlInterceptor() const; +#if QT_DEPRECATED_SINCE(6, 0) + QT_DEPRECATED void setUrlInterceptor(QQmlAbstractUrlInterceptor* urlInterceptor) + { + addUrlInterceptor(urlInterceptor); + } + QT_DEPRECATED QQmlAbstractUrlInterceptor *urlInterceptor() const; +#endif + + void addUrlInterceptor(QQmlAbstractUrlInterceptor *urlInterceptor); + void removeUrlInterceptor(QQmlAbstractUrlInterceptor *urlInterceptor); + QUrl interceptUrl(const QUrl &url, QQmlAbstractUrlInterceptor::DataType type) const; void addImageProvider(const QString &id, QQmlImageProviderBase *); QQmlImageProviderBase *imageProvider(const QString &id) const; |