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

Public Functions

QScxmlEcmaScriptDataModel(QObject *parent = nullptr)

Reimplemented Public Functions

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

Additional Inherited Members

Detailed Description

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

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.

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

Reimplemented from QScxmlDataModel::evaluateAssignment().

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

Reimplemented from QScxmlDataModel::evaluateForeach().

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

Reimplemented from QScxmlDataModel::evaluateInitialization().

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

Reimplemented from QScxmlDataModel::evaluateToBool().

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

Reimplemented from QScxmlDataModel::evaluateToString().

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

Reimplemented from QScxmlDataModel::evaluateToVariant().

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

Reimplemented from QScxmlDataModel::evaluateToVoid().

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

Reimplemented from QScxmlDataModel::hasScxmlProperty().

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

Reimplemented from QScxmlDataModel::scxmlProperty().

See also setScxmlProperty().

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

Reimplemented from QScxmlDataModel::setScxmlEvent().

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

Reimplemented from QScxmlDataModel::setScxmlProperty().

See also scxmlProperty().

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

Reimplemented from QScxmlDataModel::setup().

© 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.