diff --git a/src/cpp/lib/QtCore/QObject/qobject_wrap.cpp b/src/cpp/lib/QtCore/QObject/qobject_wrap.cpp index 4c21135e0..1a467a95d 100644 --- a/src/cpp/lib/QtCore/QObject/qobject_wrap.cpp +++ b/src/cpp/lib/QtCore/QObject/qobject_wrap.cpp @@ -12,7 +12,13 @@ Napi::Object QObjectWrap::init(Napi::Env env, Napi::Object exports) { env, CLASSNAME, {QOBJECT_WRAPPED_METHODS_EXPORT_DEFINE(QObjectWrap)}); constructor = Napi::Persistent(func); exports.Set(CLASSNAME, func); - WrapperCache::instance.registerWrapper(QString("NObject"), QObjectWrap::wrapFunc); + + WrapperCache::instance.registerWrapper(QString("NObject"), + [](Napi::Env env, QObject *qobject) -> Napi::Object { + QObject *exactQObject = dynamic_cast(qobject); + Napi::Object wrapper = QObjectWrap::constructor.New({Napi::External::New(env, exactQObject)}); + return wrapper; + }); return exports; } @@ -39,11 +45,4 @@ QObjectWrap::QObjectWrap(const Napi::CallbackInfo& info) .ThrowAsJavaScriptException(); } this->rawData = extrautils::configureQObject(this->getInternalInstance()); - // WrapperCache::instance.store(env, this->getInternalInstance(), this); -} - -Napi::Object QObjectWrap::wrapFunc(Napi::Env env, QObject *qobject) { - // Qtype *exactQObject = dynamic_cast(qobject) - Napi::Object wrapper = QObjectWrap::constructor.New({Napi::External::New(env, qobject)}); - return wrapper; }