21 #ifndef GRANTLEE_ENGINE_H
22 #define GRANTLEE_ENGINE_H
25 #include "templateloader.h"
29 class TagLibraryInterface;
120 class GRANTLEE_TEMPLATES_EXPORT
Engine :
public QObject
127 Engine(QObject *parent = {});
137 QList<QSharedPointer<AbstractTemplateLoader>> templateLoaders();
143 void addTemplateLoader(QSharedPointer<AbstractTemplateLoader> loader);
153 void setPluginPaths(
const QStringList &dirs);
158 void addPluginPath(
const QString &dir);
163 void removePluginPath(
const QString &dir);
168 QStringList pluginPaths()
const;
182 QPair<QString, QString> mediaUri(
const QString &fileName)
const;
190 Template loadByName(
const QString &name)
const;
198 Template newTemplate(
const QString &content,
const QString &name)
const;
203 QStringList defaultLibraries()
const;
209 void addDefaultLibrary(
const QString &libName);
215 void removeDefaultLibrary(
const QString &libName);
225 bool smartTrimEnabled()
const;
232 void setSmartTrimEnabled(
bool enabled);
240 void loadDefaultLibraries();
255 EnginePrivate *
const d_ptr;