21 #ifndef SCRIPTABLETAGS_H
22 #define SCRIPTABLETAGS_H
25 #include "taglibraryinterface.h"
27 #include <QtQml/QJSValue>
39 QJSEngine *m_scriptEngine;
43 : m_scriptEngine(scriptEngine)
47 Q_INVOKABLE QJSValue markSafeFunction(QJSValue inputValue);
48 Q_INVOKABLE QJSValue ScriptableFilterExpressionConstructor(
QString name,
51 Q_INVOKABLE QJSValue ScriptableNodeConstructor(QJSValue callContext);
52 Q_INVOKABLE QJSValue ScriptableVariableConstructor(
QString name);
53 Q_INVOKABLE QJSValue ScriptableTemplateConstructor(
QString content,
62 Q_PLUGIN_METADATA(IID
"org.cutelee.TagLibraryInterface")
69 QHash<QString, Filter *>
filters(
const QString &name = {})
override;
72 void addFactory(
const QString &factoryName,
const QString &tagname);
73 void addFilter(
const QString &filterName);
76 bool evaluateScript(
const QString &name);
77 QHash<QString, AbstractNodeFactory *> getFactories();
78 QHash<QString, Filter *> getFilters();
81 QJSEngine *m_scriptEngine;
83 QHash<QString, AbstractNodeFactory *> m_nodeFactories;
84 QHash<QString, QString> m_factoryNames;
85 QStringList m_filterNames;
86 QHash<QString, Filter *> m_filters;
QHash< QString, AbstractNodeFactory * > nodeFactories(const QString &name={}) override
QHash< QString, Filter * > filters(const QString &name={}) override
The TagLibraryInterface returns available tags and filters from libraries.
The Cutelee namespace holds all public Cutelee API.