aboutsummaryrefslogtreecommitdiffstats
path: root/src/sdl_window.erl
diff options
context:
space:
mode:
authorLoïc Hoguin <[email protected]>2018-01-17 18:11:24 +0100
committerLoïc Hoguin <[email protected]>2018-01-17 18:12:23 +0100
commitd6de0fce0b46be3b382ba3c30fb7c9559f3fcb8e (patch)
tree9171aab855f013fd4cabe9e6838e76f92af8c8cf /src/sdl_window.erl
parent13d8ea6917d584e44888d5202dd28ac5602b2836 (diff)
downloadesdl2-d6de0fce0b46be3b382ba3c30fb7c9559f3fcb8e.tar.gz
esdl2-d6de0fce0b46be3b382ba3c30fb7c9559f3fcb8e.tar.bz2
esdl2-d6de0fce0b46be3b382ba3c30fb7c9559f3fcb8e.zip
Add the SDL_SetWindowHitTest callback
Diffstat (limited to 'src/sdl_window.erl')
-rw-r--r--src/sdl_window.erl12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/sdl_window.erl b/src/sdl_window.erl
index 802e20c..24a4622 100644
--- a/src/sdl_window.erl
+++ b/src/sdl_window.erl
@@ -45,6 +45,7 @@
-export([set_display_mode/2]).
-export([set_fullscreen/2]).
-export([set_gamma_ramp/4]).
+-export([set_hit_test_callback/3]).
-export([set_icon/2]).
-export([set_max_size/3]).
-export([set_min_size/3]).
@@ -55,6 +56,7 @@
-export([set_size/3]).
-export([set_title/2]).
-export([show/1]).
+-export([unset_hit_test_callback/1]).
-opaque window() :: <<>>.
-export_type([window/0]).
@@ -237,6 +239,11 @@ set_gamma_ramp(Window, Red, Green, Blue) ->
esdl2:set_window_gamma_ramp(Window, Red, Green, Blue),
receive {'_nif_thread_ret_', Ret} -> Ret end.
+-spec set_hit_test_callback(window(), module(), atom()) -> ok | sdl:error().
+set_hit_test_callback(Window, Module, Function) ->
+ esdl2:set_window_hit_test(Window, Module, Function),
+ receive {'_nif_thread_ret_', Ret} -> Ret end.
+
-spec set_icon(window(), sdl_surface:surface()) -> ok.
set_icon(Window, Surface) ->
esdl2:set_window_icon(Window, Surface),
@@ -279,3 +286,8 @@ set_title(Window, Title) ->
-spec show(window()) -> ok.
show(Window) ->
esdl2:show_window(Window).
+
+-spec unset_hit_test_callback(window()) -> ok | sdl:error().
+unset_hit_test_callback(Window) ->
+ esdl2:set_window_hit_test_remove(Window),
+ receive {'_nif_thread_ret_', Ret} -> Ret end.