aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLoïc Hoguin <[email protected]>2018-01-07 17:14:12 +0100
committerLoïc Hoguin <[email protected]>2018-01-07 17:14:12 +0100
commitc3b951f0e15a49d3ac4f6b5c5a5d7ae06e887ec1 (patch)
treece1ca2f8befa7ef181f6d40b069270299f110b35
parent66a56fe7634f6c2cceda4128ef2e746ad2619af3 (diff)
downloadesdl2-c3b951f0e15a49d3ac4f6b5c5a5d7ae06e887ec1.tar.gz
esdl2-c3b951f0e15a49d3ac4f6b5c5a5d7ae06e887ec1.tar.bz2
esdl2-c3b951f0e15a49d3ac4f6b5c5a5d7ae06e887ec1.zip
Add missing SDL_WindowFlags values
-rw-r--r--README.asciidoc1
-rw-r--r--c_src/esdl2.h6
-rw-r--r--c_src/sdl_window.c8
-rw-r--r--src/sdl_window.erl4
4 files changed, 16 insertions, 3 deletions
diff --git a/README.asciidoc b/README.asciidoc
index c48986c..c6f3434 100644
--- a/README.asciidoc
+++ b/README.asciidoc
@@ -84,7 +84,6 @@ corresponding to the public headers.
* 'SDL_surface.h': Only surface creation (via `IMG_Load`) and destruction is implemented. Might be better to move IMG_* functions in their own space.
* 'SDL_version.h': `SDL_GetRevisionNumber` must be implemented. The macros may also be useful.
* 'SDL_video.h': The following elements are missing:
-** `SDL_WindowFlags` values SDL_WINDOW_ALWAYS_ON_TOP, SDL_WINDOW_SKIP_TASKBAR, SDL_WINDOW_UTILITY, SDL_WINDOW_TOOLTIP, SDL_WINDOW_POPUP_MENU, SDL_WINDOW_VULKAN
** `SDL_WINDOWPOS_*` values for different displays
** `SDL_GetWindowDisplayIndex` (window)
** `SDL_SetWindowDisplayMode` (window)
diff --git a/c_src/esdl2.h b/c_src/esdl2.h
index f8215cf..1b87b1f 100644
--- a/c_src/esdl2.h
+++ b/c_src/esdl2.h
@@ -27,6 +27,7 @@
A(accelerated) \
A(add) \
A(allow_high_dpi) \
+ A(always_on_top) \
A(app_did_enter_background) \
A(app_did_enter_foreground) \
A(app_low_memory) \
@@ -170,6 +171,7 @@
A(one_minus_src_color) \
A(opengl) \
A(peek) \
+ A(popup_menu) \
A(present_vsync) \
A(pressed) \
A(quit) \
@@ -206,6 +208,7 @@
A(size_ns) \
A(size_nwse) \
A(size_we) \
+ A(skip_taskbar) \
A(software) \
A(src_alpha) \
A(src_color) \
@@ -220,14 +223,17 @@
A(texture_formats) \
A(timer) \
A(timestamp) \
+ A(tooltip) \
A(touch) \
A(true) \
A(type) \
A(undefined) \
A(unknown) \
+ A(utility) \
A(uyvy) \
A(vertical) \
A(video) \
+ A(vulkan) \
A(w) \
A(wait) \
A(wait_arrow) \
diff --git a/c_src/sdl_window.c b/c_src/sdl_window.c
index 03da8fd..2e0c1bb 100644
--- a/c_src/sdl_window.c
+++ b/c_src/sdl_window.c
@@ -38,7 +38,13 @@ void dtor_Window(ErlNifEnv* env, void* obj)
F(fullscreen_desktop, SDL_WINDOW_FULLSCREEN_DESKTOP) \
F(foreign, SDL_WINDOW_FOREIGN) \
F(allow_high_dpi, SDL_WINDOW_ALLOW_HIGHDPI) \
- F(mouse_capture, SDL_WINDOW_MOUSE_CAPTURE)
+ F(mouse_capture, SDL_WINDOW_MOUSE_CAPTURE) \
+ F(always_on_top, SDL_WINDOW_ALWAYS_ON_TOP) \
+ F(skip_taskbar, SDL_WINDOW_SKIP_TASKBAR) \
+ F(utility, SDL_WINDOW_UTILITY) \
+ F(tooltip, SDL_WINDOW_TOOLTIP) \
+ F(popup_menu, SDL_WINDOW_POPUP_MENU) \
+ F(vulkan, SDL_WINDOW_VULKAN)
static NIF_LIST_TO_FLAGS_FUNCTION(list_to_window_flags, Uint32, WINDOW_FLAGS)
static NIF_FLAGS_TO_LIST_FUNCTION(window_flags_to_list, Uint32, WINDOW_FLAGS)
diff --git a/src/sdl_window.erl b/src/sdl_window.erl
index 637e9de..26deeda 100644
--- a/src/sdl_window.erl
+++ b/src/sdl_window.erl
@@ -49,7 +49,9 @@
-type window_pos() :: centered | undefined | integer().
-type window_flag() :: fullscreen | fullscreen_desktop | opengl | shown
| hidden | borderless | resizable | minimized | maximized
- | input_grabbed | input_focus | mouse_focus | foreign | allow_high_dpi.
+ | input_grabbed | input_focus | mouse_focus | foreign | allow_high_dpi
+ | mouse_capture | always_on_top | skip_taskbar | utility
+ | tooltip | popup_menu | vulkan.
-type window_event_type() :: shown | hidden | exposed | moved | resized
| size_changed | minimized | maximized | restored | enter | leave