JSUI.h 584 B

123456789101112131415161718192021222324252627282930313233343536
  1. #pragma once
  2. #include <Duktape/duktape.h>
  3. #include <Atomic/Core/Object.h>
  4. namespace tb
  5. {
  6. class TBWidget;
  7. }
  8. namespace Atomic
  9. {
  10. class JSUI : public Object
  11. {
  12. OBJECT(JSUI)
  13. public:
  14. JSUI(Context* context);
  15. virtual ~JSUI();
  16. private:
  17. duk_context* ctx_;
  18. void HandleWidgetEvent(StringHash eventType, VariantMap& eventData);
  19. void HandleWidgetLoaded(StringHash eventType, VariantMap& eventData);
  20. void HandlePopupMenuSelect(StringHash eventType, VariantMap& eventData);
  21. void GatherWidgets(tb::TBWidget* widget, PODVector<tb::TBWidget*>& widgets);
  22. };
  23. }