diff options
author | Ulf Hermann <ulf.hermann@theqtcompany.com> | 2016-03-09 16:38:29 +0100 |
---|---|---|
committer | Ulf Hermann <ulf.hermann@theqtcompany.com> | 2016-03-30 11:56:40 +0000 |
commit | a14b1e4c4787fa1e4a7d470444c248fd08817105 (patch) | |
tree | 53cd8d65c7aa8a983e1381a072a511c81ee028c5 /examples/scxml/trafficlight-qml-static/trafficlight-qml-static.cpp | |
parent | 703c6a6bee98c5d316de408867982b1684ad550b (diff) |
Change examples to follow best practices
Adding QObjects as context properties to QML engines is not the best
way to interoperate between QML and C++. This change exposes all state
machines as proper QML components and instantiates them from QML. Also,
it drops all the now unnecessary init() calls.
Change-Id: Id44b4038542dd9469e02831c1bb54f096af1b6ff
Reviewed-by: Erik Verbruggen <erik.verbruggen@theqtcompany.com>
Diffstat (limited to 'examples/scxml/trafficlight-qml-static/trafficlight-qml-static.cpp')
-rw-r--r-- | examples/scxml/trafficlight-qml-static/trafficlight-qml-static.cpp | 5 |
1 files changed, 1 insertions, 4 deletions
diff --git a/examples/scxml/trafficlight-qml-static/trafficlight-qml-static.cpp b/examples/scxml/trafficlight-qml-static/trafficlight-qml-static.cpp index f675a68..30b5950 100644 --- a/examples/scxml/trafficlight-qml-static/trafficlight-qml-static.cpp +++ b/examples/scxml/trafficlight-qml-static/trafficlight-qml-static.cpp @@ -58,16 +58,13 @@ int main(int argc, char *argv[]) { QGuiApplication app(argc, argv); - TrafficLightStateMachine stateMachine; + qmlRegisterType<TrafficLightStateMachine>("TrafficLightStateMachine", 1, 0, "TrafficLightStateMachine"); QQmlApplicationEngine engine; - engine.rootContext()->setContextProperty(QStringLiteral("trafficLightStateMachine"), &stateMachine); engine.load(QUrl(QStringLiteral("qrc:/trafficlight-qml-static.qml"))); if (engine.rootObjects().isEmpty()) return -1; - stateMachine.start(); - return app.exec(); } |