aboutsummaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
authorRenaud G <renaud@rolisteam.org>2015-08-27 17:01:59 +0200
committerRenaud G <renaud@rolisteam.org>2015-08-27 17:01:59 +0200
commit41b9202ef9102cb94e5b3fdcf8ce760509abaa49 (patch)
tree177a21853ec3f272d6a52b3968ee1a7eaa1ca107
parent372e9cc02d36f40a70faa5e45ce648cdd8b98850 (diff)
parent0e4d08bf25a81ac68635f526f17ae5e82152cb10 (diff)
downloadOneRoll-41b9202ef9102cb94e5b3fdcf8ce760509abaa49.tar.gz
OneRoll-41b9202ef9102cb94e5b3fdcf8ce760509abaa49.zip
Merge branch 'doneWork'
-rw-r--r--diceparser.cpp23
-rw-r--r--diceparser.h5
-rw-r--r--node/helpnode.cpp1
-rw-r--r--node/listaliasnode.cpp1
-rw-r--r--result/stringresult.cpp10
-rw-r--r--result/stringresult.h4
6 files changed, 44 insertions, 0 deletions
diff --git a/diceparser.cpp b/diceparser.cpp
index 3831400..8c910a2 100644
--- a/diceparser.cpp
+++ b/diceparser.cpp
@@ -393,6 +393,29 @@ QString DiceParser::getStringResult()
}
return str;
}
+QStringList DiceParser::getAllStringResult(bool& hasAlias)
+{
+ ExecutionNode* next = getLeafNode();
+ Result* result=next->getResult();
+ QStringList stringListResult;
+
+ while(NULL!=result)
+ {
+ if(result->hasResultOfType(Result::STRING))
+ {
+ StringResult* stringResult = dynamic_cast<StringResult*>(result);
+ if(NULL!=stringResult)
+ {
+ stringListResult << stringResult->getText();
+ hasAlias = stringResult->hasHighLight();
+ }
+ }
+ result = result->getPrevious();
+ }
+
+ return stringListResult;
+}
+
void DiceParser::getLastDiceResult(ExportedDiceResult& diceValues)
{
ExecutionNode* next = getLeafNode();
diff --git a/diceparser.h b/diceparser.h
index 3eb55f1..6cc6d47 100644
--- a/diceparser.h
+++ b/diceparser.h
@@ -191,6 +191,11 @@ public:
* @param l the path.
*/
void setPathToHelp(QString l);
+ /**
+ * @brief getAllStringResult
+ * @return
+ */
+ QStringList getAllStringResult(bool& hasAlias);
private:
/**
diff --git a/node/helpnode.cpp b/node/helpnode.cpp
index 6108e4d..62dc86e 100644
--- a/node/helpnode.cpp
+++ b/node/helpnode.cpp
@@ -9,6 +9,7 @@ void HelpNode::run(ExecutionNode* previous)
{
m_previousNode = previous;
StringResult* txtResult = dynamic_cast<StringResult*>(m_result);
+ txtResult->setHighLight(false);
if(NULL != previous)
{
diff --git a/node/listaliasnode.cpp b/node/listaliasnode.cpp
index ddb8ac9..1809eac 100644
--- a/node/listaliasnode.cpp
+++ b/node/listaliasnode.cpp
@@ -29,6 +29,7 @@ void ListAliasNode::run(ExecutionNode* previous )
{
m_previousNode = previous;
StringResult* txtResult = dynamic_cast<StringResult*>(m_result);
+ txtResult->setHighLight(false);
if(NULL != previous)
{
diff --git a/result/stringresult.cpp b/result/stringresult.cpp
index 4dbd577..474ae23 100644
--- a/result/stringresult.cpp
+++ b/result/stringresult.cpp
@@ -2,6 +2,7 @@
StringResult::StringResult()
{
+ m_highlight = true;
m_resultTypes = Result::STRING;
}
void StringResult::setText(QString text)
@@ -35,3 +36,12 @@ QString StringResult::toString()
{
return QString("StringResult_value_%1").arg(getText().replace(" ","_"));
}
+void StringResult::setHighLight(bool b)
+{
+ m_highlight = b;
+}
+
+bool StringResult::hasHighLight() const
+{
+ return m_highlight;
+}
diff --git a/result/stringresult.h b/result/stringresult.h
index 5a6b26c..6819aaa 100644
--- a/result/stringresult.h
+++ b/result/stringresult.h
@@ -37,8 +37,12 @@ public:
* @return
*/
virtual QString toString();
+
+ virtual void setHighLight(bool );
+ virtual bool hasHighLight() const;
private:
QString m_value;
+ bool m_highlight;
};
#endif // STRINGRESULT_H