History

entity tags

HifiExperiments committed 2 years ago

Commit 85f24f01 parent 78bc24c17 files · +271 −0Browse files

Showing the changes to libraries/script-engine/src/ScriptValueUtils.cpp (1 of 17 files). Show all

Unified · Split

libraries/script-engine/src/ScriptValueUtils.cpp+30−0
@@ -862,6 +862,14 @@ bool quuidFromScriptValue(const ScriptValue& object, QUuid& uuid) { · 861 unmodified lines
862 return true;862 return true;
863}863}
864 864
865ScriptValue qStringToScriptValue(ScriptEngine* engine, const QString& string) {
866 if (string.isNull()) {
867 return engine->nullValue();
868 }
869 ScriptValue obj(engine->newValue(string));
870 return obj;
871}
872
865/*@jsdoc873/*@jsdoc
866 * A 2D size value.874 * A 2D size value.
867 * @typedef {object} Size875 * @typedef {object} Size
@@ -1029,3 +1037,25 @@ QVector<EntityItemID> qVectorEntityItemIDFromScriptValue(const ScriptValue& arra · 161 unmodified lines
1029 }1037 }
1030 return newVector;1038 return newVector;
1031}1039}
1040
1041ScriptValue qVectorQStringToScriptValue(ScriptEngine* engine, const QVector<QString>& vector) {
1042 ScriptValue array = engine->newArray();
1043 for (int i = 0; i < vector.size(); i++) {
1044 array.setProperty(i, qStringToScriptValue(engine, vector.at(i)));
1045 }
1046 return array;
1047}
1048
1049QVector<QString> qVectorQStringFromScriptValue(const ScriptValue& array) {
1050 if (!array.isArray()) {
1051 return QVector<QString>();
1052 }
1053 QVector<QString> newVector;
1054 int length = array.property("length").toInteger();
1055 newVector.reserve(length);
1056 for (int i = 0; i < length; i++) {
1057 QString string = array.property(i).toString();
1058 newVector << string;
1059 }
1060 return newVector;
1061}