blob: d427cd6951ce4bbe8f459b284f2f48cb952c24c2 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
|
#include "stringnode.h"
StringNode::StringNode()
: m_stringResult(new StringResult())
{
m_result = m_stringResult;
}
void StringNode::run(ExecutionNode *previous)
{
m_previousNode = previous;
if(NULL!=previous)
{
m_result->setPrevious(previous->getResult());
}
if(NULL!=m_nextNode)
{
m_nextNode->run(this);
}
}
void StringNode::setString(QString str)
{
m_data = str;
m_stringResult->setText(m_data);
}
QString StringNode::toString(bool withLabel) const
{
if(withLabel)
{
return QString("%1 [label=\"StringNode %2\"]").arg(m_id).arg(m_data);
}
else
{
return m_id;
}
}
/*void StringNode::getScalarResult()
{
QString scalarText;
if(m_diceParser->hasIntegerResultNotInFirst())
{
scalarText = QStringLiteral("%1").arg(m_diceParser->getLastIntegerResult());
}
else if(hasDiceList)
{
scalarText = QStringLiteral("%1").arg(m_diceParser->getSumOfDiceResult());
}
}*/
/*bool StringNode::getMessageResult(QString& value, QString& command, QString& list)
{
QString scalarText;
QString diceText;
//QString pattern("");
bool hasDiceList = false;
if(m_diceParser->hasDiceResult())
{
ExportedDiceResult diceList;
bool ok;
m_diceParser->getLastDiceResult(diceList,ok);//fills the ExportedDiceResult
diceText = diceToText(diceList);
hasDiceList= true;
}
if(m_diceParser->hasSeparator())
{
bool ok;
QStringList allStringlist = m_diceParser->getAllDiceResult(ok);
if(ok)
{
QString patternColor("<span class=\"dice\">%1</span>");
list = patternColor.arg(allStringlist.join(' '));
scalarText = list;
}
}
else if(m_diceParser->hasIntegerResultNotInFirst())
{
scalarText = QStringLiteral("%1").arg(m_diceParser->getLastIntegerResult());
}
else if(hasDiceList)
{
scalarText = QStringLiteral("%1").arg(m_diceParser->getSumOfDiceResult());
}
value=scalarText;
list = diceText.trimmed();
command = m_diceParser->getDiceCommand().toHtmlEscaped();
if(m_diceParser->hasStringResult())
{
bool ok;
QStringList allStringlist = m_diceParser->getAllStringResult(ok);
if(ok)
{
QString patternColor("<span class=\"dice\">%1</span>");
list = patternColor.arg(allStringlist.join(' '));
value = list;
}
else
{
value = m_diceParser->getStringResult().replace("\n","<br/>");
list = allStringlist.join(' ');
return true;
}
}
return false;
}*/
qint64 StringNode::getPriority() const
{
qint64 priority=0;
if(NULL!=m_nextNode)
{
priority = m_nextNode->getPriority();
}
return priority;
}
ExecutionNode* StringNode::getCopy() const
{
StringNode* node = new StringNode();
node->setString(m_data);
if(NULL!=m_nextNode)
{
node->setNextNode(m_nextNode->getCopy());
}
return node;
}
|