AEEditorJS.cpp 701 B

1234567891011121314151617181920212223242526272829303132333435363738
  1. #include <AtomicJS/Javascript/JSVM.h>
  2. #include "../Application/AEPreferences.h"
  3. using namespace Atomic;
  4. namespace Atomic
  5. {
  6. extern void jsb_package_editor_init(JSVM* vm);
  7. }
  8. namespace AtomicEditor
  9. {
  10. static int Editor_GetPreferences(duk_context* ctx)
  11. {
  12. JSVM* vm = JSVM::GetJSVM(ctx);
  13. js_push_class_object_instance(ctx, vm->GetSubsystem<AEPreferences>(), "AEPreferences");
  14. return 1;
  15. }
  16. void jsapi_init_editor(JSVM* vm)
  17. {
  18. duk_context* ctx = vm->GetJSContext();
  19. duk_push_object(ctx);
  20. duk_push_c_function(ctx, Editor_GetPreferences, 0);
  21. duk_put_prop_string(ctx, -2, "getPreferences");
  22. duk_put_global_string(ctx, "Editor");
  23. jsb_package_editor_init(vm);
  24. }
  25. }