diff --git a/libraries/script-engine/src/PointerEvent.h b/libraries/script-engine/src/PointerEvent.h index 197b144bdb..3fd83ce510 100644 --- a/libraries/script-engine/src/PointerEvent.h +++ b/libraries/script-engine/src/PointerEvent.h @@ -9,6 +9,9 @@ // See the accompanying file LICENSE or http://www.apache.org/licenses/LICENSE-2.0.html // +/// @addtogroup ScriptEngine +/// @{ + #ifndef hifi_PointerEvent_h #define hifi_PointerEvent_h @@ -22,6 +25,7 @@ class ScriptEngine; class ScriptValue; using ScriptValuePointer = QSharedPointer; +/// Represents a 2D or 3D pointer to the scripting engine. Exposed as PointerEvent class PointerEvent { public: enum Button { @@ -95,3 +99,5 @@ QDebug& operator<<(QDebug& dbg, const PointerEvent& p); Q_DECLARE_METATYPE(PointerEvent) #endif // hifi_PointerEvent_h + +/// @} diff --git a/libraries/script-engine/src/ScriptContext.h b/libraries/script-engine/src/ScriptContext.h index dbdc6a5e37..bb1f70da63 100644 --- a/libraries/script-engine/src/ScriptContext.h +++ b/libraries/script-engine/src/ScriptContext.h @@ -9,6 +9,9 @@ // See the accompanying file LICENSE or http://www.apache.org/licenses/LICENSE-2.0.html // +/// @addtogroup ScriptEngine +/// @{ + #ifndef hifi_ScriptContext_h #define hifi_ScriptContext_h @@ -25,6 +28,7 @@ using ScriptFunctionContextPointer = QSharedPointer; using ScriptEnginePointer = QSharedPointer; using ScriptValuePointer = QSharedPointer; +/// [ScriptInterface] Provides an engine-independent interface for QScriptContextInfo class ScriptFunctionContext { public: enum FunctionType { @@ -41,6 +45,7 @@ public: virtual int lineNumber() const = 0; }; +/// [ScriptInterface] Provides an engine-independent interface for QScriptContext class ScriptContext { public: virtual int argumentCount() const = 0; @@ -55,4 +60,6 @@ public: virtual ScriptValuePointer throwValue(const ScriptValuePointer& value) = 0; }; -#endif // hifi_ScriptContext_h \ No newline at end of file +#endif // hifi_ScriptContext_h + +/// @} diff --git a/libraries/script-engine/src/ScriptEngine.h b/libraries/script-engine/src/ScriptEngine.h index 95ac138b24..e9efded5cd 100644 --- a/libraries/script-engine/src/ScriptEngine.h +++ b/libraries/script-engine/src/ScriptEngine.h @@ -34,8 +34,9 @@ using ScriptEnginePointer = QSharedPointer; using ScriptProgramPointer = QSharedPointer; using ScriptValuePointer = QSharedPointer; -Q_DECLARE_METATYPE(ScriptEnginePointer) +Q_DECLARE_METATYPE(ScriptEnginePointer); +/// [ScriptInterface] Provides an engine-independent interface for QScriptEngine class ScriptEngine { public: typedef ScriptValuePointer (*FunctionSignature)(ScriptContext*, ScriptEngine*); @@ -128,7 +129,7 @@ public: // not for public use, but I don't like how Qt strings this along with p virtual bool convert(const ScriptValuePointer& value, int type, void* ptr) = 0; virtual void registerCustomType(int type, MarshalFunction mf, DemarshalFunction df, const ScriptValuePointer& prototype) = 0; }; -Q_DECLARE_OPERATORS_FOR_FLAGS(ScriptEngine::QObjectWrapOptions) +Q_DECLARE_OPERATORS_FOR_FLAGS(ScriptEngine::QObjectWrapOptions); ScriptEnginePointer newScriptEngine(ScriptManager* manager = nullptr); @@ -157,3 +158,5 @@ QThread* ScriptEngine::thread() const { */ #endif // hifi_ScriptEngine_h + +/// @} diff --git a/libraries/script-engine/src/ScriptEngineCast.h b/libraries/script-engine/src/ScriptEngineCast.h index 9a5c8a47c6..22221e74a4 100644 --- a/libraries/script-engine/src/ScriptEngineCast.h +++ b/libraries/script-engine/src/ScriptEngineCast.h @@ -9,6 +9,9 @@ // See the accompanying file LICENSE or http://www.apache.org/licenses/LICENSE-2.0.html // +/// @addtogroup ScriptEngine +/// @{ + #ifndef hifi_ScriptEngineCast_h #define hifi_ScriptEngineCast_h @@ -99,3 +102,5 @@ int scriptRegisterSequenceMetaType(ScriptEngine* engine, } #endif // hifi_ScriptEngineCast_h + +/// @} diff --git a/libraries/script-engine/src/ScriptProgram.h b/libraries/script-engine/src/ScriptProgram.h index 1c49f042d6..8301532c43 100644 --- a/libraries/script-engine/src/ScriptProgram.h +++ b/libraries/script-engine/src/ScriptProgram.h @@ -9,6 +9,9 @@ // See the accompanying file LICENSE or http://www.apache.org/licenses/LICENSE-2.0.html // +/// @addtogroup ScriptEngine +/// @{ + #ifndef hifi_ScriptProgram_h #define hifi_ScriptProgram_h @@ -19,6 +22,7 @@ class ScriptSyntaxCheckResult; using ScriptProgramPointer = QSharedPointer; using ScriptSyntaxCheckResultPointer = QSharedPointer; +/// [ScriptInterface] Provides an engine-independent interface for QScriptProgram class ScriptProgram { public: virtual ScriptSyntaxCheckResultPointer checkSyntax() const = 0; @@ -26,6 +30,7 @@ public: virtual QString sourceCode() const = 0; }; +/// [ScriptInterface] Provides an engine-independent interface for QScriptSyntaxCheckResult class ScriptSyntaxCheckResult { public: enum State @@ -42,4 +47,6 @@ public: virtual State state() const = 0; }; -#endif // hifi_ScriptProgram_h \ No newline at end of file +#endif // hifi_ScriptProgram_h + +/// @} diff --git a/libraries/script-engine/src/ScriptValue.h b/libraries/script-engine/src/ScriptValue.h index 67a8f8eb60..7b77404546 100644 --- a/libraries/script-engine/src/ScriptValue.h +++ b/libraries/script-engine/src/ScriptValue.h @@ -9,6 +9,9 @@ // See the accompanying file LICENSE or http://www.apache.org/licenses/LICENSE-2.0.html // +/// @addtogroup ScriptEngine +/// @{ + #ifndef hifi_ScriptValue_h #define hifi_ScriptValue_h @@ -26,6 +29,7 @@ using ScriptValuePointer = QSharedPointer; using ScriptValueList = QList; using ScriptValueIteratorPointer = QSharedPointer; +/// [ScriptInterface] Provides an engine-independent interface for QScriptValue class ScriptValue { public: enum ResolveFlag @@ -107,7 +111,7 @@ protected: virtual bool isValidInternal() const = 0; virtual bool isVariantInternal() const = 0; }; -Q_DECLARE_OPERATORS_FOR_FLAGS(ScriptValue::PropertyFlags) +Q_DECLARE_OPERATORS_FOR_FLAGS(ScriptValue::PropertyFlags); bool ScriptValue::equals(const ScriptValuePointer& other) const { if (this == NULL || !other) { @@ -205,4 +209,6 @@ void ScriptValue::setProperty(quint32 arrayIndex, const TYP& value, const Proper template T scriptvalue_cast(const ScriptValuePointer& value); -#endif // hifi_ScriptValue_h \ No newline at end of file +#endif // hifi_ScriptValue_h + +/// @} diff --git a/libraries/script-engine/src/ScriptValueIterator.h b/libraries/script-engine/src/ScriptValueIterator.h index cea07de415..2222a457a8 100644 --- a/libraries/script-engine/src/ScriptValueIterator.h +++ b/libraries/script-engine/src/ScriptValueIterator.h @@ -9,6 +9,9 @@ // See the accompanying file LICENSE or http://www.apache.org/licenses/LICENSE-2.0.html // +/// @addtogroup ScriptEngine +/// @{ + #ifndef hifi_ScriptValueIterator_h #define hifi_ScriptValueIterator_h @@ -20,6 +23,7 @@ class ScriptValueIterator; using ScriptValueIteratorPointer = QSharedPointer; +/// [ScriptInterface] Provides an engine-independent interface for QScriptValueIterator class ScriptValueIterator { public: virtual ScriptValue::PropertyFlags flags() const = 0; @@ -29,4 +33,6 @@ public: virtual ScriptValuePointer value() const = 0; }; -#endif // hifi_ScriptValueIterator_h \ No newline at end of file +#endif // hifi_ScriptValueIterator_h + +/// @} diff --git a/libraries/script-engine/src/ScriptValueUtils.h b/libraries/script-engine/src/ScriptValueUtils.h index f387f6c6d1..8d35439992 100644 --- a/libraries/script-engine/src/ScriptValueUtils.h +++ b/libraries/script-engine/src/ScriptValueUtils.h @@ -11,6 +11,9 @@ // See the accompanying file LICENSE or http://www.apache.org/licenses/LICENSE-2.0.html // +/// @addtogroup ScriptEngine +/// @{ + #ifndef hifi_ScriptValueUtils_h #define hifi_ScriptValueUtils_h @@ -260,3 +263,5 @@ void promiseFromScriptValue(const ScriptValuePointer& object, std::shared_ptr& promise); #endif // #define hifi_ScriptValueUtils_h + +/// @} diff --git a/libraries/script-engine/src/Scriptable.h b/libraries/script-engine/src/Scriptable.h index b6d08a2bfe..d9e8403e27 100644 --- a/libraries/script-engine/src/Scriptable.h +++ b/libraries/script-engine/src/Scriptable.h @@ -9,6 +9,9 @@ // See the accompanying file LICENSE or http://www.apache.org/licenses/LICENSE-2.0.html // +/// @addtogroup ScriptEngine +/// @{ + #ifndef hifi_Scriptable_h #define hifi_Scriptable_h @@ -21,6 +24,7 @@ class ScriptValue; using ScriptEnginePointer = QSharedPointer; using ScriptValuePointer = QSharedPointer; +/// [ScriptInterface] Provides an engine-independent interface for QScriptable class Scriptable { public: static inline ScriptEnginePointer engine(); @@ -56,4 +60,6 @@ ScriptValuePointer Scriptable::argument(int index) { return scriptContext->argument(index); } -#endif // hifi_Scriptable_h \ No newline at end of file +#endif // hifi_Scriptable_h + +/// @} diff --git a/libraries/script-engine/src/VariantMapToScriptValue.h b/libraries/script-engine/src/VariantMapToScriptValue.h index 2700decedd..3093938d37 100644 --- a/libraries/script-engine/src/VariantMapToScriptValue.h +++ b/libraries/script-engine/src/VariantMapToScriptValue.h @@ -9,6 +9,9 @@ // See the accompanying file LICENSE or http://www.apache.org/licenses/LICENSE-2.0.html // +/// @addtogroup ScriptEngine +/// @{ + #include #include "ScriptValue.h" #include "ScriptEngine.h" @@ -16,3 +19,5 @@ ScriptValuePointer variantToScriptValue(QVariant& qValue, ScriptEngine& scriptEngine); ScriptValuePointer variantMapToScriptValue(QVariantMap& variantMap, ScriptEngine& scriptEngine); ScriptValuePointer variantListToScriptValue(QVariantList& variantList, ScriptEngine& scriptEngine); + +/// @} diff --git a/libraries/script-engine/src/qtscript/ArrayBufferClass.h b/libraries/script-engine/src/qtscript/ArrayBufferClass.h index 2d7cf06be5..c9efce1ad4 100644 --- a/libraries/script-engine/src/qtscript/ArrayBufferClass.h +++ b/libraries/script-engine/src/qtscript/ArrayBufferClass.h @@ -26,7 +26,7 @@ class ScriptEngineQtScript; -/// Implements the ArrayBuffer scripting class +/// [QtScript] Implements the ArrayBuffer scripting class class ArrayBufferClass : public QObject, public QScriptClass { Q_OBJECT public: diff --git a/libraries/script-engine/src/qtscript/ArrayBufferPrototype.h b/libraries/script-engine/src/qtscript/ArrayBufferPrototype.h index 324f317660..1fc5948f6b 100644 --- a/libraries/script-engine/src/qtscript/ArrayBufferPrototype.h +++ b/libraries/script-engine/src/qtscript/ArrayBufferPrototype.h @@ -18,7 +18,7 @@ #include #include -/// The javascript functions associated with an ArrayBuffer instance prototype +/// [QtScript] The javascript functions associated with an ArrayBuffer instance prototype class ArrayBufferPrototype : public QObject, public QScriptable { Q_OBJECT public: diff --git a/libraries/script-engine/src/qtscript/ArrayBufferViewClass.h b/libraries/script-engine/src/qtscript/ArrayBufferViewClass.h index ffeb1c4d60..e5c40d8e44 100644 --- a/libraries/script-engine/src/qtscript/ArrayBufferViewClass.h +++ b/libraries/script-engine/src/qtscript/ArrayBufferViewClass.h @@ -29,7 +29,7 @@ static const QString BUFFER_PROPERTY_NAME = "buffer"; static const QString BYTE_OFFSET_PROPERTY_NAME = "byteOffset"; static const QString BYTE_LENGTH_PROPERTY_NAME = "byteLength"; -/// The base class containing common code for ArrayBuffer views +/// [QtScript] The base class containing common code for ArrayBuffer views class ArrayBufferViewClass : public QObject, public QScriptClass { Q_OBJECT public: diff --git a/libraries/script-engine/src/qtscript/DataViewClass.h b/libraries/script-engine/src/qtscript/DataViewClass.h index 5ad1479320..8b587bbd06 100644 --- a/libraries/script-engine/src/qtscript/DataViewClass.h +++ b/libraries/script-engine/src/qtscript/DataViewClass.h @@ -17,7 +17,7 @@ #include "ArrayBufferViewClass.h" -/// Implements the DataView scripting class +/// [QtScript] Implements the DataView scripting class class DataViewClass : public ArrayBufferViewClass { Q_OBJECT public: diff --git a/libraries/script-engine/src/qtscript/DataViewPrototype.h b/libraries/script-engine/src/qtscript/DataViewPrototype.h index b4d9462e8f..3f395516c1 100644 --- a/libraries/script-engine/src/qtscript/DataViewPrototype.h +++ b/libraries/script-engine/src/qtscript/DataViewPrototype.h @@ -18,7 +18,7 @@ #include #include -/// The javascript functions associated with a DataView instance prototype +/// [QtScript] The javascript functions associated with a DataView instance prototype class DataViewPrototype : public QObject, public QScriptable { Q_OBJECT public: diff --git a/libraries/script-engine/src/qtscript/ScriptContextQtWrapper.h b/libraries/script-engine/src/qtscript/ScriptContextQtWrapper.h index 993fb69a81..229a5b7102 100644 --- a/libraries/script-engine/src/qtscript/ScriptContextQtWrapper.h +++ b/libraries/script-engine/src/qtscript/ScriptContextQtWrapper.h @@ -9,6 +9,9 @@ // See the accompanying file LICENSE or http://www.apache.org/licenses/LICENSE-2.0.html // +/// @addtogroup ScriptEngine +/// @{ + #ifndef hifi_ScriptContextQtWrapper_h #define hifi_ScriptContextQtWrapper_h @@ -23,6 +26,7 @@ class ScriptEngineQtScript; class ScriptValue; using ScriptValuePointer = QSharedPointer; +/// [QtScript] Implements ScriptContext for QtScript and translates calls for QScriptContextInfo class ScriptContextQtWrapper : public ScriptContext { public: // construction inline ScriptContextQtWrapper(ScriptEngineQtScript* engine, QScriptContext* context) : _engine(engine), _context(context) {} @@ -60,4 +64,6 @@ private: // storage QScriptContextInfo _value; }; -#endif // hifi_ScriptContextQtWrapper_h \ No newline at end of file +#endif // hifi_ScriptContextQtWrapper_h + +/// @} diff --git a/libraries/script-engine/src/qtscript/ScriptEngineQtScript.h b/libraries/script-engine/src/qtscript/ScriptEngineQtScript.h index 5243e78c6f..367525e7fb 100644 --- a/libraries/script-engine/src/qtscript/ScriptEngineQtScript.h +++ b/libraries/script-engine/src/qtscript/ScriptEngineQtScript.h @@ -10,6 +10,9 @@ // See the accompanying file LICENSE or http://www.apache.org/licenses/LICENSE-2.0.html // +/// @addtogroup ScriptEngine +/// @{ + #ifndef hifi_ScriptEngineQtScript_h #define hifi_ScriptEngineQtScript_h @@ -35,40 +38,9 @@ class ScriptManager; using ScriptEngineQtScriptPointer = QSharedPointer; using ScriptContextQtPointer = QSharedPointer; -Q_DECLARE_METATYPE(ScriptEngineQtScriptPointer) +Q_DECLARE_METATYPE(ScriptEngineQtScriptPointer); -/**jsdoc - * The Script API provides facilities for working with scripts. - * - * @namespace Script - * - * @hifi-interface - * @hifi-client-entity - * @hifi-avatar - * @hifi-server-entity - * @hifi-assignment-client - * - * @property {string} context - The context that the script is running in: - *
    - *
  • "client": An Interface or avatar script.
  • - *
  • "entity_client": A client entity script.
  • - *
  • "entity_server": A server entity script.
  • - *
  • "agent": An assignment client script.
  • - *
