diff options
| author | 2015-04-25 11:37:46 +0200 | |
|---|---|---|
| committer | 2015-04-25 11:37:46 +0200 | |
| commit | 5acfe8b8352ba028235e5ecf007d1b9b4fa3a0f8 (patch) | |
| tree | 16738510451648bc33298f79ca54fd0574ad0602 | |
| parent | ea649ea152b7797782ef0345f16de7bcbcc34767 (diff) | |
| download | OneRoll-5acfe8b8352ba028235e5ecf007d1b9b4fa3a0f8.tar.gz OneRoll-5acfe8b8352ba028235e5ecf007d1b9b4fa3a0f8.zip | |
Dot tree now also displays the result tree. (must be improved).
| -rw-r--r-- | node/executionnode.cpp | 2 | ||||
| -rw-r--r-- | node/sortresult.cpp | 3 | ||||
| -rw-r--r-- | result/diceresult.cpp | 9 | ||||
| -rw-r--r-- | result/diceresult.h | 5 | ||||
| -rw-r--r-- | result/result.cpp | 16 | ||||
| -rw-r--r-- | result/result.h | 2 | ||||
| -rw-r--r-- | result/scalarresult.cpp | 4 | ||||
| -rw-r--r-- | result/scalarresult.h | 2 | ||||
| -rw-r--r-- | result/stringresult.cpp | 4 | ||||
| -rw-r--r-- | result/stringresult.h | 6 |
10 files changed, 48 insertions, 5 deletions
diff --git a/node/executionnode.cpp b/node/executionnode.cpp index 343e8d9..0cb9c0b 100644 --- a/node/executionnode.cpp +++ b/node/executionnode.cpp @@ -59,5 +59,7 @@ void ExecutionNode::generateDotTree(QString& s) s.append(" -> "); s.append("NULL"); s.append(" [label=\"nextNode\"];\n"); + + m_result->generateDotTree(s); } } diff --git a/node/sortresult.cpp b/node/sortresult.cpp index 46e6eb8..deaf794 100644 --- a/node/sortresult.cpp +++ b/node/sortresult.cpp @@ -80,7 +80,8 @@ void SortResultNode::run(ExecutionNode* node) } else { - m_errors.append(DIE_RESULT_EXPECTED); + m_result = node->getResult(); + //m_errors.append(DIE_RESULT_EXPECTED); } } diff --git a/result/diceresult.cpp b/result/diceresult.cpp index f87079a..95122f1 100644 --- a/result/diceresult.cpp +++ b/result/diceresult.cpp @@ -82,3 +82,12 @@ qreal DiceResult::getScalarResult() return 0; } +QString DiceResult::toString() +{ + QStringList scalarSum; + foreach(Die* die,m_diceValues) + { + scalarSum << QString::number(die->getValue()); + } + return QString("DiceResult_Value_%1_dice_%2").arg(getScalarResult()).arg(scalarSum.join('_')); +} diff --git a/result/diceresult.h b/result/diceresult.h index b805e73..07378d1 100644 --- a/result/diceresult.h +++ b/result/diceresult.h @@ -61,6 +61,11 @@ public: * @return */ virtual QVariant getResult(RESULT_TYPE); + /** + * @brief toString + * @return + */ + virtual QString toString(); private: qreal getScalarResult(); diff --git a/result/result.cpp b/result/result.cpp index 3acca93..257045c 100644 --- a/result/result.cpp +++ b/result/result.cpp @@ -48,9 +48,21 @@ bool Result::hasResultOfType(RESULT_TYPE type) const void Result::generateDotTree(QString& s) { s.append(toString()); + if(NULL!=m_previous) + { + s.append(" -> "); + s.append(m_previous->toString()); + s.append(" [label=\"previousResult\"];\n"); + m_previous->generateDotTree(s); + } + { + s.append(" -> "); + s.append("NULL"); + s.append(" [label=\"previousResult\"];\n"); + } } -QString Result::toString() +/*QString Result::toString() { return QString(); -} +}*/ diff --git a/result/result.h b/result/result.h index dcd0b8d..3d635bc 100644 --- a/result/result.h +++ b/result/result.h @@ -77,7 +77,7 @@ public: * @brief toString * @return */ - QString toString(); + virtual QString toString() = 0; protected: int m_resultTypes;/// @brief private: diff --git a/result/scalarresult.cpp b/result/scalarresult.cpp index 8c924fe..a998608 100644 --- a/result/scalarresult.cpp +++ b/result/scalarresult.cpp @@ -36,3 +36,7 @@ QVariant ScalarResult::getResult(Result::RESULT_TYPE type) return m_value; } +QString ScalarResult::toString() +{ + return QString("ScalarResult_Value_%1").arg(m_value); +} diff --git a/result/scalarresult.h b/result/scalarresult.h index 35982be..4d64a90 100644 --- a/result/scalarresult.h +++ b/result/scalarresult.h @@ -35,6 +35,8 @@ public: void setValue(qreal i); + virtual QString toString(); + private: qreal m_value; }; diff --git a/result/stringresult.cpp b/result/stringresult.cpp index 9f7d2e1..4dbd577 100644 --- a/result/stringresult.cpp +++ b/result/stringresult.cpp @@ -31,3 +31,7 @@ QVariant StringResult::getResult(RESULT_TYPE type) return QVariant(); } +QString StringResult::toString() +{ + return QString("StringResult_value_%1").arg(getText().replace(" ","_")); +} diff --git a/result/stringresult.h b/result/stringresult.h index 17c43cd..4a9a4a4 100644 --- a/result/stringresult.h +++ b/result/stringresult.h @@ -32,7 +32,11 @@ public: * @return */ virtual QVariant getResult(RESULT_TYPE); - + /** + * @brief toString + * @return + */ + virtual QString toString(); private: QString m_value; }; |