GlobalEventHandlers.cpp 1.4 KB

1234567891011121314151617181920212223242526272829303132
  1. /*
  2. * Copyright (c) 2021, Andreas Kling <kling@serenityos.org>
  3. *
  4. * SPDX-License-Identifier: BSD-2-Clause
  5. */
  6. #include <LibJS/Interpreter.h>
  7. #include <LibJS/Parser.h>
  8. #include <LibWeb/DOM/Document.h>
  9. #include <LibWeb/DOM/IDLEventListener.h>
  10. #include <LibWeb/HTML/EventHandler.h>
  11. #include <LibWeb/HTML/EventNames.h>
  12. #include <LibWeb/HTML/GlobalEventHandlers.h>
  13. #include <LibWeb/UIEvents/EventNames.h>
  14. namespace Web::HTML {
  15. #undef __ENUMERATE
  16. #define __ENUMERATE(attribute_name, event_name) \
  17. void GlobalEventHandlers::set_##attribute_name(Optional<Bindings::CallbackType> value) \
  18. { \
  19. global_event_handlers_to_event_target().set_event_handler_attribute(event_name, move(value)); \
  20. } \
  21. Bindings::CallbackType* GlobalEventHandlers::attribute_name() \
  22. { \
  23. return global_event_handlers_to_event_target().event_handler_attribute(event_name); \
  24. }
  25. ENUMERATE_GLOBAL_EVENT_HANDLERS(__ENUMERATE)
  26. #undef __ENUMERATE
  27. GlobalEventHandlers::~GlobalEventHandlers() = default;
  28. }