diff --git a/src/cpp/QtGui/QApplication/qapplication_wrap.cpp b/src/cpp/QtGui/QApplication/qapplication_wrap.cpp index 3c2fb6b4a..c4ad0d056 100644 --- a/src/cpp/QtGui/QApplication/qapplication_wrap.cpp +++ b/src/cpp/QtGui/QApplication/qapplication_wrap.cpp @@ -28,9 +28,9 @@ QApplicationWrap::QApplicationWrap(const Napi::CallbackInfo& info) Napi::Env env = info.Env(); Napi::HandleScope scope(env); if(info.Length() == 1) { - this->instance = info[0].As>().Data(); + this->instance = std::unique_ptr(info[0].As>().Data()); } else if (info.Length() == 0){ - this->instance = new QApplication(this->argc, this->argv); + this->instance = std::make_unique(this->argc, this->argv); } else { Napi::TypeError::New(env, "Wrong number of arguments").ThrowAsJavaScriptException(); } @@ -38,12 +38,12 @@ QApplicationWrap::QApplicationWrap(const Napi::CallbackInfo& info) QApplicationWrap::~QApplicationWrap() { - delete this->instance; + this->instance.reset(); } QApplication* QApplicationWrap::getInternalInstance() { - return this->instance; + return this->instance.get(); } Napi::Value QApplicationWrap::processEvents(const Napi::CallbackInfo& info) diff --git a/src/cpp/QtGui/QApplication/qapplication_wrap.h b/src/cpp/QtGui/QApplication/qapplication_wrap.h index 19e5224fe..114172fca 100644 --- a/src/cpp/QtGui/QApplication/qapplication_wrap.h +++ b/src/cpp/QtGui/QApplication/qapplication_wrap.h @@ -1,12 +1,13 @@ #pragma once #include +#include #include class QApplicationWrap : public Napi::ObjectWrap { private: - QApplication* instance; + std::unique_ptr instance; static int argc; static char** argv; diff --git a/src/cpp/QtGui/QCursor/qcursor_wrap.cpp b/src/cpp/QtGui/QCursor/qcursor_wrap.cpp index 6d2fa2720..ddbf05a1e 100644 --- a/src/cpp/QtGui/QCursor/qcursor_wrap.cpp +++ b/src/cpp/QtGui/QCursor/qcursor_wrap.cpp @@ -26,11 +26,11 @@ QCursorWrap::QCursorWrap(const Napi::CallbackInfo &info) : Napi::ObjectWrap(); - this->instance = new QCursor(static_cast(cursor.Int32Value())); + this->instance = std::make_unique(static_cast(cursor.Int32Value())); } else if (info.Length() == 0) { - this->instance = new QCursor(); + this->instance = std::make_unique(); } else { @@ -40,12 +40,12 @@ QCursorWrap::QCursorWrap(const Napi::CallbackInfo &info) : Napi::ObjectWrapinstance; + this->instance.reset(); } QCursor *QCursorWrap::getInternalInstance() { - return this->instance; + return this->instance.get(); } Napi::Value QCursorWrap::pos(const Napi::CallbackInfo& info) { diff --git a/src/cpp/QtGui/QCursor/qcursor_wrap.h b/src/cpp/QtGui/QCursor/qcursor_wrap.h index aca55ebdc..e723107fa 100644 --- a/src/cpp/QtGui/QCursor/qcursor_wrap.h +++ b/src/cpp/QtGui/QCursor/qcursor_wrap.h @@ -1,14 +1,14 @@ #pragma once #include +#include #include #include "src/cpp/core/Component/component_macro.h" class QCursorWrap : public Napi::ObjectWrap { private: - QCursor *instance; - + std::unique_ptr instance; public: static Napi::FunctionReference constructor; static Napi::Object init(Napi::Env env, Napi::Object exports); diff --git a/src/cpp/QtGui/QEvent/QKeyEvent/qkeyevent_wrap.cpp b/src/cpp/QtGui/QEvent/QKeyEvent/qkeyevent_wrap.cpp index f6d572406..92c0d2bb3 100644 --- a/src/cpp/QtGui/QEvent/QKeyEvent/qkeyevent_wrap.cpp +++ b/src/cpp/QtGui/QEvent/QKeyEvent/qkeyevent_wrap.cpp @@ -19,15 +19,15 @@ Napi::Object QKeyEventWrap::init(Napi::Env env, Napi::Object exports) { } QKeyEvent* QKeyEventWrap::getInternalInstance() { - return this->instance; + return this->instance.get(); } QKeyEventWrap::QKeyEventWrap(const Napi::CallbackInfo& info): Napi::ObjectWrap(info) { Napi::Env env = info.Env(); Napi::HandleScope scope(env); if(info.Length() == 1) { - Napi::External eventObject = info[0].As>(); - this->instance = eventObject.Data(); + Napi::External eventObject = info[0].As>(); + this->instance = std::unique_ptr(eventObject.Data()); } else { Napi::TypeError::New(env, "Wrong number of arguments").ThrowAsJavaScriptException(); } diff --git a/src/cpp/QtGui/QEvent/QKeyEvent/qkeyevent_wrap.h b/src/cpp/QtGui/QEvent/QKeyEvent/qkeyevent_wrap.h index a680dbcc4..35c3e5974 100644 --- a/src/cpp/QtGui/QEvent/QKeyEvent/qkeyevent_wrap.h +++ b/src/cpp/QtGui/QEvent/QKeyEvent/qkeyevent_wrap.h @@ -1,11 +1,12 @@ #pragma once #include +#include #include class QKeyEventWrap : public Napi::ObjectWrap{ private: - QKeyEvent* instance; + std::unique_ptr instance; public: static Napi::Object init(Napi::Env env, Napi::Object exports); diff --git a/src/cpp/QtGui/QIcon/qicon_wrap.cpp b/src/cpp/QtGui/QIcon/qicon_wrap.cpp index 860e6005b..218a744de 100644 --- a/src/cpp/QtGui/QIcon/qicon_wrap.cpp +++ b/src/cpp/QtGui/QIcon/qicon_wrap.cpp @@ -24,11 +24,11 @@ QIconWrap::QIconWrap(const Napi::CallbackInfo &info) : Napi::ObjectWrap(); QString imageUrl = QString::fromUtf8(url.Utf8Value().c_str()); - this->instance = new QIcon(imageUrl); + this->instance = std::make_unique(imageUrl); } else if (info.Length() == 0) { - this->instance = new QIcon(); + this->instance = std::make_unique(); } else { @@ -38,10 +38,10 @@ QIconWrap::QIconWrap(const Napi::CallbackInfo &info) : Napi::ObjectWrapinstance; + this->instance.reset(); } QIcon *QIconWrap::getInternalInstance() { - return this->instance; + return this->instance.get(); } diff --git a/src/cpp/QtGui/QIcon/qicon_wrap.h b/src/cpp/QtGui/QIcon/qicon_wrap.h index 655baded1..a4e9dd953 100644 --- a/src/cpp/QtGui/QIcon/qicon_wrap.h +++ b/src/cpp/QtGui/QIcon/qicon_wrap.h @@ -1,13 +1,14 @@ #pragma once #include +#include #include #include "src/cpp/core/Component/component_macro.h" class QIconWrap : public Napi::ObjectWrap { private: - QIcon *instance; + std::unique_ptr instance; public: static Napi::FunctionReference constructor; diff --git a/src/cpp/QtGui/QPixmap/qpixmap_wrap.cpp b/src/cpp/QtGui/QPixmap/qpixmap_wrap.cpp index 0a51f5090..08a72a564 100644 --- a/src/cpp/QtGui/QPixmap/qpixmap_wrap.cpp +++ b/src/cpp/QtGui/QPixmap/qpixmap_wrap.cpp @@ -24,14 +24,14 @@ QPixmapWrap::QPixmapWrap(const Napi::CallbackInfo& info) : Napi::ObjectWrapinstance = info[0].As>().Data(); + this->instance = std::unique_ptr(info[0].As>().Data()); } else { Napi::String url = info[0].As(); QString imageUrl = QString::fromUtf8(url.Utf8Value().c_str()); - this->instance = new QPixmap(imageUrl); + this->instance = std::make_unique(imageUrl); } }else if (info.Length() == 0){ - this->instance = new QPixmap(); + this->instance = std::make_unique(); }else { Napi::TypeError::New(env, "Wrong number of arguments").ThrowAsJavaScriptException(); } @@ -39,12 +39,12 @@ QPixmapWrap::QPixmapWrap(const Napi::CallbackInfo& info) : Napi::ObjectWrapinstance; + this->instance.reset(); } QPixmap* QPixmapWrap::getInternalInstance() { - return this->instance; + return this->instance.get(); } Napi::Value QPixmapWrap::load(const Napi::CallbackInfo& info) diff --git a/src/cpp/QtGui/QPixmap/qpixmap_wrap.h b/src/cpp/QtGui/QPixmap/qpixmap_wrap.h index c8ff9efeb..b8c90ca62 100644 --- a/src/cpp/QtGui/QPixmap/qpixmap_wrap.h +++ b/src/cpp/QtGui/QPixmap/qpixmap_wrap.h @@ -1,12 +1,13 @@ #pragma once #include +#include #include #include "src/cpp/core/Component/component_macro.h" class QPixmapWrap : public Napi::ObjectWrap { private: - QPixmap* instance; + std::unique_ptr instance; public: static Napi::FunctionReference constructor; static Napi::Object init(Napi::Env env, Napi::Object exports); diff --git a/src/cpp/QtWidgets/QCheckBox/qcheckbox_wrap.cpp b/src/cpp/QtWidgets/QCheckBox/qcheckbox_wrap.cpp index de0a94b44..709537521 100644 --- a/src/cpp/QtWidgets/QCheckBox/qcheckbox_wrap.cpp +++ b/src/cpp/QtWidgets/QCheckBox/qcheckbox_wrap.cpp @@ -3,7 +3,6 @@ #include "src/cpp/Extras/Utils/nutils.h" #include - Napi::FunctionReference QCheckBoxWrap::constructor; Napi::Object QCheckBoxWrap::init(Napi::Env env, Napi::Object exports) { @@ -21,7 +20,7 @@ Napi::Object QCheckBoxWrap::init(Napi::Env env, Napi::Object exports) { } NCheckBox* QCheckBoxWrap::getInternalInstance() { - return this->instance; + return this->instance.get(); } QCheckBoxWrap::QCheckBoxWrap(const Napi::CallbackInfo& info): Napi::ObjectWrap(info) { @@ -29,11 +28,11 @@ QCheckBoxWrap::QCheckBoxWrap(const Napi::CallbackInfo& info): Napi::ObjectWrap(); - QWidgetWrap* parentWidgetWrap = Napi::ObjectWrap::Unwrap(parentObject); - this->instance = new NCheckBox(parentWidgetWrap->getInternalInstance()); //this sets the parent to current widget + Napi::Object parentObject = info[0].As(); + QWidgetWrap* parentWidgetWrap = Napi::ObjectWrap::Unwrap(parentObject); + this->instance = std::make_unique(parentWidgetWrap->getInternalInstance()); //this sets the parent to current widget }else if (info.Length() == 0){ - this->instance = new NCheckBox(); + this->instance = std::make_unique(); }else { Napi::TypeError::New(env, "Wrong number of arguments").ThrowAsJavaScriptException(); } @@ -42,7 +41,7 @@ QCheckBoxWrap::QCheckBoxWrap(const Napi::CallbackInfo& info): Napi::ObjectWrapinstance; + this->instance.reset(); } Napi::Value QCheckBoxWrap::setText(const Napi::CallbackInfo& info) { diff --git a/src/cpp/QtWidgets/QCheckBox/qcheckbox_wrap.h b/src/cpp/QtWidgets/QCheckBox/qcheckbox_wrap.h index 69bfe2751..8f49f85ba 100644 --- a/src/cpp/QtWidgets/QCheckBox/qcheckbox_wrap.h +++ b/src/cpp/QtWidgets/QCheckBox/qcheckbox_wrap.h @@ -1,13 +1,14 @@ #pragma once #include +#include #include "ncheckbox.h" #include "src/cpp/QtWidgets/QWidget/qwidget_macro.h" class QCheckBoxWrap : public Napi::ObjectWrap{ private: - NCheckBox* instance; + std::unique_ptr instance; public: static Napi::Object init(Napi::Env env, Napi::Object exports); QCheckBoxWrap(const Napi::CallbackInfo& info); diff --git a/src/cpp/QtWidgets/QDial/qdial_wrap.cpp b/src/cpp/QtWidgets/QDial/qdial_wrap.cpp index 8b6144f4a..c38031472 100644 --- a/src/cpp/QtWidgets/QDial/qdial_wrap.cpp +++ b/src/cpp/QtWidgets/QDial/qdial_wrap.cpp @@ -4,7 +4,6 @@ #include "src/cpp/Extras/Utils/nutils.h" #include - Napi::FunctionReference QDialWrap::constructor; Napi::Object QDialWrap::init(Napi::Env env, Napi::Object exports) { @@ -25,7 +24,7 @@ Napi::Object QDialWrap::init(Napi::Env env, Napi::Object exports) { } NDial* QDialWrap::getInternalInstance() { - return this->instance; + return this->instance.get(); } QDialWrap::QDialWrap(const Napi::CallbackInfo& info): Napi::ObjectWrap(info) { @@ -33,11 +32,11 @@ QDialWrap::QDialWrap(const Napi::CallbackInfo& info): Napi::ObjectWrap(); - QWidgetWrap* parentWidgetWrap = Napi::ObjectWrap::Unwrap(parentObject); - this->instance = new NDial(parentWidgetWrap->getInternalInstance()); //this sets the parent to current widget + Napi::Object parentObject = info[0].As(); + QWidgetWrap* parentWidgetWrap = Napi::ObjectWrap::Unwrap(parentObject); + this->instance = std::make_unique(parentWidgetWrap->getInternalInstance()); //this sets the parent to current widget }else if (info.Length() == 0){ - this->instance = new NDial(); + this->instance = std::make_unique(); }else { Napi::TypeError::New(env, "Wrong number of arguments").ThrowAsJavaScriptException(); } @@ -46,7 +45,7 @@ QDialWrap::QDialWrap(const Napi::CallbackInfo& info): Napi::ObjectWrapinstance; + this->instance.reset(); } Napi::Value QDialWrap::setNotchesVisible(const Napi::CallbackInfo& info) { diff --git a/src/cpp/QtWidgets/QDial/qdial_wrap.h b/src/cpp/QtWidgets/QDial/qdial_wrap.h index 26f361dc1..5f75be29b 100644 --- a/src/cpp/QtWidgets/QDial/qdial_wrap.h +++ b/src/cpp/QtWidgets/QDial/qdial_wrap.h @@ -1,13 +1,15 @@ #pragma once #include +#include +#include #include "ndial.h" #include "src/cpp/QtWidgets/QWidget/qwidget_macro.h" #include "src/cpp/QtWidgets/QAbstractSlider/qabstractslider_macro.h" class QDialWrap : public Napi::ObjectWrap{ private: - NDial* instance; + std::unique_ptr instance; public: static Napi::Object init(Napi::Env env, Napi::Object exports); QDialWrap(const Napi::CallbackInfo& info); diff --git a/src/cpp/QtWidgets/QGridLayout/qgridlayout_wrap.cpp b/src/cpp/QtWidgets/QGridLayout/qgridlayout_wrap.cpp index b50184c68..38310e123 100644 --- a/src/cpp/QtWidgets/QGridLayout/qgridlayout_wrap.cpp +++ b/src/cpp/QtWidgets/QGridLayout/qgridlayout_wrap.cpp @@ -17,7 +17,7 @@ Napi::Object QGridLayoutWrap::init(Napi::Env env, Napi::Object exports) { } QGridLayout* QGridLayoutWrap::getInternalInstance() { - return this->instance; + return this->instance.get(); } QGridLayoutWrap::QGridLayoutWrap(const Napi::CallbackInfo& info): Napi::ObjectWrap(info) { @@ -25,18 +25,18 @@ QGridLayoutWrap::QGridLayoutWrap(const Napi::CallbackInfo& info): Napi::ObjectWr Napi::HandleScope scope(env); if(info.Length() == 1) { - Napi::Object parentObject = info[0].As(); - QWidgetWrap* parentWidgetWrap = Napi::ObjectWrap::Unwrap(parentObject); - this->instance = new QGridLayout(parentWidgetWrap->getInternalInstance()); //this sets the parent to current widget + Napi::Object parentObject = info[0].As(); + QWidgetWrap* parentWidgetWrap = Napi::ObjectWrap::Unwrap(parentObject); + this->instance = std::make_unique(parentWidgetWrap->getInternalInstance()); //this sets the parent to current widget }else if (info.Length() == 0){ - this->instance = new QGridLayout(); + this->instance = std::make_unique(); }else { Napi::TypeError::New(env, "Wrong number of arguments").ThrowAsJavaScriptException(); } } QGridLayoutWrap::~QGridLayoutWrap() { - delete this->instance; + this->instance.reset(); } Napi::Value QGridLayoutWrap::addWidget(const Napi::CallbackInfo& info) { diff --git a/src/cpp/QtWidgets/QGridLayout/qgridlayout_wrap.h b/src/cpp/QtWidgets/QGridLayout/qgridlayout_wrap.h index e78b15a30..48ed45834 100644 --- a/src/cpp/QtWidgets/QGridLayout/qgridlayout_wrap.h +++ b/src/cpp/QtWidgets/QGridLayout/qgridlayout_wrap.h @@ -1,12 +1,13 @@ #pragma once #include +#include #include #include "src/cpp/QtWidgets/QLayout/qlayout_macro.h" class QGridLayoutWrap : public Napi::ObjectWrap{ private: - QGridLayout* instance; + std::unique_ptr instance; public: static Napi::Object init(Napi::Env env, Napi::Object exports); diff --git a/src/cpp/QtWidgets/QLabel/qlabel_wrap.cpp b/src/cpp/QtWidgets/QLabel/qlabel_wrap.cpp index 2b9ae22c4..38420b558 100644 --- a/src/cpp/QtWidgets/QLabel/qlabel_wrap.cpp +++ b/src/cpp/QtWidgets/QLabel/qlabel_wrap.cpp @@ -22,7 +22,7 @@ Napi::Object QLabelWrap::init(Napi::Env env, Napi::Object exports) { } NLabel* QLabelWrap::getInternalInstance() { - return this->instance; + return this->instance.get(); } QLabelWrap::QLabelWrap(const Napi::CallbackInfo& info): Napi::ObjectWrap(info) { @@ -30,11 +30,11 @@ QLabelWrap::QLabelWrap(const Napi::CallbackInfo& info): Napi::ObjectWrap(); - QWidgetWrap* parentWidgetWrap = Napi::ObjectWrap::Unwrap(parentObject); - this->instance = new NLabel(parentWidgetWrap->getInternalInstance()); //this sets the parent to current widget + Napi::Object parentObject = info[0].As(); + QWidgetWrap* parentWidgetWrap = Napi::ObjectWrap::Unwrap(parentObject); + this->instance = std::make_unique(parentWidgetWrap->getInternalInstance()); //this sets the parent to current widget }else if (info.Length() == 0){ - this->instance = new NLabel(); + this->instance = std::make_unique(); }else { Napi::TypeError::New(env, "Wrong number of arguments").ThrowAsJavaScriptException(); } @@ -43,7 +43,7 @@ QLabelWrap::QLabelWrap(const Napi::CallbackInfo& info): Napi::ObjectWrapinstance; + this->instance.reset(); } Napi::Value QLabelWrap::setWordWrap(const Napi::CallbackInfo& info) { diff --git a/src/cpp/QtWidgets/QLabel/qlabel_wrap.h b/src/cpp/QtWidgets/QLabel/qlabel_wrap.h index 036231311..c8bcde7ee 100644 --- a/src/cpp/QtWidgets/QLabel/qlabel_wrap.h +++ b/src/cpp/QtWidgets/QLabel/qlabel_wrap.h @@ -1,13 +1,13 @@ #pragma once #include +#include #include "nlabel.h" #include "src/cpp/QtWidgets/QWidget/qwidget_macro.h" - class QLabelWrap : public Napi::ObjectWrap{ private: - NLabel* instance; + std::unique_ptr instance; public: static Napi::Object init(Napi::Env env, Napi::Object exports); QLabelWrap(const Napi::CallbackInfo& info); diff --git a/src/cpp/QtWidgets/QLayout/qlayout_wrap.cpp b/src/cpp/QtWidgets/QLayout/qlayout_wrap.cpp index 860eff5bb..8e11f9766 100644 --- a/src/cpp/QtWidgets/QLayout/qlayout_wrap.cpp +++ b/src/cpp/QtWidgets/QLayout/qlayout_wrap.cpp @@ -11,7 +11,7 @@ void QLayoutWrap::init(Napi::Env env) { } QLayout* QLayoutWrap::getInternalInstance() { - return this->instance; + return this->instance.get(); } QLayoutWrap::QLayoutWrap(const Napi::CallbackInfo& info): Napi::ObjectWrap(info) { @@ -20,5 +20,5 @@ QLayoutWrap::QLayoutWrap(const Napi::CallbackInfo& info): Napi::ObjectWrapinstance; + this->instance.reset(); } diff --git a/src/cpp/QtWidgets/QLayout/qlayout_wrap.h b/src/cpp/QtWidgets/QLayout/qlayout_wrap.h index 91e08ca37..56638e5f2 100644 --- a/src/cpp/QtWidgets/QLayout/qlayout_wrap.h +++ b/src/cpp/QtWidgets/QLayout/qlayout_wrap.h @@ -1,6 +1,7 @@ #pragma once #include +#include #include #include "src/cpp/QtWidgets/QLayout/qlayout_macro.h" @@ -8,7 +9,7 @@ //ABSTRACT CLASS class QLayoutWrap : public Napi::ObjectWrap{ private: - QLayout* instance; + std::unique_ptr instance; public: static void init(Napi::Env env); QLayoutWrap(const Napi::CallbackInfo& info); diff --git a/src/cpp/QtWidgets/QLineEdit/qlineedit_wrap.cpp b/src/cpp/QtWidgets/QLineEdit/qlineedit_wrap.cpp index b4b4a523d..127a7dd51 100644 --- a/src/cpp/QtWidgets/QLineEdit/qlineedit_wrap.cpp +++ b/src/cpp/QtWidgets/QLineEdit/qlineedit_wrap.cpp @@ -4,7 +4,6 @@ #include "src/cpp/Extras/Utils/nutils.h" #include - Napi::FunctionReference QLineEditWrap::constructor; Napi::Object QLineEditWrap::init(Napi::Env env, Napi::Object exports) { @@ -24,7 +23,7 @@ Napi::Object QLineEditWrap::init(Napi::Env env, Napi::Object exports) { } NLineEdit* QLineEditWrap::getInternalInstance() { - return this->instance; + return this->instance.get(); } QLineEditWrap::QLineEditWrap(const Napi::CallbackInfo& info): Napi::ObjectWrap(info) { @@ -32,11 +31,11 @@ QLineEditWrap::QLineEditWrap(const Napi::CallbackInfo& info): Napi::ObjectWrap(); - QWidgetWrap* parentWidgetWrap = Napi::ObjectWrap::Unwrap(parentObject); - this->instance = new NLineEdit(parentWidgetWrap->getInternalInstance()); //this sets the parent to current widget + Napi::Object parentObject = info[0].As(); + QWidgetWrap* parentWidgetWrap = Napi::ObjectWrap::Unwrap(parentObject); + this->instance = std::make_unique(parentWidgetWrap->getInternalInstance()); //this sets the parent to current widget }else if (info.Length() == 0){ - this->instance = new NLineEdit(); + this->instance = std::make_unique(); }else { Napi::TypeError::New(env, "Wrong number of arguments").ThrowAsJavaScriptException(); } @@ -45,7 +44,7 @@ QLineEditWrap::QLineEditWrap(const Napi::CallbackInfo& info): Napi::ObjectWrapinstance; + this->instance.reset(); } diff --git a/src/cpp/QtWidgets/QLineEdit/qlineedit_wrap.h b/src/cpp/QtWidgets/QLineEdit/qlineedit_wrap.h index 3d3d761d5..4d8ea4259 100644 --- a/src/cpp/QtWidgets/QLineEdit/qlineedit_wrap.h +++ b/src/cpp/QtWidgets/QLineEdit/qlineedit_wrap.h @@ -1,13 +1,13 @@ #pragma once #include +#include #include "nlineedit.h" #include "src/cpp/QtWidgets/QWidget/qwidget_macro.h" - class QLineEditWrap : public Napi::ObjectWrap{ private: - NLineEdit* instance; + std::unique_ptr instance; public: static Napi::Object init(Napi::Env env, Napi::Object exports); QLineEditWrap(const Napi::CallbackInfo& info); diff --git a/src/cpp/QtWidgets/QMainWindow/qmainwindow_wrap.cpp b/src/cpp/QtWidgets/QMainWindow/qmainwindow_wrap.cpp index 4909a020a..84fffdb39 100644 --- a/src/cpp/QtWidgets/QMainWindow/qmainwindow_wrap.cpp +++ b/src/cpp/QtWidgets/QMainWindow/qmainwindow_wrap.cpp @@ -17,29 +17,28 @@ Napi::Object QMainWindowWrap::init(Napi::Env env, Napi::Object exports) { } NMainWindow* QMainWindowWrap::getInternalInstance() { - return this->instance; + return this->instance.get(); } QMainWindowWrap::QMainWindowWrap(const Napi::CallbackInfo& info): Napi::ObjectWrap(info) { Napi::Env env = info.Env(); Napi::HandleScope scope(env); - // SuppressDestruct(); if(info.Length() == 1) { - Napi::Object parentObject = info[0].As(); - QWidgetWrap* parentWidgetWrap = Napi::ObjectWrap::Unwrap(parentObject); - this->instance = new NMainWindow(parentWidgetWrap->getInternalInstance()); //this sets the parent to current widget + Napi::Object parentObject = info[0].As(); + QWidgetWrap* parentWidgetWrap = Napi::ObjectWrap::Unwrap(parentObject); + this->instance = std::make_unique(parentWidgetWrap->getInternalInstance()); //this sets the parent to current widget }else if (info.Length() == 0){ - this->instance = new NMainWindow(); + this->instance = std::make_unique(); }else { Napi::TypeError::New(env, "Wrong number of arguments").ThrowAsJavaScriptException(); } this->instance->setAttribute(Qt::WA_DeleteOnClose); - this->instance->installEventFilter(this->instance); + this->instance->installEventFilter(this->getInternalInstance()); } QMainWindowWrap::~QMainWindowWrap() { - delete this->instance; + this->instance.reset(); } Napi::Value QMainWindowWrap::setCentralWidget(const Napi::CallbackInfo& info){ diff --git a/src/cpp/QtWidgets/QMainWindow/qmainwindow_wrap.h b/src/cpp/QtWidgets/QMainWindow/qmainwindow_wrap.h index 19d4abb28..b53706a7f 100644 --- a/src/cpp/QtWidgets/QMainWindow/qmainwindow_wrap.h +++ b/src/cpp/QtWidgets/QMainWindow/qmainwindow_wrap.h @@ -1,14 +1,13 @@ #pragma once #include +#include #include "nmainwindow.h" #include "src/cpp/QtWidgets/QWidget/qwidget_macro.h" - class QMainWindowWrap : public Napi::ObjectWrap{ private: - NMainWindow* instance; - + std::unique_ptr instance; public: static Napi::Object init(Napi::Env env, Napi::Object exports); QMainWindowWrap(const Napi::CallbackInfo& info); diff --git a/src/cpp/QtWidgets/QPlainTextEdit/qplaintextedit_wrap.cpp b/src/cpp/QtWidgets/QPlainTextEdit/qplaintextedit_wrap.cpp index 83f04e4f6..797dc031a 100644 --- a/src/cpp/QtWidgets/QPlainTextEdit/qplaintextedit_wrap.cpp +++ b/src/cpp/QtWidgets/QPlainTextEdit/qplaintextedit_wrap.cpp @@ -24,7 +24,7 @@ Napi::Object QPlainTextEditWrap::init(Napi::Env env, Napi::Object exports) { } NPlainTextEdit* QPlainTextEditWrap::getInternalInstance() { - return this->instance; + return this->instance.get(); } QPlainTextEditWrap::QPlainTextEditWrap(const Napi::CallbackInfo& info): Napi::ObjectWrap(info) { @@ -32,11 +32,11 @@ QPlainTextEditWrap::QPlainTextEditWrap(const Napi::CallbackInfo& info): Napi::Ob Napi::HandleScope scope(env); if(info.Length() == 1) { - Napi::Object parentObject = info[0].As(); - QWidgetWrap* parentWidgetWrap = Napi::ObjectWrap::Unwrap(parentObject); - this->instance = new NPlainTextEdit(parentWidgetWrap->getInternalInstance()); //this sets the parent to current widget + Napi::Object parentObject = info[0].As(); + QWidgetWrap* parentWidgetWrap = Napi::ObjectWrap::Unwrap(parentObject); + this->instance = std::make_unique(parentWidgetWrap->getInternalInstance()); //this sets the parent to current widget }else if (info.Length() == 0){ - this->instance = new NPlainTextEdit(); + this->instance = std::make_unique(); }else { Napi::TypeError::New(env, "Wrong number of arguments").ThrowAsJavaScriptException(); } @@ -45,7 +45,7 @@ QPlainTextEditWrap::QPlainTextEditWrap(const Napi::CallbackInfo& info): Napi::Ob } QPlainTextEditWrap::~QPlainTextEditWrap() { - delete this->instance; + this->instance.reset(); } Napi::Value QPlainTextEditWrap::setPlainText(const Napi::CallbackInfo& info){ diff --git a/src/cpp/QtWidgets/QPlainTextEdit/qplaintextedit_wrap.h b/src/cpp/QtWidgets/QPlainTextEdit/qplaintextedit_wrap.h index 36d9a02bc..b9ff9c6ce 100644 --- a/src/cpp/QtWidgets/QPlainTextEdit/qplaintextedit_wrap.h +++ b/src/cpp/QtWidgets/QPlainTextEdit/qplaintextedit_wrap.h @@ -1,13 +1,14 @@ #pragma once #include +#include #include "nplaintextedit.h" #include "src/cpp/QtWidgets/QWidget/qwidget_macro.h" #include "src/cpp/QtWidgets/QAbstractScrollArea/qabstractscrollarea_macro.h" class QPlainTextEditWrap : public Napi::ObjectWrap{ private: - NPlainTextEdit* instance; + std::unique_ptr instance; public: static Napi::Object init(Napi::Env env, Napi::Object exports); QPlainTextEditWrap(const Napi::CallbackInfo& info); diff --git a/src/cpp/QtWidgets/QProgressBar/qprogressbar_wrap.cpp b/src/cpp/QtWidgets/QProgressBar/qprogressbar_wrap.cpp index 17eff7afe..274473fb3 100644 --- a/src/cpp/QtWidgets/QProgressBar/qprogressbar_wrap.cpp +++ b/src/cpp/QtWidgets/QProgressBar/qprogressbar_wrap.cpp @@ -4,7 +4,6 @@ #include "src/cpp/Extras/Utils/nutils.h" #include - Napi::FunctionReference QProgressBarWrap::constructor; Napi::Object QProgressBarWrap::init(Napi::Env env, Napi::Object exports) { @@ -24,7 +23,7 @@ Napi::Object QProgressBarWrap::init(Napi::Env env, Napi::Object exports) { } NProgressBar* QProgressBarWrap::getInternalInstance() { - return this->instance; + return this->instance.get(); } QProgressBarWrap::QProgressBarWrap(const Napi::CallbackInfo& info): Napi::ObjectWrap(info) { @@ -32,11 +31,11 @@ QProgressBarWrap::QProgressBarWrap(const Napi::CallbackInfo& info): Napi::Object Napi::HandleScope scope(env); if(info.Length() == 1) { - Napi::Object parentObject = info[0].As(); - QWidgetWrap* parentWidgetWrap = Napi::ObjectWrap::Unwrap(parentObject); - this->instance = new NProgressBar(parentWidgetWrap->getInternalInstance()); //this sets the parent to current widget + Napi::Object parentObject = info[0].As(); + QWidgetWrap* parentWidgetWrap = Napi::ObjectWrap::Unwrap(parentObject); + this->instance = std::make_unique(parentWidgetWrap->getInternalInstance()); //this sets the parent to current widget }else if (info.Length() == 0){ - this->instance = new NProgressBar(); + this->instance = std::make_unique(); }else { Napi::TypeError::New(env, "Wrong number of arguments").ThrowAsJavaScriptException(); } @@ -45,7 +44,7 @@ QProgressBarWrap::QProgressBarWrap(const Napi::CallbackInfo& info): Napi::Object } QProgressBarWrap::~QProgressBarWrap() { - delete this->instance; + this->instance.reset(); } Napi::Value QProgressBarWrap::setValue(const Napi::CallbackInfo& info) { diff --git a/src/cpp/QtWidgets/QProgressBar/qprogressbar_wrap.h b/src/cpp/QtWidgets/QProgressBar/qprogressbar_wrap.h index 460be760c..41ca2a78f 100644 --- a/src/cpp/QtWidgets/QProgressBar/qprogressbar_wrap.h +++ b/src/cpp/QtWidgets/QProgressBar/qprogressbar_wrap.h @@ -1,12 +1,13 @@ #pragma once #include +#include #include "nprogressbar.h" #include "src/cpp/QtWidgets/QWidget/qwidget_macro.h" class QProgressBarWrap : public Napi::ObjectWrap{ private: - NProgressBar* instance; + std::unique_ptr instance; public: static Napi::Object init(Napi::Env env, Napi::Object exports); QProgressBarWrap(const Napi::CallbackInfo& info); diff --git a/src/cpp/QtWidgets/QPushButton/qpushbutton_wrap.cpp b/src/cpp/QtWidgets/QPushButton/qpushbutton_wrap.cpp index a7f85cf0b..e45afb778 100644 --- a/src/cpp/QtWidgets/QPushButton/qpushbutton_wrap.cpp +++ b/src/cpp/QtWidgets/QPushButton/qpushbutton_wrap.cpp @@ -20,7 +20,7 @@ Napi::Object QPushButtonWrap::init(Napi::Env env, Napi::Object exports) { } NPushButton* QPushButtonWrap::getInternalInstance() { - return this->instance; + return this->instance.get(); } QPushButtonWrap::QPushButtonWrap(const Napi::CallbackInfo& info): Napi::ObjectWrap(info) { @@ -28,11 +28,11 @@ QPushButtonWrap::QPushButtonWrap(const Napi::CallbackInfo& info): Napi::ObjectWr Napi::HandleScope scope(env); if(info.Length() == 1) { - Napi::Object parentObject = info[0].As(); - QWidgetWrap* parentWidgetWrap = Napi::ObjectWrap::Unwrap(parentObject); - this->instance = new NPushButton(parentWidgetWrap->getInternalInstance()); //this sets the parent to current widget + Napi::Object parentObject = info[0].As(); + QWidgetWrap* parentWidgetWrap = Napi::ObjectWrap::Unwrap(parentObject); + this->instance = std::make_unique(parentWidgetWrap->getInternalInstance()); //this sets the parent to current widget } else if (info.Length() == 0){ - this->instance = new NPushButton(); + this->instance = std::make_unique(); } else { Napi::TypeError::New(env, "Wrong number of arguments").ThrowAsJavaScriptException(); } @@ -41,7 +41,7 @@ QPushButtonWrap::QPushButtonWrap(const Napi::CallbackInfo& info): Napi::ObjectWr } QPushButtonWrap::~QPushButtonWrap() { - delete this->instance; + this->instance.reset(); } diff --git a/src/cpp/QtWidgets/QPushButton/qpushbutton_wrap.h b/src/cpp/QtWidgets/QPushButton/qpushbutton_wrap.h index 638ec0005..4ef0b427b 100644 --- a/src/cpp/QtWidgets/QPushButton/qpushbutton_wrap.h +++ b/src/cpp/QtWidgets/QPushButton/qpushbutton_wrap.h @@ -1,6 +1,7 @@ #pragma once #include +#include #include "npushbutton.h" #include "src/cpp/QtWidgets/QWidget/qwidget_macro.h" @@ -8,7 +9,7 @@ class QPushButtonWrap : public Napi::ObjectWrap { private: - NPushButton* instance; + std::unique_ptr instance; public: static Napi::Object init(Napi::Env env, Napi::Object exports); QPushButtonWrap(const Napi::CallbackInfo &info); diff --git a/src/cpp/QtWidgets/QRadioButton/qradiobutton_wrap.cpp b/src/cpp/QtWidgets/QRadioButton/qradiobutton_wrap.cpp index d0deab6d1..8a63ddf94 100644 --- a/src/cpp/QtWidgets/QRadioButton/qradiobutton_wrap.cpp +++ b/src/cpp/QtWidgets/QRadioButton/qradiobutton_wrap.cpp @@ -20,7 +20,7 @@ Napi::Object QRadioButtonWrap::init(Napi::Env env, Napi::Object exports) { } NRadioButton* QRadioButtonWrap::getInternalInstance() { - return this->instance; + return this->instance.get(); } QRadioButtonWrap::QRadioButtonWrap(const Napi::CallbackInfo& info): Napi::ObjectWrap(info) { @@ -28,11 +28,11 @@ QRadioButtonWrap::QRadioButtonWrap(const Napi::CallbackInfo& info): Napi::Object Napi::HandleScope scope(env); if(info.Length() == 1) { - Napi::Object parentObject = info[0].As(); - QWidgetWrap* parentWidgetWrap = Napi::ObjectWrap::Unwrap(parentObject); - this->instance = new NRadioButton(parentWidgetWrap->getInternalInstance()); //this sets the parent to current widget + Napi::Object parentObject = info[0].As(); + QWidgetWrap* parentWidgetWrap = Napi::ObjectWrap::Unwrap(parentObject); + this->instance = std::make_unique(parentWidgetWrap->getInternalInstance()); //this sets the parent to current widget }else if (info.Length() == 0){ - this->instance = new NRadioButton(); + this->instance = std::make_unique(); }else { Napi::TypeError::New(env, "Wrong number of arguments").ThrowAsJavaScriptException(); } @@ -41,7 +41,7 @@ QRadioButtonWrap::QRadioButtonWrap(const Napi::CallbackInfo& info): Napi::Object } QRadioButtonWrap::~QRadioButtonWrap() { - delete this->instance; + this->instance.reset(); } Napi::Value QRadioButtonWrap::setText(const Napi::CallbackInfo& info) { diff --git a/src/cpp/QtWidgets/QRadioButton/qradiobutton_wrap.h b/src/cpp/QtWidgets/QRadioButton/qradiobutton_wrap.h index cde253594..88fb018b2 100644 --- a/src/cpp/QtWidgets/QRadioButton/qradiobutton_wrap.h +++ b/src/cpp/QtWidgets/QRadioButton/qradiobutton_wrap.h @@ -1,13 +1,14 @@ #pragma once #include +#include #include "nradiobutton.h" #include "src/cpp/QtWidgets/QWidget/qwidget_macro.h" class QRadioButtonWrap : public Napi::ObjectWrap{ private: - NRadioButton* instance; + std::unique_ptr instance; public: static Napi::Object init(Napi::Env env, Napi::Object exports); QRadioButtonWrap(const Napi::CallbackInfo& info); diff --git a/src/cpp/QtWidgets/QScrollArea/qscrollarea_wrap.cpp b/src/cpp/QtWidgets/QScrollArea/qscrollarea_wrap.cpp index 83bb48841..5e7d330ca 100644 --- a/src/cpp/QtWidgets/QScrollArea/qscrollarea_wrap.cpp +++ b/src/cpp/QtWidgets/QScrollArea/qscrollarea_wrap.cpp @@ -17,7 +17,7 @@ Napi::Object QScrollAreaWrap::init(Napi::Env env, Napi::Object exports) { } NScrollArea* QScrollAreaWrap::getInternalInstance() { - return this->instance; + return this->instance.get(); } QScrollAreaWrap::QScrollAreaWrap(const Napi::CallbackInfo& info): Napi::ObjectWrap(info) { @@ -25,18 +25,18 @@ QScrollAreaWrap::QScrollAreaWrap(const Napi::CallbackInfo& info): Napi::ObjectWr Napi::HandleScope scope(env); if(info.Length() == 1) { - Napi::Object parentObject = info[0].As(); - QWidgetWrap* parentWidgetWrap = Napi::ObjectWrap::Unwrap(parentObject); - this->instance = new NScrollArea(parentWidgetWrap->getInternalInstance()); //this sets the parent to current widget + Napi::Object parentObject = info[0].As(); + QWidgetWrap* parentWidgetWrap = Napi::ObjectWrap::Unwrap(parentObject); + this->instance = std::make_unique(parentWidgetWrap->getInternalInstance()); //this sets the parent to current widget }else if (info.Length() == 0){ - this->instance = new NScrollArea(); + this->instance = std::make_unique(); }else { Napi::TypeError::New(env, "Wrong number of arguments").ThrowAsJavaScriptException(); } } QScrollAreaWrap::~QScrollAreaWrap() { - delete this->instance; + this->instance.reset(); } Napi::Value QScrollAreaWrap::setWidget(const Napi::CallbackInfo& info) { diff --git a/src/cpp/QtWidgets/QScrollArea/qscrollarea_wrap.h b/src/cpp/QtWidgets/QScrollArea/qscrollarea_wrap.h index fb927965e..a263962dc 100644 --- a/src/cpp/QtWidgets/QScrollArea/qscrollarea_wrap.h +++ b/src/cpp/QtWidgets/QScrollArea/qscrollarea_wrap.h @@ -1,13 +1,13 @@ #pragma once #include +#include #include "nscrollarea.h" #include "src/cpp/QtWidgets/QAbstractScrollArea/qabstractscrollarea_macro.h" - class QScrollAreaWrap : public Napi::ObjectWrap{ private: - NScrollArea* instance; + std::unique_ptr instance; public: static Napi::Object init(Napi::Env env, Napi::Object exports); QScrollAreaWrap(const Napi::CallbackInfo& info); diff --git a/src/cpp/QtWidgets/QSpinBox/qspinbox_wrap.cpp b/src/cpp/QtWidgets/QSpinBox/qspinbox_wrap.cpp index fa318e20f..61b08a46e 100644 --- a/src/cpp/QtWidgets/QSpinBox/qspinbox_wrap.cpp +++ b/src/cpp/QtWidgets/QSpinBox/qspinbox_wrap.cpp @@ -27,7 +27,7 @@ Napi::Object QSpinBoxWrap::init(Napi::Env env, Napi::Object exports) { } NSpinBox* QSpinBoxWrap::getInternalInstance() { - return this->instance; + return this->instance.get(); } QSpinBoxWrap::QSpinBoxWrap(const Napi::CallbackInfo& info): Napi::ObjectWrap(info) { @@ -37,9 +37,9 @@ QSpinBoxWrap::QSpinBoxWrap(const Napi::CallbackInfo& info): Napi::ObjectWrap(); QWidgetWrap* parentWidgetWrap = Napi::ObjectWrap::Unwrap(parentObject); - this->instance = new NSpinBox(parentWidgetWrap->getInternalInstance()); //this sets the parent to current widget + this->instance = std::make_unique(parentWidgetWrap->getInternalInstance()); //this sets the parent to current widget } else if (info.Length() == 0){ - this->instance = new NSpinBox(); + this->instance = std::make_unique(); } else { Napi::TypeError::New(env, "Wrong number of arguments").ThrowAsJavaScriptException(); } @@ -48,7 +48,7 @@ QSpinBoxWrap::QSpinBoxWrap(const Napi::CallbackInfo& info): Napi::ObjectWrapinstance; + this->instance.reset(); } Napi::Value QSpinBoxWrap::setPrefix(const Napi::CallbackInfo& info) { diff --git a/src/cpp/QtWidgets/QSpinBox/qspinbox_wrap.h b/src/cpp/QtWidgets/QSpinBox/qspinbox_wrap.h index ea9b10d90..baba8a483 100644 --- a/src/cpp/QtWidgets/QSpinBox/qspinbox_wrap.h +++ b/src/cpp/QtWidgets/QSpinBox/qspinbox_wrap.h @@ -1,6 +1,7 @@ #pragma once #include +#include #include "nspinbox.h" #include "src/cpp/QtWidgets/QWidget/qwidget_macro.h" @@ -8,7 +9,7 @@ class QSpinBoxWrap : public Napi::ObjectWrap { private: - NSpinBox* instance; + std::unique_ptr instance; public: static Napi::Object init(Napi::Env env, Napi::Object exports); QSpinBoxWrap(const Napi::CallbackInfo &info); diff --git a/src/cpp/QtWidgets/QWidget/qwidget_wrap.cpp b/src/cpp/QtWidgets/QWidget/qwidget_wrap.cpp index 022b33741..8e6254c36 100644 --- a/src/cpp/QtWidgets/QWidget/qwidget_wrap.cpp +++ b/src/cpp/QtWidgets/QWidget/qwidget_wrap.cpp @@ -16,7 +16,7 @@ Napi::Object QWidgetWrap::init(Napi::Env env, Napi::Object exports) { } NWidget* QWidgetWrap::getInternalInstance() { - return this->instance; + return this->instance.get(); } QWidgetWrap::QWidgetWrap(const Napi::CallbackInfo& info): Napi::ObjectWrap(info) { @@ -24,20 +24,20 @@ QWidgetWrap::QWidgetWrap(const Napi::CallbackInfo& info): Napi::ObjectWrapinstance = info[0].As>().Data(); + this->instance = std::unique_ptr(info[0].As>().Data()); } else { Napi::Object parentObject = info[0].As(); QWidgetWrap* parentWidgetWrap = Napi::ObjectWrap::Unwrap(parentObject); - this->instance = new NWidget(parentWidgetWrap->getInternalInstance()); //this sets the parent to current widget + this->instance = std::make_unique(parentWidgetWrap->getInternalInstance()); //this sets the parent to current widget } } else if (info.Length() == 0){ - this->instance = new NWidget(); - }else { + this->instance = std::make_unique(); + } else { Napi::TypeError::New(env, "Wrong number of arguments").ThrowAsJavaScriptException(); } } QWidgetWrap::~QWidgetWrap() { - delete this->instance; + this->instance.reset(); } diff --git a/src/cpp/QtWidgets/QWidget/qwidget_wrap.h b/src/cpp/QtWidgets/QWidget/qwidget_wrap.h index 196e855aa..e9ee9c3bd 100644 --- a/src/cpp/QtWidgets/QWidget/qwidget_wrap.h +++ b/src/cpp/QtWidgets/QWidget/qwidget_wrap.h @@ -1,13 +1,13 @@ #pragma once #include "src/cpp/QtWidgets/QWidget/qwidget_macro.h" - #include +#include #include "nwidget.h" class QWidgetWrap : public Napi::ObjectWrap{ private: - NWidget* instance; + std::unique_ptr instance; public: static Napi::Object init(Napi::Env env, Napi::Object exports); QWidgetWrap(const Napi::CallbackInfo& info); diff --git a/src/cpp/core/FlexLayout/flexlayout_wrap.cpp b/src/cpp/core/FlexLayout/flexlayout_wrap.cpp index 5c2919c6b..6124f819a 100644 --- a/src/cpp/core/FlexLayout/flexlayout_wrap.cpp +++ b/src/cpp/core/FlexLayout/flexlayout_wrap.cpp @@ -20,7 +20,7 @@ Napi::Object FlexLayoutWrap::init(Napi::Env env, Napi::Object exports) { } FlexLayout* FlexLayoutWrap::getInternalInstance() { - return this->instance; + return this->instance.get(); } FlexLayoutWrap::FlexLayoutWrap(const Napi::CallbackInfo& info): Napi::ObjectWrap(info) { @@ -30,16 +30,16 @@ FlexLayoutWrap::FlexLayoutWrap(const Napi::CallbackInfo& info): Napi::ObjectWrap if(info.Length() == 1) { Napi::Object parentObject = info[0].As(); QWidgetWrap* parentWidgetWrap = Napi::ObjectWrap::Unwrap(parentObject); - this->instance = new FlexLayout(parentWidgetWrap->getInternalInstance()); //this sets the parent to current widget + this->instance = std::make_unique(parentWidgetWrap->getInternalInstance()); }else if (info.Length() == 0){ - this->instance = new FlexLayout(); + this->instance = std::make_unique(); }else { Napi::TypeError::New(env, "Wrong number of arguments").ThrowAsJavaScriptException(); } } FlexLayoutWrap::~FlexLayoutWrap() { - delete this->instance; + this->instance.reset(); } Napi::Value FlexLayoutWrap::addWidget(const Napi::CallbackInfo& info) { diff --git a/src/cpp/core/FlexLayout/flexlayout_wrap.h b/src/cpp/core/FlexLayout/flexlayout_wrap.h index 1faf9b7f5..28fac3104 100644 --- a/src/cpp/core/FlexLayout/flexlayout_wrap.h +++ b/src/cpp/core/FlexLayout/flexlayout_wrap.h @@ -1,13 +1,13 @@ #pragma once #include +#include #include "flexlayout.h" #include "src/cpp/QtWidgets/QLayout/qlayout_macro.h" class FlexLayoutWrap : public Napi::ObjectWrap{ private: - FlexLayout* instance; - + std::unique_ptr instance; public: static Napi::Object init(Napi::Env env, Napi::Object exports); FlexLayoutWrap(const Napi::CallbackInfo& info);