diff --git a/libnymea-core/integrations/scriptintegrationplugin.cpp b/libnymea-core/integrations/scriptintegrationplugin.cpp index ba9b96be..6f6c18d9 100644 --- a/libnymea-core/integrations/scriptintegrationplugin.cpp +++ b/libnymea-core/integrations/scriptintegrationplugin.cpp @@ -105,8 +105,9 @@ QJsonObject ScriptIntegrationPlugin::metaData() const void ScriptIntegrationPlugin::init() { - qmlRegisterType(); - qmlRegisterType(); + //Couldn't find an non-qml way to register abstract classes in the JS engine as qRegisterMetatype doesn't deal so well with abstract classes + qmlRegisterUncreatableType("nymea", 1, 0, "PluginTimerManager", "Get it from hardwareManager"); + qmlRegisterUncreatableType("nymea", 1, 0, "PluginTimer", "Get it from PluginTimerManager"); QJSValue hardwareManagerObject = m_engine->newQObject(hardwareManager()); m_engine->globalObject().setProperty("hardwareManager", hardwareManagerObject);