Extending script plot() function

This commit is contained in:
2025-04-23 13:37:47 +02:00
parent e6bab45a89
commit 78f242d808
6 changed files with 273 additions and 37 deletions
+6 -12
View File
@@ -136,19 +136,13 @@ QJSValue ScriptEngine::getItem(const QStringList &items, const QString &label, i
return ret;
}
void ScriptEngine::plot(const QJSValue &pointsArray)
void ScriptEngine::plot(const QJSValue &graph)
{
if(pointsArray.isArray())
{
int len = pointsArray.property("length").toInt();
QVector<QPointF> points;
for(int i = 0; i < len; i++)
{
QJSValue point = pointsArray.property(i);
points.append(QPointF(point.property("x").toNumber(), point.property("y").toNumber()));
}
QMetaObject::invokeMethod(_parent, "plot", Qt::QueuedConnection, Q_ARG(QVector<QPointF>, points));
}
QVariant graphV = graph.toVariant(QJSValue::ConvertJSObjects);
if(graphV.isValid())
QMetaObject::invokeMethod(_parent, "plot", Qt::QueuedConnection, Q_ARG(QVariant, graphV));
else
logError("Invalid value to be plotted");
}
QJSValue ScriptEngine::openFile(const QString &fileName, const QString &mode)