snake build on v8 success

This commit is contained in:
王劲鹏
2021-04-02 20:47:15 +08:00
committed by osborn
parent 7458d0f4c0
commit 7e59150831
21 changed files with 119 additions and 105 deletions

View File

@@ -1,23 +1,24 @@
#include <QDebug>
#include <QJsonObject>
#include "../shader/DoricRootNode.h"
#include "DoricShaderPlugin.h"
void DoricShaderPlugin::render(QJSValue jsValue, QString callbackId) {
void DoricShaderPlugin::render(QJsonObject *jsValue, QString callbackId) {
getContext()->getDriver()->asyncCall(
[this, jsValue] {
try {
QString viewId = jsValue.property("id").toString();
QString viewId = jsValue->value("id").toString();
DoricRootNode *rootNode = getContext()->getRootNode();
if (rootNode->getId().isEmpty() &&
jsValue.property("type").toString() == "Root") {
jsValue->value("type").toString() == "Root") {
rootNode->setId(viewId);
rootNode->blend(jsValue.property("props"));
rootNode->blend(jsValue->value("props"));
} else {
DoricViewNode *viewNode = getContext()->targetViewNode(viewId);
if (viewNode != nullptr) {
viewNode->blend(jsValue.property("props"));
viewNode->blend(jsValue->value("props"));
}
}
} catch (...) {

View File

@@ -11,7 +11,7 @@ class DoricShaderPlugin : public DoricNativePlugin {
public:
using DoricNativePlugin::DoricNativePlugin;
Q_INVOKABLE void render(QJSValue jsValue, QString callbackId);
Q_INVOKABLE void render(QJsonObject *jsValue, QString callbackId);
};
#endif // SHADERPLUGIN_H