QScxmlEcmaScriptDataModel Class

The QScxmlEcmaScriptDataModel class is the ECMAScript data model for a Qt SCXML state machine. More...

Header: #include <QScxmlEcmaScriptDataModel>
qmake: QT += scxml
Since: Qt 5.7
Inherits: QScxmlDataModel

This class was introduced in Qt 5.7.

Public Functions

QScxmlEcmaScriptDataModel(QObject *parent = nullptr)

Reimplemented Public Functions

virtual void evaluateAssignment(QScxmlExecutableContent::EvaluatorId id, bool *ok) override
virtual void evaluateForeach(QScxmlExecutableContent::EvaluatorId id, bool *ok, QScxmlDataModel::ForeachLoopBody *body) override
virtual void evaluateInitialization(QScxmlExecutableContent::EvaluatorId id, bool *ok) override
virtual bool evaluateToBool(QScxmlExecutableContent::EvaluatorId id, bool *ok) override
virtual QString evaluateToString(QScxmlExecutableContent::EvaluatorId id, bool *ok) override
virtual QVariant evaluateToVariant(QScxmlExecutableContent::EvaluatorId id, bool *ok) override
virtual void evaluateToVoid(QScxmlExecutableContent::EvaluatorId id, bool *ok) override
virtual bool hasScxmlProperty(const QString &name) const override
virtual QVariant scxmlProperty(const QString &name) const override
virtual void setScxmlEvent(const QScxmlEvent &event) override
virtual bool setScxmlProperty(const QString &name, const QVariant &value, const QString &context) override
virtual bool setup(const QVariantMap &initialDataValues) override

Detailed Description

This class implements the ECMAScript data model as described in SCXML Specification - B.2 The ECMAScript Data Model. It can be subclassed to perform custom initialization.

See also QScxmlStateMachine and QScxmlDataModel.

Member Function Documentation

QScxmlEcmaScriptDataModel::QScxmlEcmaScriptDataModel(QObject *parent = nullptr)

Creates a new ECMAScript data model, with the parent object parent.

[override virtual] void QScxmlEcmaScriptDataModel::evaluateAssignment(QScxmlExecutableContent::EvaluatorId id, bool *ok)

Reimplements: QScxmlDataModel::evaluateAssignment(QScxmlExecutableContent::EvaluatorId id, bool *ok).

[override virtual] void QScxmlEcmaScriptDataModel::evaluateForeach(QScxmlExecutableContent::EvaluatorId id, bool *ok, QScxmlDataModel::ForeachLoopBody *body)

Reimplements: QScxmlDataModel::evaluateForeach(QScxmlExecutableContent::EvaluatorId id, bool *ok, QScxmlDataModel::ForeachLoopBody *body).

[override virtual] void QScxmlEcmaScriptDataModel::evaluateInitialization(QScxmlExecutableContent::EvaluatorId id, bool *ok)

Reimplements: QScxmlDataModel::evaluateInitialization(QScxmlExecutableContent::EvaluatorId id, bool *ok).

[override virtual] bool QScxmlEcmaScriptDataModel::evaluateToBool(QScxmlExecutableContent::EvaluatorId id, bool *ok)

Reimplements: QScxmlDataModel::evaluateToBool(QScxmlExecutableContent::EvaluatorId id, bool *ok).

[override virtual] QString QScxmlEcmaScriptDataModel::evaluateToString(QScxmlExecutableContent::EvaluatorId id, bool *ok)

Reimplements: QScxmlDataModel::evaluateToString(QScxmlExecutableContent::EvaluatorId id, bool *ok).

[override virtual] QVariant QScxmlEcmaScriptDataModel::evaluateToVariant(QScxmlExecutableContent::EvaluatorId id, bool *ok)

Reimplements: QScxmlDataModel::evaluateToVariant(QScxmlExecutableContent::EvaluatorId id, bool *ok).

[override virtual] void QScxmlEcmaScriptDataModel::evaluateToVoid(QScxmlExecutableContent::EvaluatorId id, bool *ok)

Reimplements: QScxmlDataModel::evaluateToVoid(QScxmlExecutableContent::EvaluatorId id, bool *ok).

[override virtual] bool QScxmlEcmaScriptDataModel::hasScxmlProperty(const QString &name) const

Reimplements: QScxmlDataModel::hasScxmlProperty(const QString &name) const.

[override virtual] QVariant QScxmlEcmaScriptDataModel::scxmlProperty(const QString &name) const

Reimplements: QScxmlDataModel::scxmlProperty(const QString &name) const.

See also setScxmlProperty().

[override virtual] void QScxmlEcmaScriptDataModel::setScxmlEvent(const QScxmlEvent &event)

Reimplements: QScxmlDataModel::setScxmlEvent(const QScxmlEvent &event).

[override virtual] bool QScxmlEcmaScriptDataModel::setScxmlProperty(const QString &name, const QVariant &value, const QString &context)

Reimplements: QScxmlDataModel::setScxmlProperty(const QString &name, const QVariant &value, const QString &context).

See also scxmlProperty().

[override virtual] bool QScxmlEcmaScriptDataModel::setup(const QVariantMap &initialDataValues)

Reimplements: QScxmlDataModel::setup(const QVariantMap &initialDataValues).

Note: This function can be invoked via the meta-object system and from QML. See Q_INVOKABLE.

© 2020 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.