Grantlee
5.0.0
Main Page
Related Pages
Namespaces
Classes
Files
File List
File Members
templates
lib
template.h
1
/*
2
This file is part of the Grantlee template system.
3
4
Copyright (c) 2009,2010 Stephen Kelly <steveire@gmail.com>
5
6
This library is free software; you can redistribute it and/or
7
modify it under the terms of the GNU Lesser General Public
8
License as published by the Free Software Foundation; either version
9
2.1 of the Licence, or (at your option) any later version.
10
11
This library is distributed in the hope that it will be useful,
12
but WITHOUT ANY WARRANTY; without even the implied warranty of
13
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14
Lesser General Public License for more details.
15
16
You should have received a copy of the GNU Lesser General Public
17
License along with this library. If not, see <http://www.gnu.org/licenses/>.
18
19
*/
20
21
#ifndef GRANTLEE_TEMPLATE_H
22
#define GRANTLEE_TEMPLATE_H
23
24
#include "exception.h"
25
#include "grantlee_templates_export.h"
26
#include "node.h"
27
28
#include <QtCore/QSharedPointer>
29
#include <QtCore/QStringList>
30
31
namespace
Grantlee
32
{
33
class
Context;
34
class
Engine;
35
class
TemplateImpl;
36
class
OutputStream;
37
38
#ifdef Q_QDOC
39
#define TemplateImpl Template
40
#else
41
typedef
QSharedPointer<TemplateImpl> Template;
42
#endif
43
44
class
TemplatePrivate;
45
47
89
class
GRANTLEE_TEMPLATES_EXPORT TemplateImpl :
public
QObject
90
{
91
Q_OBJECT
92
public
:
93
~TemplateImpl();
94
98
QString render(
Context
*c )
const
;
99
103
OutputStream
* render(
OutputStream
*stream,
Context
*c )
const
;
104
105
#ifndef Q_QDOC
106
109
NodeList
nodeList()
const
;
110
114
void
setNodeList(
const
NodeList
&list );
115
#endif
116
120
Error
error()
const
;
121
125
QString errorString()
const
;
126
130
Engine
const
* engine()
const
;
131
132
#ifndef Q_QDOC
133
protected
:
134
TemplateImpl(
Engine
const
*engine, QObject *parent = 0 );
135
TemplateImpl(
Engine
const
*engine,
bool
smartTrim, QObject *parent = 0 );
136
137
void
setContent(
const
QString &templateString );
138
#endif
139
140
private
:
141
//Don't allow setting the parent on a Template, which is memory managed as a QSharedPointer.
142
using
QObject::setParent;
143
144
private
:
145
Q_DECLARE_PRIVATE( Template )
146
TemplatePrivate *
const
d_ptr;
147
#ifndef Q_QDOC
148
friend
class
Engine
;
149
friend
class
Parser
;
150
#endif
151
};
152
153
}
154
155
#endif
Grantlee::Context
The Context class holds the context to render a template with.
Definition:
context.h:109
Grantlee::Parser
The Parser class processes a string template into a tree of nodes.
Definition:
parser.h:48
Grantlee::Error
Error
Definition:
exception.h:37
Grantlee::NodeList
A list of Nodes with some convenience API for rendering them.
Definition:
node.h:141
Grantlee::OutputStream
The OutputStream class is used to render templates to a QTextStream.
Definition:
outputstream.h:76
Grantlee
The Grantlee namespace holds all public Grantlee API.
Definition:
Mainpage.dox:7
Grantlee::Engine
Grantlee::Engine is the main entry point for creating Grantlee Templates.
Definition:
engine.h:110
Generated by
1.8.9.1