diff options
Diffstat (limited to 'src/gui/util/qshadergraphloader.cpp')
-rw-r--r-- | src/gui/util/qshadergraphloader.cpp | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/src/gui/util/qshadergraphloader.cpp b/src/gui/util/qshadergraphloader.cpp index be9017e5458..c7560d91057 100644 --- a/src/gui/util/qshadergraphloader.cpp +++ b/src/gui/util/qshadergraphloader.cpp @@ -151,8 +151,15 @@ void QShaderGraphLoader::load() continue; } + const auto layersArray = nodeObject.value(QStringLiteral("layers")).toArray(); + auto layers = QStringList(); + for (const auto &layerValue : layersArray) { + layers.append(layerValue.toString()); + } + auto node = m_prototypes.value(type); node.setUuid(uuid); + node.setLayers(layers); const auto parametersValue = nodeObject.value(QStringLiteral("parameters")); if (parametersValue.isObject()) { @@ -218,11 +225,18 @@ void QShaderGraphLoader::load() const auto targetPort = edgeObject.value(QStringLiteral("targetPort")).toString(); + const auto layersArray = edgeObject.value(QStringLiteral("layers")).toArray(); + auto layers = QStringList(); + for (const auto &layerValue : layersArray) { + layers.append(layerValue.toString()); + } + auto edge = QShaderGraph::Edge(); edge.sourceNodeUuid = sourceUuid; edge.sourcePortName = sourcePort; edge.targetNodeUuid = targetUuid; edge.targetPortName = targetPort; + edge.layers = layers; m_graph.addEdge(edge); } |