From 5f395654f09eee78afc002328ebe438a3dfe8082 Mon Sep 17 00:00:00 2001 From: Zach Pomerantz Date: Mon, 8 Feb 2016 12:29:56 -0800 Subject: [PATCH] Integrate JobConfig with JSON/qml --- libraries/render/src/render/Task.h | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/libraries/render/src/render/Task.h b/libraries/render/src/render/Task.h index d090938b64..75bc9d8643 100644 --- a/libraries/render/src/render/Task.h +++ b/libraries/render/src/render/Task.h @@ -74,7 +74,7 @@ public: Q_INVOKABLE QString toJSON() { return QJsonDocument(toJsonValue(*this).toObject()).toJson(QJsonDocument::Compact); } public slots: - void load(const QJsonValue& json) { qObjectFromJsonValue(json, *this); } + Q_INVOKABLE void fromJSON(const QJsonValue& json) { qObjectFromJsonValue(json, *this); } }; class TaskConfig : public JobConfig { @@ -85,6 +85,9 @@ public: void init(Task* task) { _task = task; } + // getter for qml integration, prefer the templated getter + Q_INVOKABLE QObject* getConfig(const QString& name) { return QObject::findChild(name); } + // getter for cpp (strictly typed), prefer this getter template typename T::Config* getConfig(std::string job = "") const { QString name = job.empty() ? QString() : QString(job.c_str()); // an empty string is not a null string return findChild(name);