cutelyst 3.9.1
A C++ Web Framework built on top of Qt, using the simple approach of Catalyst (Perl) framework.
Public Member Functions | Protected Member Functions | List of all members
Cutelyst::View Class Referenceabstract

Cutelyst View abstract view component More...

#include <Cutelyst/View>

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

Public Member Functions

 View (QObject *parent, const QString &name)
 
virtual Modifiers modifiers () const override
 
virtual QByteArray render (Context *c) const =0
 
void setMinimalSizeToDeflate (qint32 minSize=-1)
 
- Public Member Functions inherited from Cutelyst::Component
 Component (QObject *parent=nullptr)
 
bool execute (Context *c)
 
virtual bool init (Application *application, const QVariantHash &args)
 
virtual Modifiers modifiers () const
 
QString name () const
 
QString reverse () const
 
void setName (const QString &name)
 
void setReverse (const QString &reverse)
 

Protected Member Functions

 View (ViewPrivate *d, QObject *parent, const QString &name)
 A derived class using pimpl should call this constructor, to reduce the number of memory allocations.
 
- Protected Member Functions inherited from Cutelyst::Component
 Component (ComponentPrivate *d, QObject *parent=nullptr)
 A derived class using pimpl should call this constructor, to reduce the number of memory allocations.
 
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)
 
virtual bool doExecute (Context *c)
 

Additional Inherited Members

- Public Types inherited from Cutelyst::Component
enum  Modifier {
  None , OnlyExecute , BeforeExecute , AroundExecute ,
  AfterExecute
}
 

Detailed Description

Definition at line 21 of file view.h.

Constructor & Destructor Documentation

◆ View() [1/2]

View::View ( QObject *  parent,
const QString &  name 
)
explicit

The base implementation for a View class, a name for the view should be set to be found by Context->view()

Definition at line 18 of file view.cpp.

References Cutelyst::Component::name(), and Cutelyst::Component::setName().

◆ View() [2/2]

View::View ( ViewPrivate *  d,
QObject *  parent,
const QString &  name 
)
explicitprotected

Definition at line 24 of file view.cpp.

References Cutelyst::Component::name(), and Cutelyst::Component::setName().

Member Function Documentation

◆ modifiers()

Component::Modifiers View::modifiers ( ) const
overridevirtual

The default implementation returns Component::OnlyExecute

Reimplemented from Cutelyst::Component.

Definition at line 30 of file view.cpp.

◆ render()

virtual QByteArray Cutelyst::View::render ( Context c) const
pure virtual

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.

Implemented in Cutelyst::ClearSilver, Cutelyst::CuteleeView, Cutelyst::GrantleeView, Cutelyst::ViewJson, Cutelyst::ViewEmail, and Cutelyst::ViewEmailTemplate.

◆ setMinimalSizeToDeflate()

void View::setMinimalSizeToDeflate ( qint32  minSize = -1)

Set deflate minimal size to minSize. When minSize is not negative and view render output is larger than minSize, if ACCEPT_ENCODING contains 'deflate', then deflate view render output. To disable Deflate, set minSize to a negative integer.

Definition at line 65 of file view.cpp.