Cutelee
6.1.0
templates
loadertags
extends.h
1
/*
2
This file is part of the Cutelee 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 EXTENDSNODE_H
22
#define EXTENDSNODE_H
23
24
#include "node.h"
25
#include "template.h"
26
27
namespace
Cutelee
28
{
29
class
Parser
;
30
}
31
32
class
BlockNode
;
33
34
using namespace
Cutelee
;
35
36
class
ExtendsNodeFactory
:
public
AbstractNodeFactory
37
{
38
Q_OBJECT
39
public
:
40
ExtendsNodeFactory
(QObject *parent = {});
41
42
Node
*getNode(
const
QString
&tagContent,
Parser
*p)
const override
;
43
};
44
45
class
ExtendsNode
:
public
Node
46
{
47
Q_OBJECT
48
public
:
49
ExtendsNode
(
const
FilterExpression
&fe, QObject *parent = {});
50
~
ExtendsNode
()
override
;
51
52
void
setNodeList(
const
NodeList
&list);
53
54
void
render(
OutputStream
*stream,
Context
*c)
const override
;
55
56
void
appendNode(
Node
*node);
57
58
Template
getParent(
Context
*c)
const
;
59
60
bool
mustBeFirst()
override
{
return
true
; }
61
62
private
:
63
FilterExpression
m_filterExpression;
64
NodeList
m_list;
65
QHash<QString, BlockNode *> m_blocks;
66
};
67
68
#endif
BlockNode
Definition:
block.h:43
Cutelee::AbstractNodeFactory
Base class for all NodeFactories.
Definition:
node.h:300
Cutelee::Context
The Context class holds the context to render a Template with.
Definition:
context.h:119
Cutelee::FilterExpression
A FilterExpression object represents a filter expression in a template.
Definition:
filterexpression.h:120
Cutelee::NodeList
A list of Nodes with some convenience API for rendering them.
Definition:
node.h:148
Cutelee::Node
Base class for all nodes.
Definition:
node.h:78
Cutelee::OutputStream
The OutputStream class is used to render templates to a QTextStream.
Definition:
outputstream.h:81
Cutelee::Parser
The Parser class processes a string template into a tree of nodes.
Definition:
parser.h:49
Cutelee::Template
The Template class is a tree of nodes which may be rendered.
Definition:
template.h:95
ExtendsNodeFactory
Definition:
extends.h:37
ExtendsNode
Definition:
extends.h:46
QString
Definition:
operatorcasttests.cpp:24
Cutelee
The Cutelee namespace holds all public Cutelee API.
Definition:
Mainpage.dox:8
Generated by
1.9.1