Cutelee
6.2.0
templates
defaulttags
ifequal.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 IFEQUALNODE_H
22
#define IFEQUALNODE_H
23
24
#include "node.h"
25
26
using namespace
Cutelee
;
27
28
class
IfEqualNodeFactory
:
public
AbstractNodeFactory
29
{
30
Q_OBJECT
31
public
:
32
IfEqualNodeFactory
();
33
34
Node
*getNode(
const
QString
&tagContent,
Parser
*p)
const override
;
35
36
protected
:
37
Node
*do_getNode(
const
QString
&tagContent,
Parser
*p,
bool
negate)
const
;
38
};
39
40
class
IfNotEqualNodeFactory
:
public
IfEqualNodeFactory
41
{
42
Q_OBJECT
43
public
:
44
IfNotEqualNodeFactory
();
45
46
Node
*getNode(
const
QString
&tagContent,
Parser
*p)
const override
;
47
};
48
49
class
IfEqualNode
:
public
Node
50
{
51
Q_OBJECT
52
public
:
53
IfEqualNode
(
const
FilterExpression
&val11,
const
FilterExpression
&val2,
54
bool
negate,
QObject
*parent = {});
55
56
void
setTrueList(
const
NodeList
&trueList);
57
void
setFalseList(
const
NodeList
&falseList);
58
59
void
render(
OutputStream
*stream,
Context
*c)
const override
;
60
61
private
:
62
FilterExpression
m_var1;
63
FilterExpression
m_var2;
64
NodeList
m_trueList;
65
NodeList
m_falseList;
66
bool
m_negate;
67
};
68
69
#endif
IfNotEqualNodeFactory
Definition:
ifequal.h:40
Cutelee::Context
The Context class holds the context to render a Template with.
Definition:
context.h:118
Cutelee
The Cutelee namespace holds all public Cutelee API.
Definition:
Mainpage.dox:7
Cutelee::AbstractNodeFactory
Base class for all NodeFactories.
Definition:
node.h:299
IfEqualNodeFactory
Definition:
ifequal.h:28
QObject
Cutelee::Node
Base class for all nodes.
Definition:
node.h:77
QString
Definition:
operatorcasttests.cpp:23
IfEqualNode
Definition:
ifequal.h:49
Cutelee::OutputStream
The OutputStream class is used to render templates to a QTextStream.
Definition:
outputstream.h:80
Cutelee::Parser
The Parser class processes a string template into a tree of nodes.
Definition:
parser.h:48
Cutelee::NodeList
A list of Nodes with some convenience API for rendering them.
Definition:
node.h:147
Cutelee::FilterExpression
A FilterExpression object represents a filter expression in a template.
Definition:
filterexpression.h:119
Generated by
1.8.14