#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("%1"); 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("%1"); list = patternColor.arg(allStringlist.join(' ')); value = list; } else { value = m_diceParser->getStringResult().replace("\n","
"); 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; }