- * Read-only. - * @property {string} type - The type of script that is running: - *
    - *
  • "client": An Interface script.
  • - *
  • "entity_client": A client entity script.
  • - *
  • "avatar": An avatar script.
  • - *
  • "entity_server": A server entity script.
  • - *
  • "agent": An assignment client script.
  • - *
- * Read-only. - * @property {string} filename - The filename of the script file. - * Read-only. - * @property {Script.ResourceBuckets} ExternalPaths - External resource buckets. - */ +/// [QtScript] Implements ScriptEngine for QtScript and translates calls for QScriptEngine class ScriptEngineQtScript : public QScriptEngine, public ScriptEngine, public QEnableSharedFromThis { Q_OBJECT @@ -467,3 +439,5 @@ private: }; #endif // hifi_ScriptEngineQtScript_h + +/// @} diff --git a/libraries/script-engine/src/qtscript/ScriptProgramQtWrapper.h b/libraries/script-engine/src/qtscript/ScriptProgramQtWrapper.h index b09c58b0d9..dca9c9d83a 100644 --- a/libraries/script-engine/src/qtscript/ScriptProgramQtWrapper.h +++ b/libraries/script-engine/src/qtscript/ScriptProgramQtWrapper.h @@ -9,6 +9,9 @@ // See the accompanying file LICENSE or http://www.apache.org/licenses/LICENSE-2.0.html // +/// @addtogroup ScriptEngine +/// @{ + #ifndef hifi_ScriptProgramQtWrapper_h #define hifi_ScriptProgramQtWrapper_h @@ -18,6 +21,7 @@ #include "../ScriptProgram.h" #include "ScriptEngineQtScript.h" +/// [QtScript] Implements ScriptProgram for QtScript and translates calls for QScriptProgram class ScriptProgramQtWrapper : public ScriptProgram { public: // construction inline ScriptProgramQtWrapper(ScriptEngineQtScript* engine, const QScriptProgram& value) : @@ -52,4 +56,6 @@ private: // storage QScriptSyntaxCheckResult _value; }; -#endif // hifi_ScriptValueQtWrapper_h \ No newline at end of file +#endif // hifi_ScriptValueQtWrapper_h + +/// @} diff --git a/libraries/script-engine/src/qtscript/ScriptValueIteratorQtWrapper.h b/libraries/script-engine/src/qtscript/ScriptValueIteratorQtWrapper.h index 53b377dd76..ee5d20ef1e 100644 --- a/libraries/script-engine/src/qtscript/ScriptValueIteratorQtWrapper.h +++ b/libraries/script-engine/src/qtscript/ScriptValueIteratorQtWrapper.h @@ -9,16 +9,20 @@ // See the accompanying file LICENSE or http://www.apache.org/licenses/LICENSE-2.0.html // +/// @addtogroup ScriptEngine +/// @{ + #ifndef hifi_ScriptValueIteratorQtWrapper_h #define hifi_ScriptValueIteratorQtWrapper_h -//#include +#include #include #include "../ScriptValueIterator.h" #include "ScriptEngineQtScript.h" #include "ScriptValueQtWrapper.h" +/// [QtScript] Implements ScriptValueIterator for QtScript and translates calls for QScriptValueIterator class ScriptValueIteratorQtWrapper : public ScriptValueIterator { public: // construction inline ScriptValueIteratorQtWrapper(ScriptEngineQtScript* engine, const ScriptValuePointer& object) : @@ -38,4 +42,6 @@ private: // storage QScriptValueIterator _value; }; -#endif // hifi_ScriptValueIteratorQtWrapper_h \ No newline at end of file +#endif // hifi_ScriptValueIteratorQtWrapper_h + +/// @} diff --git a/libraries/script-engine/src/qtscript/ScriptValueQtWrapper.h b/libraries/script-engine/src/qtscript/ScriptValueQtWrapper.h index 2a4c8c842d..5ac1dea943 100644 --- a/libraries/script-engine/src/qtscript/ScriptValueQtWrapper.h +++ b/libraries/script-engine/src/qtscript/ScriptValueQtWrapper.h @@ -9,6 +9,9 @@ // See the accompanying file LICENSE or http://www.apache.org/licenses/LICENSE-2.0.html // +/// @addtogroup ScriptEngine +/// @{ + #ifndef hifi_ScriptValueQtWrapper_h #define hifi_ScriptValueQtWrapper_h @@ -20,6 +23,7 @@ #include "../ScriptValue.h" #include "ScriptEngineQtScript.h" +/// [QtScript] Implements ScriptValue for QtScript and translates calls for QScriptValue class ScriptValueQtWrapper : public ScriptValue { public: // construction inline ScriptValueQtWrapper(ScriptEngineQtScript* engine, const QScriptValue& value) : @@ -83,4 +87,6 @@ private: // storage QScriptValue _value; }; -#endif // hifi_ScriptValueQtWrapper_h \ No newline at end of file +#endif // hifi_ScriptValueQtWrapper_h + +/// @} diff --git a/libraries/script-engine/src/qtscript/TypedArrayPrototype.h b/libraries/script-engine/src/qtscript/TypedArrayPrototype.h index e2fac3c8d9..ff0ea2fec6 100644 --- a/libraries/script-engine/src/qtscript/TypedArrayPrototype.h +++ b/libraries/script-engine/src/qtscript/TypedArrayPrototype.h @@ -19,7 +19,7 @@ #include #include -/// The javascript functions associated with a TypedArray instance prototype +/// [QtScript] The javascript functions associated with a TypedArray instance prototype class TypedArrayPrototype : public QObject, public QScriptable { Q_OBJECT public: diff --git a/libraries/script-engine/src/qtscript/TypedArrays.h b/libraries/script-engine/src/qtscript/TypedArrays.h index 452cdbd4ee..0595ba3c63 100644 --- a/libraries/script-engine/src/qtscript/TypedArrays.h +++ b/libraries/script-engine/src/qtscript/TypedArrays.h @@ -30,7 +30,7 @@ static const QString UINT_32_ARRAY_CLASS_NAME = "Uint32Array"; static const QString FLOAT_32_ARRAY_CLASS_NAME = "Float32Array"; static const QString FLOAT_64_ARRAY_CLASS_NAME = "Float64Array"; -/// Implements the TypedArray scripting class +/// [QtScript] Implements the TypedArray scripting class class TypedArray : public ArrayBufferViewClass { Q_OBJECT public: