[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