milsko-node/src/classes.cpp

32 lines
1.5 KiB
C++
Raw Normal View History

2026-05-04 11:39:15 -07:00
#include "classes.hpp"
#include <Mw/Milsko.h>
#define NAPI_MWCLASS(env, cls) \
Napi::External<_MwClass>::New(env, cls)
Napi::Object ClassesInit(Napi::Env env, Napi::Object exports) {
Napi::Object classes = Napi::Object::New(env);
classes.Set("Box", NAPI_MWCLASS(env, MwBoxClass));
classes.Set("Button", NAPI_MWCLASS(env, MwButtonClass));
classes.Set("CheckBox", NAPI_MWCLASS(env, MwCheckBoxClass));
classes.Set("Entry", NAPI_MWCLASS(env, MwEntryClass));
classes.Set("Frame", NAPI_MWCLASS(env, MwFrameClass));
classes.Set("Image", NAPI_MWCLASS(env, MwImageClass));
classes.Set("Label", NAPI_MWCLASS(env, MwLabelClass));
classes.Set("ListBox", NAPI_MWCLASS(env, MwListBoxClass));
classes.Set("Menu", NAPI_MWCLASS(env, MwMenuClass));
classes.Set("NumberEntry", NAPI_MWCLASS(env, MwNumberEntryClass));
classes.Set("ScrollBar", NAPI_MWCLASS(env, MwScrollBarClass));
classes.Set("SubMenu", NAPI_MWCLASS(env, MwSubMenuClass));
classes.Set("SubWindow", NAPI_MWCLASS(env, MwSubWindowClass));
classes.Set("Viewport", NAPI_MWCLASS(env, MwViewportClass));
classes.Set("Window", NAPI_MWCLASS(env, MwWindowClass));
classes.Set("ProgressBar", NAPI_MWCLASS(env, MwProgressBarClass));
classes.Set("RadioBox", NAPI_MWCLASS(env, MwRadioBoxClass));
classes.Set("ComboBox", NAPI_MWCLASS(env, MwComboBoxClass));
classes.Set("TreeView", NAPI_MWCLASS(env, MwTreeViewClass));
exports.Set("NativeClasses", classes);
return exports;
};