Cutelyst  1.5.0
Public Member Functions | Protected Attributes | Properties | List of all members
Cutelyst::GrantleeView Class Reference

#include <grantleeview.h>

Inheritance diagram for Cutelyst::GrantleeView:
Inheritance graph
[legend]

Public Member Functions

 GrantleeView (QObject *parent=nullptr, const QString &name=QString())
 
void addTranslationCatalog (const QString &path, const QString &catalog)
 
void addTranslationCatalogs (const QHash< QString, QString > &catalogs)
 
void addTranslator (const QLocale &locale, QTranslator *translator)
 
void addTranslator (const QString &locale, QTranslator *translator)
 
Grantlee::Engine * engine () const
 
QStringList includePaths () const
 
bool isCaching () const
 
void preloadTemplates ()
 
QByteArray render (Context *c) const final
 
void setCache (bool enable)
 
void setIncludePaths (const QStringList &paths)
 
void setTemplateExtension (const QString &extension)
 
void setWrapper (const QString &name)
 
QString templateExtension () const
 
QString wrapper () const
 
- Public Member Functions inherited from Cutelyst::View
 View (QObject *parent, const QString &name=QString())
 
virtual Modifiers modifiers () const override
 
QString name () const
 
- Public Member Functions inherited from Cutelyst::Component
 Component (QObject *parent=nullptr)
 
bool execute (Context *c)
 
virtual bool init (Application *application, const QVariantHash &args)
 
QString name () const
 name More...
 
QString reverse () const
 name More...
 
void setName (const QString &name)
 
void setReverse (const QString &reverse)
 

Protected Attributes

GrantleeViewPrivate * d_ptr
 
- Protected Attributes inherited from Cutelyst::Component
ComponentPrivate * d_ptr
 

Properties

bool cache
 
QStringList includePaths
 
QString templateExtension
 
QString wrapper
 

Additional Inherited Members

- Public Types inherited from Cutelyst::Component
enum  Modifier {
  None, OnlyExecute, BeforeExecute, AroundExecute,
  AfterExecute
}
 
- Protected Member Functions inherited from Cutelyst::Component
virtual bool afterExecute (Context *c)
 
void applyRoles (const QStack< Component * > &roles)
 
virtual bool aroundExecute (Context *c, QStack< Component * > stack)
 
virtual bool beforeExecute (Context *c)
 
virtual bool dispatcherReady (const Dispatcher *dispatch, Controller *controller)
 

Detailed Description

GrantleeView is a Cutelyst::View handler that renders templates using Grantlee engine.

Definition at line 42 of file grantleeview.h.

Member Function Documentation

void Cutelyst::GrantleeView::addTranslationCatalog ( const QString &  path,
const QString &  catalog 
)

Dynamically adds translation catalog at path to the translator.

Translation catalogs can be used to dynamically integrate translations into the GrantleeView, for example for plugins and themes. The catalog could be the name of an extension for example that is loaded from a locale specifc directory under path.

The catalog will be loaded in the following way: /path/locale/catalog, for example /usr/share/mycutelystapp/l10n/de_DE/fancytheme.qm. The current locale is defined by Context::locale() when rendering the theme. The path /usr/share/myapp/l10n would then contain locale specific subdirectories like de_DE, pt_BR, etc. that contain the translation files named by catalog.

Usage example:
bool MyCutelystApp::init()
{
// ...
auto view = new GrantleeView(this);
view->addTranslationCatalog(QStringLiteral("/usr/share/mycutelystapp/l10n"), QStringLiteral("fancytheme"));
// ...
}
Since
Cutelyst 1.5.0
void Cutelyst::GrantleeView::addTranslationCatalogs ( const QHash< QString, QString > &  catalogs)

Adds a dictionary of translation catalogs and paths to the translator.

The key of the QHash is the name of the catalog, the value is the path. See addTranslationCatalog() for more information about translation catalogs.

Since
Cutelyst 1.5.0
void Cutelyst::GrantleeView::addTranslator ( const QLocale &  locale,
QTranslator *  translator 
)

Adds a translator for the specified locale to the list of translators.

Example usage
bool MyCutelystApp::init()
{
// ...
auto view = new GrantleeView(this);
auto deDeTrans = new QTranslator(this);
if (deDeTrans->load(QStringLiteral("de_DE"), QStringLiteral("/path/to/my/translations")) {
view->addTranslator(QLocale("de_DE"), deDeTrans);
}
auto ptBrTrans = new QTranslator(this);
if (ptBrTrans->load(QStringLiteral("pt_BR"), QStringLiteral("/path/to/my/translations")) {
view->addTranslator(QLocale("pt_BR"), ptBrTrans);
}
// ...
}
Since
Cutelyst 1.5.0
void Cutelyst::GrantleeView::addTranslator ( const QString &  locale,
QTranslator *  translator 
)

Adds a translator for the specified locale to the list of translators.

The locale string should be parseable by QLocale.

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Since
Cutelyst 1.4.0
QByteArray Cutelyst::GrantleeView::render ( Context c) const
finalvirtual

All subclasses must reimplement this when doing it's rendering. If an error (c->error()) is not set c->response()->body() is defined with the returned value, this is useful if the view is not meant to be used as a body.

Implements Cutelyst::View.