123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166 |
- #ifndef QQUICKWEBENGINEPROFILE_H
- #define QQUICKWEBENGINEPROFILE_H
- #include <QtWebEngine/qtwebengineglobal.h>
- #include <QtCore/QObject>
- #include <QtCore/QScopedPointer>
- #include <QtCore/QString>
- namespace QtWebEngineCore {
- class BrowserContextAdapter;
- }
- QT_BEGIN_NAMESPACE
- class QQuickWebEngineDownloadItem;
- class QQuickWebEngineProfilePrivate;
- class QQuickWebEngineSettings;
- class QWebEngineCookieStore;
- class QWebEngineUrlRequestInterceptor;
- class QWebEngineUrlSchemeHandler;
- class Q_WEBENGINE_EXPORT QQuickWebEngineProfile : public QObject {
- Q_OBJECT
- Q_PROPERTY(QString storageName READ storageName WRITE setStorageName NOTIFY storageNameChanged FINAL)
- Q_PROPERTY(bool offTheRecord READ isOffTheRecord WRITE setOffTheRecord NOTIFY offTheRecordChanged FINAL)
- Q_PROPERTY(QString persistentStoragePath READ persistentStoragePath WRITE setPersistentStoragePath NOTIFY persistentStoragePathChanged FINAL)
- Q_PROPERTY(QString cachePath READ cachePath WRITE setCachePath NOTIFY cachePathChanged FINAL)
- Q_PROPERTY(QString httpUserAgent READ httpUserAgent WRITE setHttpUserAgent NOTIFY httpUserAgentChanged FINAL)
- Q_PROPERTY(HttpCacheType httpCacheType READ httpCacheType WRITE setHttpCacheType NOTIFY httpCacheTypeChanged FINAL)
- Q_PROPERTY(QString httpAcceptLanguage READ httpAcceptLanguage WRITE setHttpAcceptLanguage NOTIFY httpAcceptLanguageChanged FINAL REVISION 1)
- Q_PROPERTY(PersistentCookiesPolicy persistentCookiesPolicy READ persistentCookiesPolicy WRITE setPersistentCookiesPolicy NOTIFY persistentCookiesPolicyChanged FINAL)
- Q_PROPERTY(int httpCacheMaximumSize READ httpCacheMaximumSize WRITE setHttpCacheMaximumSize NOTIFY httpCacheMaximumSizeChanged FINAL)
- public:
- QQuickWebEngineProfile(QObject *parent = Q_NULLPTR);
- ~QQuickWebEngineProfile();
- enum HttpCacheType {
- MemoryHttpCache,
- DiskHttpCache,
- NoCache
- };
- Q_ENUM(HttpCacheType)
- enum PersistentCookiesPolicy {
- NoPersistentCookies,
- AllowPersistentCookies,
- ForcePersistentCookies
- };
- Q_ENUM(PersistentCookiesPolicy)
- QString storageName() const;
- void setStorageName(const QString &name);
- bool isOffTheRecord() const;
- void setOffTheRecord(bool offTheRecord);
- QString persistentStoragePath() const;
- void setPersistentStoragePath(const QString &path);
- QString cachePath() const;
- void setCachePath(const QString &path);
- QString httpUserAgent() const;
- void setHttpUserAgent(const QString &userAgent);
- HttpCacheType httpCacheType() const;
- void setHttpCacheType(QQuickWebEngineProfile::HttpCacheType);
- PersistentCookiesPolicy persistentCookiesPolicy() const;
- void setPersistentCookiesPolicy(QQuickWebEngineProfile::PersistentCookiesPolicy);
- int httpCacheMaximumSize() const;
- void setHttpCacheMaximumSize(int maxSize);
- QString httpAcceptLanguage() const;
- void setHttpAcceptLanguage(const QString &httpAcceptLanguage);
- QWebEngineCookieStore *cookieStore() const;
- void setRequestInterceptor(QWebEngineUrlRequestInterceptor *interceptor);
- const QWebEngineUrlSchemeHandler *urlSchemeHandler(const QByteArray &) const;
- void installUrlSchemeHandler(const QByteArray &scheme, QWebEngineUrlSchemeHandler *);
- void removeUrlScheme(const QByteArray &scheme);
- void removeUrlSchemeHandler(QWebEngineUrlSchemeHandler *);
- void removeAllUrlSchemeHandlers();
- Q_REVISION(2) Q_INVOKABLE void clearHttpCache();
- static QQuickWebEngineProfile *defaultProfile();
- Q_SIGNALS:
- void storageNameChanged();
- void offTheRecordChanged();
- void persistentStoragePathChanged();
- void cachePathChanged();
- void httpUserAgentChanged();
- void httpCacheTypeChanged();
- void persistentCookiesPolicyChanged();
- void httpCacheMaximumSizeChanged();
- Q_REVISION(1) void httpAcceptLanguageChanged();
- void downloadRequested(QQuickWebEngineDownloadItem *download);
- void downloadFinished(QQuickWebEngineDownloadItem *download);
- private Q_SLOTS:
- void destroyedUrlSchemeHandler(QWebEngineUrlSchemeHandler *obj);
- private:
- Q_DECLARE_PRIVATE(QQuickWebEngineProfile)
- QQuickWebEngineProfile(QQuickWebEngineProfilePrivate *, QObject *parent = Q_NULLPTR);
- QQuickWebEngineSettings *settings() const;
- friend class QQuickWebEngineSettings;
- friend class QQuickWebEngineSingleton;
- friend class QQuickWebEngineViewPrivate;
- friend class QQuickWebEngineDownloadItem;
- friend class QQuickWebEngineDownloadItemPrivate;
- QScopedPointer<QQuickWebEngineProfilePrivate> d_ptr;
- };
- QT_END_NAMESPACE
- #endif
|