|
@@ -313,14 +313,14 @@ foreign dom_lib {
|
|
dispatch_custom_event :: proc(id: string, name: string, options := Event_Options{}) -> bool ---
|
|
dispatch_custom_event :: proc(id: string, name: string, options := Event_Options{}) -> bool ---
|
|
}
|
|
}
|
|
|
|
|
|
-add_event_listener :: proc(id: string, kind: Event_Kind, user_data: rawptr, callback: proc(e: Event), use_capture := false, prevent_default := false, stop_prop := false, stop_imm_prop := false) -> bool {
|
|
|
|
|
|
+add_event_listener :: proc(id: string, kind: Event_Kind, user_data: rawptr, callback: proc(e: Event), flags := Listener_Flags{}) -> bool {
|
|
@(default_calling_convention="contextless")
|
|
@(default_calling_convention="contextless")
|
|
foreign dom_lib {
|
|
foreign dom_lib {
|
|
@(link_name="add_event_listener")
|
|
@(link_name="add_event_listener")
|
|
_add_event_listener :: proc(id: string, name: string, name_code: Event_Kind, user_data: rawptr, callback: proc "odin" (Event), use_capture: bool, prevent_default: bool, stop_prop: bool, stop_imm_prop: bool) -> bool ---
|
|
_add_event_listener :: proc(id: string, name: string, name_code: Event_Kind, user_data: rawptr, callback: proc "odin" (Event), use_capture: bool, prevent_default: bool, stop_prop: bool, stop_imm_prop: bool) -> bool ---
|
|
}
|
|
}
|
|
// TODO: Pointer_Lock_Change etc related stuff for all different browsers
|
|
// TODO: Pointer_Lock_Change etc related stuff for all different browsers
|
|
- return _add_event_listener(id, event_kind_string[kind], kind, user_data, callback, use_capture, prevent_default, stop_prop, stop_imm_prop)
|
|
|
|
|
|
+ return _add_event_listener(id, event_kind_string[kind], kind, user_data, callback, .Use_Capture in flags, .Prevent_Default in flags, .Stop_Propagation in flags, .Stop_Immediate_Propagation in flags)
|
|
}
|
|
}
|
|
|
|
|
|
remove_event_listener :: proc(id: string, kind: Event_Kind, user_data: rawptr, callback: proc(e: Event)) -> bool {
|
|
remove_event_listener :: proc(id: string, kind: Event_Kind, user_data: rawptr, callback: proc(e: Event)) -> bool {
|
|
@@ -332,13 +332,13 @@ remove_event_listener :: proc(id: string, kind: Event_Kind, user_data: rawptr, c
|
|
return _remove_event_listener(id, event_kind_string[kind], user_data, callback)
|
|
return _remove_event_listener(id, event_kind_string[kind], user_data, callback)
|
|
}
|
|
}
|
|
|
|
|
|
-add_window_event_listener :: proc(kind: Event_Kind, user_data: rawptr, callback: proc(e: Event), use_capture := false, prevent_default := false, stop_prop := false, stop_imm_prop := false) -> bool {
|
|
|
|
|
|
+add_window_event_listener :: proc(kind: Event_Kind, user_data: rawptr, callback: proc(e: Event), flags := Listener_Flags{}) -> bool {
|
|
@(default_calling_convention="contextless")
|
|
@(default_calling_convention="contextless")
|
|
foreign dom_lib {
|
|
foreign dom_lib {
|
|
@(link_name="add_window_event_listener")
|
|
@(link_name="add_window_event_listener")
|
|
_add_window_event_listener :: proc(name: string, name_code: Event_Kind, user_data: rawptr, callback: proc "odin" (Event), use_capture: bool, prevent_default: bool, stop_prop: bool, stop_imm_prop: bool) -> bool ---
|
|
_add_window_event_listener :: proc(name: string, name_code: Event_Kind, user_data: rawptr, callback: proc "odin" (Event), use_capture: bool, prevent_default: bool, stop_prop: bool, stop_imm_prop: bool) -> bool ---
|
|
}
|
|
}
|
|
- return _add_window_event_listener(event_kind_string[kind], kind, user_data, callback, use_capture, prevent_default, stop_prop, stop_imm_prop)
|
|
|
|
|
|
+ return _add_window_event_listener(event_kind_string[kind], kind, user_data, callback, .Use_Capture in flags, .Prevent_Default in flags, .Stop_Propagation in flags, .Stop_Immediate_Propagation in flags)
|
|
}
|
|
}
|
|
|
|
|
|
remove_window_event_listener :: proc(kind: Event_Kind, user_data: rawptr, callback: proc(e: Event)) -> bool {
|
|
remove_window_event_listener :: proc(kind: Event_Kind, user_data: rawptr, callback: proc(e: Event)) -> bool {
|
|
@@ -357,13 +357,13 @@ remove_event_listener_from_event :: proc(e: Event) -> bool {
|
|
return remove_event_listener(e.id, e.kind, e.user_data, e.callback)
|
|
return remove_event_listener(e.id, e.kind, e.user_data, e.callback)
|
|
}
|
|
}
|
|
|
|
|
|
-add_custom_event_listener :: proc(id: string, name: string, user_data: rawptr, callback: proc(e: Event), use_capture := false, prevent_default := false, stop_prop := false, stop_imm_prop := false) -> bool {
|
|
|
|
|
|
+add_custom_event_listener :: proc(id: string, name: string, user_data: rawptr, callback: proc(e: Event), flags := Listener_Flags{}) -> bool {
|
|
@(default_calling_convention="contextless")
|
|
@(default_calling_convention="contextless")
|
|
foreign dom_lib {
|
|
foreign dom_lib {
|
|
@(link_name="add_event_listener")
|
|
@(link_name="add_event_listener")
|
|
_add_event_listener :: proc(id: string, name: string, name_code: Event_Kind, user_data: rawptr, callback: proc "odin" (Event), use_capture: bool, prevent_default: bool, stop_prop: bool, stop_imm_prop: bool) -> bool ---
|
|
_add_event_listener :: proc(id: string, name: string, name_code: Event_Kind, user_data: rawptr, callback: proc "odin" (Event), use_capture: bool, prevent_default: bool, stop_prop: bool, stop_imm_prop: bool) -> bool ---
|
|
}
|
|
}
|
|
- return _add_event_listener(id, name, .Custom, user_data, callback, use_capture, prevent_default, stop_prop, stop_imm_prop)
|
|
|
|
|
|
+ return _add_event_listener(id, name, .Custom, user_data, callback, .Use_Capture in flags, .Prevent_Default in flags, .Stop_Propagation in flags, .Stop_Immediate_Propagation in flags)
|
|
}
|
|
}
|
|
|
|
|
|
remove_custom_event_listener :: proc(id: string, name: string, user_data: rawptr, callback: proc(e: Event)) -> bool {
|
|
remove_custom_event_listener :: proc(id: string, name: string, user_data: rawptr, callback: proc(e: Event)) -> bool {
|