[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-commits
Subject: KDE/kdeedu/kalgebra
From: Aleix Pol Gonzalez <aleixpol () gmail ! com>
Date: 2011-02-14 18:41:07
Message-ID: 20110214184107.3D601AC8BC () svn ! kde ! org
[Download RAW message or body]
SVN commit 1220690 by apol:
Make it possible to use expressionToVariant from Analitza.
M +27 -0 analitza/analitzautils.cpp
M +2 -0 analitza/analitzautils.h
M +3 -28 mobile/analitzawrapper.cpp
--- trunk/KDE/kdeedu/kalgebra/analitza/analitzautils.cpp #1220689:1220690
@@ -27,6 +27,7 @@
#include "variables.h"
#include "expression.h"
#include "apply.h"
+#include <QVariant>
using namespace Analitza;
namespace AnalitzaUtils
@@ -358,4 +359,30 @@
return eq;
}
+QVariant expressionToVariant(const Analitza::Expression& res)
+{
+ QVariant ret;
+ if(res.isVector() || res.isList()) {
+ QVariantList vals;
+
+ QList<Analitza::Expression> expressions = res.toExpressionList();
+ foreach(const Analitza::Expression& exp, expressions) {
+ vals << expressionToVariant(exp);
}
+
+ ret = vals;
+ } else if(res.isReal()) {
+ Analitza::Cn val = res.toReal();
+ if(val.isBoolean())
+ ret = val.isTrue();
+ else if(val.isInteger())
+ ret = int(val.value());
+ else
+ ret = val.value();
+ } else
+ ret = res.toString();
+
+ return ret;
+}
+
+}
--- trunk/KDE/kdeedu/kalgebra/analitza/analitzautils.h #1220689:1220690
@@ -55,6 +55,8 @@
/** Convenience function */
void ANALITZA_EXPORT objectWalker(const Analitza::Expression& o, const QByteArray& \
prefix=QByteArray());
+ /** Creates a QVariant out of an Expression @p res */
+ QVariant ANALITZA_EXPORT expressionToVariant(const Analitza::Expression& res);
}
#endif // ANALITZAUTILS_H
--- trunk/KDE/kdeedu/kalgebra/mobile/analitzawrapper.cpp #1220689:1220690
@@ -25,38 +25,13 @@
#include <QVariant>
#include <QScriptEngine>
#include <KLocalizedString>
+#include <analitza/analitzautils.h>
AnalitzaWrapper::AnalitzaWrapper(QScriptEngine* engine, QObject* parent)
: QObject(parent)
, m_wrapped(new Analitza::Analyzer), m_calc(false), m_engine(engine), \
m_varsModel(0) {}
-QVariant expressionToVariant(const Analitza::Expression& res)
-{
- QVariant ret;
- if(res.isVector() || res.isList()) {
- QVariantList vals;
-
- QList<Analitza::Expression> expressions = res.toExpressionList();
- foreach(const Analitza::Expression& exp, expressions) {
- vals << expressionToVariant(exp);
- }
-
- ret = vals;
- } else if(res.isReal()) {
- Analitza::Cn val = res.toReal();
- if(val.isBoolean())
- ret = val.isTrue();
- else if(val.isInteger())
- ret = int(val.value());
- else
- ret = val.value();
- } else
- ret = res.toString();
-
- return ret;
-}
-
QVariant AnalitzaWrapper::execute(const QString& expression)
{
Analitza::Expression e(expression, false);
@@ -78,7 +53,7 @@
} else if(m_varsModel) {
m_varsModel->updateInformation();
}
- return expressionToVariant(res);
+ return AnalitzaUtils::expressionToVariant(res);
}
Analitza::Expression variantToExpression(const QVariant& v)
@@ -119,7 +94,7 @@
m_wrapped->setStack(stack);
Analitza::Expression expr = m_wrapped->calculateLambda();
- return expressionToVariant(expr);
+ return AnalitzaUtils::expressionToVariant(expr);
}
QString AnalitzaWrapper::unusedVariableName() const
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic