20#include <QWebEngineProfile>
21#include <QWebEngineScriptCollection>
31 return mApp->webProfile()->scripts()->count();
36 return mApp->webProfile()->scripts()->count();
41 return mApp->webProfile()->scripts()->isEmpty();
44QList<QObject*> QmlUserScripts::toQObjectList(
const QList<QWebEngineScript> &list)
const
46 QList<QObject*> userScriptList;
47 userScriptList.reserve(list.size());
48 for (
const QWebEngineScript &script : list) {
50 userScript->setWebEngineScript(script);
51 userScriptList.append(userScript);
53 return userScriptList;
58 auto *userScript = qobject_cast<QmlUserScript*>(
object);
62 QWebEngineScript webEngineScript = userScript->webEngineScript();
63 return mApp->webProfile()->scripts()->contains(webEngineScript);
70 auto scripts =
mApp->webProfile()->scripts()->find(name);
71 if (!scripts.empty()) {
72 qmlUserScript->setWebEngineScript(scripts.first());
80 QList<QWebEngineScript> list =
mApp->webProfile()->scripts()->find(name);
81 return toQObjectList(list);
86 auto *userScript = qobject_cast<QmlUserScript*>(
object);
90 QWebEngineScript webEngineScript = userScript->webEngineScript();
91 mApp->webProfile()->scripts()->remove(webEngineScript);
96 QList<QWebEngineScript> list =
mApp->webProfile()->scripts()->toList();
97 return toQObjectList(list);
102 auto *userScript = qobject_cast<QmlUserScript*>(
object);
106 QWebEngineScript webEngineScript = userScript->webEngineScript();
107 mApp->webProfile()->scripts()->insert(webEngineScript);
The class exposing QWebEngineScript to QML.
int count
Number of elements in the collection.
int size
Size of the collection.
Q_INVOKABLE bool contains(QObject *object) const
Checks if the script is in collection.
Q_INVOKABLE QList< QObject * > toList() const
Gets all the scripts of the collection.
Q_INVOKABLE QObject * findScript(const QString &name) const
Finds a script in collection by name.
bool empty
Checks if the collection is empty.
QmlUserScripts(QObject *parent=nullptr)
Q_INVOKABLE void remove(QObject *object) const
Removes a script from collection.
void insert(QObject *object)
Q_INVOKABLE QList< QObject * > findScripts(const QString &name) const
Finds all scripts in collection by a given name.