sdl2-bindings 0.0.3 → 0.0.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
data/lib/sdl2_stdinc.rb CHANGED
@@ -18,6 +18,14 @@ module SDL2
18
18
 
19
19
  # Typedef
20
20
 
21
+ typedef :char, :int8_t
22
+ typedef :short, :int16_t
23
+ typedef :int, :int32_t
24
+ typedef :long_long, :int64_t
25
+ typedef :uchar, :uint8_t
26
+ typedef :ushort, :uint16_t
27
+ typedef :uint, :uint32_t
28
+ typedef :ulong_long, :uint64_t
21
29
  typedef :int, :SDL_bool
22
30
  typedef :char, :Sint8
23
31
  typedef :uchar, :Uint8
@@ -51,12 +59,21 @@ module SDL2
51
59
  :SDL_setenv,
52
60
  :SDL_qsort,
53
61
  :SDL_abs,
62
+ :SDL_isalpha,
63
+ :SDL_isalnum,
64
+ :SDL_isblank,
65
+ :SDL_iscntrl,
54
66
  :SDL_isdigit,
67
+ :SDL_isxdigit,
68
+ :SDL_ispunct,
55
69
  :SDL_isspace,
56
70
  :SDL_isupper,
57
71
  :SDL_islower,
72
+ :SDL_isprint,
73
+ :SDL_isgraph,
58
74
  :SDL_toupper,
59
75
  :SDL_tolower,
76
+ :SDL_crc32,
60
77
  :SDL_memset,
61
78
  :SDL_memset4,
62
79
  :SDL_memcpy,
@@ -69,6 +86,8 @@ module SDL2
69
86
  :SDL_wcsstr,
70
87
  :SDL_wcscmp,
71
88
  :SDL_wcsncmp,
89
+ :SDL_wcscasecmp,
90
+ :SDL_wcsncasecmp,
72
91
  :SDL_strlen,
73
92
  :SDL_strlcpy,
74
93
  :SDL_utf8strlcpy,
@@ -123,6 +142,8 @@ module SDL2
123
142
  :SDL_fabsf,
124
143
  :SDL_floor,
125
144
  :SDL_floorf,
145
+ :SDL_trunc,
146
+ :SDL_truncf,
126
147
  :SDL_fmod,
127
148
  :SDL_fmodf,
128
149
  :SDL_log,
@@ -131,6 +152,10 @@ module SDL2
131
152
  :SDL_log10f,
132
153
  :SDL_pow,
133
154
  :SDL_powf,
155
+ :SDL_round,
156
+ :SDL_roundf,
157
+ :SDL_lround,
158
+ :SDL_lroundf,
134
159
  :SDL_scalbn,
135
160
  :SDL_scalbnf,
136
161
  :SDL_sin,
@@ -151,18 +176,27 @@ module SDL2
151
176
  :SDL_realloc => [:pointer, :ulong],
152
177
  :SDL_free => [:pointer],
153
178
  :SDL_GetMemoryFunctions => [:pointer, :pointer, :pointer, :pointer],
154
- :SDL_SetMemoryFunctions => [:pointer, :pointer, :pointer, :pointer],
179
+ :SDL_SetMemoryFunctions => [:SDL_malloc_func, :SDL_calloc_func, :SDL_realloc_func, :SDL_free_func],
155
180
  :SDL_GetNumAllocations => [],
156
181
  :SDL_getenv => [:pointer],
157
182
  :SDL_setenv => [:pointer, :pointer, :int],
158
183
  :SDL_qsort => [:pointer, :ulong, :ulong, :pointer],
159
184
  :SDL_abs => [:int],
185
+ :SDL_isalpha => [:int],
186
+ :SDL_isalnum => [:int],
187
+ :SDL_isblank => [:int],
188
+ :SDL_iscntrl => [:int],
160
189
  :SDL_isdigit => [:int],
190
+ :SDL_isxdigit => [:int],
191
+ :SDL_ispunct => [:int],
161
192
  :SDL_isspace => [:int],
162
193
  :SDL_isupper => [:int],
163
194
  :SDL_islower => [:int],
195
+ :SDL_isprint => [:int],
196
+ :SDL_isgraph => [:int],
164
197
  :SDL_toupper => [:int],
165
198
  :SDL_tolower => [:int],
199
+ :SDL_crc32 => [:uint, :pointer, :ulong],
166
200
  :SDL_memset => [:pointer, :int, :ulong],
167
201
  :SDL_memset4 => [:pointer, :uint, :ulong],
168
202
  :SDL_memcpy => [:pointer, :pointer, :ulong],
@@ -175,6 +209,8 @@ module SDL2
175
209
  :SDL_wcsstr => [:pointer, :pointer],
176
210
  :SDL_wcscmp => [:pointer, :pointer],
177
211
  :SDL_wcsncmp => [:pointer, :pointer, :ulong],
212
+ :SDL_wcscasecmp => [:pointer, :pointer],
213
+ :SDL_wcsncasecmp => [:pointer, :pointer, :ulong],
178
214
  :SDL_strlen => [:pointer],
179
215
  :SDL_strlcpy => [:pointer, :pointer, :ulong],
180
216
  :SDL_utf8strlcpy => [:pointer, :pointer, :ulong],
@@ -229,6 +265,8 @@ module SDL2
229
265
  :SDL_fabsf => [:float],
230
266
  :SDL_floor => [:double],
231
267
  :SDL_floorf => [:float],
268
+ :SDL_trunc => [:double],
269
+ :SDL_truncf => [:float],
232
270
  :SDL_fmod => [:double, :double],
233
271
  :SDL_fmodf => [:float, :float],
234
272
  :SDL_log => [:double],
@@ -237,6 +275,10 @@ module SDL2
237
275
  :SDL_log10f => [:float],
238
276
  :SDL_pow => [:double, :double],
239
277
  :SDL_powf => [:float, :float],
278
+ :SDL_round => [:double],
279
+ :SDL_roundf => [:float],
280
+ :SDL_lround => [:double],
281
+ :SDL_lroundf => [:float],
240
282
  :SDL_scalbn => [:double, :int],
241
283
  :SDL_scalbnf => [:float, :int],
242
284
  :SDL_sin => [:double],
@@ -263,12 +305,21 @@ module SDL2
263
305
  :SDL_setenv => :int,
264
306
  :SDL_qsort => :void,
265
307
  :SDL_abs => :int,
308
+ :SDL_isalpha => :int,
309
+ :SDL_isalnum => :int,
310
+ :SDL_isblank => :int,
311
+ :SDL_iscntrl => :int,
266
312
  :SDL_isdigit => :int,
313
+ :SDL_isxdigit => :int,
314
+ :SDL_ispunct => :int,
267
315
  :SDL_isspace => :int,
268
316
  :SDL_isupper => :int,
269
317
  :SDL_islower => :int,
318
+ :SDL_isprint => :int,
319
+ :SDL_isgraph => :int,
270
320
  :SDL_toupper => :int,
271
321
  :SDL_tolower => :int,
322
+ :SDL_crc32 => :uint,
272
323
  :SDL_memset => :pointer,
273
324
  :SDL_memset4 => :void,
274
325
  :SDL_memcpy => :pointer,
@@ -281,6 +332,8 @@ module SDL2
281
332
  :SDL_wcsstr => :pointer,
282
333
  :SDL_wcscmp => :int,
283
334
  :SDL_wcsncmp => :int,
335
+ :SDL_wcscasecmp => :int,
336
+ :SDL_wcsncasecmp => :int,
284
337
  :SDL_strlen => :size_t,
285
338
  :SDL_strlcpy => :size_t,
286
339
  :SDL_utf8strlcpy => :size_t,
@@ -335,6 +388,8 @@ module SDL2
335
388
  :SDL_fabsf => :float,
336
389
  :SDL_floor => :double,
337
390
  :SDL_floorf => :float,
391
+ :SDL_trunc => :double,
392
+ :SDL_truncf => :float,
338
393
  :SDL_fmod => :double,
339
394
  :SDL_fmodf => :float,
340
395
  :SDL_log => :double,
@@ -343,6 +398,10 @@ module SDL2
343
398
  :SDL_log10f => :float,
344
399
  :SDL_pow => :double,
345
400
  :SDL_powf => :float,
401
+ :SDL_round => :double,
402
+ :SDL_roundf => :float,
403
+ :SDL_lround => :long,
404
+ :SDL_lroundf => :long,
346
405
  :SDL_scalbn => :double,
347
406
  :SDL_scalbnf => :float,
348
407
  :SDL_sin => :double,
data/lib/sdl2_surface.rb CHANGED
@@ -41,7 +41,7 @@ module SDL2
41
41
  :pixels, :pointer,
42
42
  :userdata, :pointer,
43
43
  :locked, :int,
44
- :lock_data, :pointer,
44
+ :list_blitmap, :pointer,
45
45
  :clip_rect, SDL_Rect,
46
46
  :map, :pointer,
47
47
  :refcount, :int,
@@ -64,6 +64,7 @@ module SDL2
64
64
  :SDL_LoadBMP_RW,
65
65
  :SDL_SaveBMP_RW,
66
66
  :SDL_SetSurfaceRLE,
67
+ :SDL_HasSurfaceRLE,
67
68
  :SDL_SetColorKey,
68
69
  :SDL_HasColorKey,
69
70
  :SDL_GetColorKey,
@@ -84,6 +85,7 @@ module SDL2
84
85
  :SDL_UpperBlit,
85
86
  :SDL_LowerBlit,
86
87
  :SDL_SoftStretch,
88
+ :SDL_SoftStretchLinear,
87
89
  :SDL_UpperBlitScaled,
88
90
  :SDL_LowerBlitScaled,
89
91
  :SDL_SetYUVConversionMode,
@@ -102,6 +104,7 @@ module SDL2
102
104
  :SDL_LoadBMP_RW => [:pointer, :int],
103
105
  :SDL_SaveBMP_RW => [:pointer, :pointer, :int],
104
106
  :SDL_SetSurfaceRLE => [:pointer, :int],
107
+ :SDL_HasSurfaceRLE => [:pointer],
105
108
  :SDL_SetColorKey => [:pointer, :int, :uint],
106
109
  :SDL_HasColorKey => [:pointer],
107
110
  :SDL_GetColorKey => [:pointer, :pointer],
@@ -122,6 +125,7 @@ module SDL2
122
125
  :SDL_UpperBlit => [:pointer, :pointer, :pointer, :pointer],
123
126
  :SDL_LowerBlit => [:pointer, :pointer, :pointer, :pointer],
124
127
  :SDL_SoftStretch => [:pointer, :pointer, :pointer, :pointer],
128
+ :SDL_SoftStretchLinear => [:pointer, :pointer, :pointer, :pointer],
125
129
  :SDL_UpperBlitScaled => [:pointer, :pointer, :pointer, :pointer],
126
130
  :SDL_LowerBlitScaled => [:pointer, :pointer, :pointer, :pointer],
127
131
  :SDL_SetYUVConversionMode => [:int],
@@ -140,6 +144,7 @@ module SDL2
140
144
  :SDL_LoadBMP_RW => :pointer,
141
145
  :SDL_SaveBMP_RW => :int,
142
146
  :SDL_SetSurfaceRLE => :int,
147
+ :SDL_HasSurfaceRLE => :int,
143
148
  :SDL_SetColorKey => :int,
144
149
  :SDL_HasColorKey => :int,
145
150
  :SDL_GetColorKey => :int,
@@ -160,6 +165,7 @@ module SDL2
160
165
  :SDL_UpperBlit => :int,
161
166
  :SDL_LowerBlit => :int,
162
167
  :SDL_SoftStretch => :int,
168
+ :SDL_SoftStretchLinear => :int,
163
169
  :SDL_UpperBlitScaled => :int,
164
170
  :SDL_LowerBlitScaled => :int,
165
171
  :SDL_SetYUVConversionMode => :void,
data/lib/sdl2_syswm.rb ADDED
@@ -0,0 +1,155 @@
1
+ # Ruby-SDL2 : Yet another SDL2 wrapper for Ruby
2
+ #
3
+ # * https://github.com/vaiorabbit/sdl2-bindings
4
+ #
5
+ # [NOTICE] This is an automatically generated file.
6
+
7
+ require 'ffi'
8
+ require_relative 'sdl2_version'
9
+
10
+ module SDL2
11
+ extend FFI::Library
12
+ # Define/Macro
13
+
14
+
15
+ # Enum
16
+
17
+ SDL_SYSWM_UNKNOWN = 0
18
+ SDL_SYSWM_WINDOWS = 1
19
+ SDL_SYSWM_X11 = 2
20
+ SDL_SYSWM_DIRECTFB = 3
21
+ SDL_SYSWM_COCOA = 4
22
+ SDL_SYSWM_UIKIT = 5
23
+ SDL_SYSWM_WAYLAND = 6
24
+ SDL_SYSWM_MIR = 7
25
+ SDL_SYSWM_WINRT = 8
26
+ SDL_SYSWM_ANDROID = 9
27
+ SDL_SYSWM_VIVANTE = 10
28
+ SDL_SYSWM_OS2 = 11
29
+ SDL_SYSWM_HAIKU = 12
30
+ SDL_SYSWM_KMSDRM = 13
31
+
32
+ # Typedef
33
+
34
+ typedef :int, :SDL_SYSWM_TYPE
35
+
36
+ class SDL_SysWMmsg_def_win < FFI::Struct
37
+ layout(
38
+ :hwnd, :pointer,
39
+ :msg, :uint32,
40
+ :wParam, :uint64,
41
+ :lParam, :int64
42
+ )
43
+ end
44
+
45
+ class SDL_SysWMmsg_value_win < FFI::Union
46
+ layout(
47
+ :win, SDL_SysWMmsg_def_win.by_value,
48
+ :dummy, :int
49
+ )
50
+ end
51
+
52
+ class SDL_SysWMmsg_win < FFI::Struct
53
+ layout(
54
+ :version, SDL_version.by_value,
55
+ :subsystem, :int,
56
+ :msg, SDL_SysWMmsg_value_win.by_value
57
+ )
58
+ end
59
+
60
+
61
+ class SDL_SysWMmsg_def_cocoa < FFI::Struct
62
+ layout(
63
+ :dummy, :int
64
+ )
65
+ end
66
+
67
+ class SDL_SysWMmsg_value_cocoa < FFI::Union
68
+ layout(
69
+ :cocoa, SDL_SysWMmsg_def_cocoa.by_value,
70
+ :dummy, :int
71
+ )
72
+ end
73
+
74
+ class SDL_SysWMmsg_cocoa < FFI::Struct
75
+ layout(
76
+ :version, SDL_version.by_value,
77
+ :subsystem, :int,
78
+ :msg, SDL_SysWMmsg_value_cocoa.by_value
79
+ )
80
+ end
81
+
82
+ ################################################################################
83
+
84
+ class SDL_SysWMinfo_def_win < FFI::Struct
85
+ layout(
86
+ :window, :pointer,
87
+ :hdc, :pointer,
88
+ :hinstance, :pointer
89
+ )
90
+ end
91
+
92
+ class SDL_SysWMinfo_value_win < FFI::Union
93
+ layout(
94
+ :win, SDL_SysWMinfo_def_win.by_value,
95
+ :dummy, [:uint8, 64]
96
+ )
97
+ end
98
+
99
+ class SDL_SysWMinfo_win < FFI::Struct
100
+ layout(
101
+ :version, SDL_version.by_value,
102
+ :subsystem, :int,
103
+ :info, SDL_SysWMinfo_value_win.by_value
104
+ )
105
+ end
106
+
107
+
108
+ class SDL_SysWMinfo_def_cocoa < FFI::Struct
109
+ layout(
110
+ :window, :pointer
111
+ )
112
+ end
113
+
114
+ class SDL_SysWMinfo_value_cocoa < FFI::Union
115
+ layout(
116
+ :cocoa, SDL_SysWMinfo_def_cocoa.by_value,
117
+ :dummy, [:uint8, 64]
118
+ )
119
+ end
120
+
121
+ class SDL_SysWMinfo_cocoa < FFI::Struct
122
+ layout(
123
+ :version, SDL_version.by_value,
124
+ :subsystem, :int,
125
+ :info, SDL_SysWMinfo_value_cocoa.by_value
126
+ )
127
+ end
128
+
129
+
130
+ # Struct
131
+
132
+
133
+ # Function
134
+
135
+ def self.setup_syswm_symbols()
136
+ symbols = [
137
+ :SDL_GetWindowWMInfo,
138
+ ]
139
+ args = {
140
+ :SDL_GetWindowWMInfo => [:pointer, :pointer],
141
+ }
142
+ retvals = {
143
+ :SDL_GetWindowWMInfo => :int,
144
+ }
145
+ symbols.each do |sym|
146
+ begin
147
+ attach_function sym, args[sym], retvals[sym]
148
+ rescue FFI::NotFoundError => error
149
+ $stderr.puts("[Warning] Failed to import #{sym} (#{error}).")
150
+ end
151
+ end
152
+ end
153
+
154
+ end
155
+
data/lib/sdl2_timer.rb CHANGED
@@ -38,7 +38,7 @@ module SDL2
38
38
  :SDL_GetPerformanceCounter => [],
39
39
  :SDL_GetPerformanceFrequency => [],
40
40
  :SDL_Delay => [:uint],
41
- :SDL_AddTimer => [:uint, :pointer, :pointer],
41
+ :SDL_AddTimer => [:uint, :SDL_TimerCallback, :pointer],
42
42
  :SDL_RemoveTimer => [:int],
43
43
  }
44
44
  retvals = {
data/lib/sdl2_ttf.rb CHANGED
@@ -14,6 +14,18 @@ module SDL2
14
14
  SDL_TTF_MAJOR_VERSION = 2
15
15
  SDL_TTF_MINOR_VERSION = 0
16
16
  SDL_TTF_PATCHLEVEL = 15
17
+ TTF_MAJOR_VERSION = SDL_TTF_MAJOR_VERSION
18
+ TTF_MINOR_VERSION = SDL_TTF_MINOR_VERSION
19
+ TTF_PATCHLEVEL = SDL_TTF_PATCHLEVEL
20
+ TTF_STYLE_NORMAL = 0x00
21
+ TTF_STYLE_BOLD = 0x01
22
+ TTF_STYLE_ITALIC = 0x02
23
+ TTF_STYLE_UNDERLINE = 0x04
24
+ TTF_STYLE_STRIKETHROUGH = 0x08
25
+ TTF_HINTING_NORMAL = 0
26
+ TTF_HINTING_LIGHT = 1
27
+ TTF_HINTING_MONO = 2
28
+ TTF_HINTING_NONE = 3
17
29
 
18
30
  # Enum
19
31
 
data/lib/sdl2_version.rb CHANGED
@@ -12,7 +12,7 @@ module SDL2
12
12
 
13
13
  SDL_MAJOR_VERSION = 2
14
14
  SDL_MINOR_VERSION = 0
15
- SDL_PATCHLEVEL = 12
15
+ SDL_PATCHLEVEL = 16
16
16
 
17
17
  # Enum
18
18
 
data/lib/sdl2_video.rb CHANGED
@@ -10,6 +10,7 @@ module SDL2
10
10
  extend FFI::Library
11
11
  # Define/Macro
12
12
 
13
+ SDL_WINDOWPOS_UNDEFINED_MASK = 0x1FFF0000
13
14
  SDL_WINDOWPOS_CENTERED_MASK = 0x2FFF0000
14
15
 
15
16
  # Enum
@@ -22,7 +23,7 @@ module SDL2
22
23
  SDL_WINDOW_RESIZABLE = 32
23
24
  SDL_WINDOW_MINIMIZED = 64
24
25
  SDL_WINDOW_MAXIMIZED = 128
25
- SDL_WINDOW_INPUT_GRABBED = 256
26
+ SDL_WINDOW_MOUSE_GRABBED = 256
26
27
  SDL_WINDOW_INPUT_FOCUS = 512
27
28
  SDL_WINDOW_MOUSE_FOCUS = 1024
28
29
  SDL_WINDOW_FULLSCREEN_DESKTOP = 4097
@@ -34,7 +35,10 @@ module SDL2
34
35
  SDL_WINDOW_UTILITY = 131072
35
36
  SDL_WINDOW_TOOLTIP = 262144
36
37
  SDL_WINDOW_POPUP_MENU = 524288
38
+ SDL_WINDOW_KEYBOARD_GRABBED = 1048576
37
39
  SDL_WINDOW_VULKAN = 268435456
40
+ SDL_WINDOW_METAL = 536870912
41
+ SDL_WINDOW_INPUT_GRABBED = 256
38
42
  SDL_WINDOWEVENT_NONE = 0
39
43
  SDL_WINDOWEVENT_SHOWN = 1
40
44
  SDL_WINDOWEVENT_HIDDEN = 2
@@ -54,11 +58,16 @@ module SDL2
54
58
  SDL_WINDOWEVENT_HIT_TEST = 16
55
59
  SDL_DISPLAYEVENT_NONE = 0
56
60
  SDL_DISPLAYEVENT_ORIENTATION = 1
61
+ SDL_DISPLAYEVENT_CONNECTED = 2
62
+ SDL_DISPLAYEVENT_DISCONNECTED = 3
57
63
  SDL_ORIENTATION_UNKNOWN = 0
58
64
  SDL_ORIENTATION_LANDSCAPE = 1
59
65
  SDL_ORIENTATION_LANDSCAPE_FLIPPED = 2
60
66
  SDL_ORIENTATION_PORTRAIT = 3
61
67
  SDL_ORIENTATION_PORTRAIT_FLIPPED = 4
68
+ SDL_FLASH_CANCEL = 0
69
+ SDL_FLASH_BRIEFLY = 1
70
+ SDL_FLASH_UNTIL_FOCUSED = 2
62
71
  SDL_GL_RED_SIZE = 0
63
72
  SDL_GL_GREEN_SIZE = 1
64
73
  SDL_GL_BLUE_SIZE = 2
@@ -114,6 +123,7 @@ module SDL2
114
123
  typedef :int, :SDL_WindowEventID
115
124
  typedef :int, :SDL_DisplayEventID
116
125
  typedef :int, :SDL_DisplayOrientation
126
+ typedef :int, :SDL_FlashOperation
117
127
  typedef :pointer, :SDL_GLContext
118
128
  typedef :int, :SDL_GLattr
119
129
  typedef :int, :SDL_GLprofile
@@ -181,6 +191,7 @@ module SDL2
181
191
  :SDL_GetWindowMaximumSize,
182
192
  :SDL_SetWindowBordered,
183
193
  :SDL_SetWindowResizable,
194
+ :SDL_SetWindowAlwaysOnTop,
184
195
  :SDL_ShowWindow,
185
196
  :SDL_HideWindow,
186
197
  :SDL_RaiseWindow,
@@ -192,7 +203,11 @@ module SDL2
192
203
  :SDL_UpdateWindowSurface,
193
204
  :SDL_UpdateWindowSurfaceRects,
194
205
  :SDL_SetWindowGrab,
206
+ :SDL_SetWindowKeyboardGrab,
207
+ :SDL_SetWindowMouseGrab,
195
208
  :SDL_GetWindowGrab,
209
+ :SDL_GetWindowKeyboardGrab,
210
+ :SDL_GetWindowMouseGrab,
196
211
  :SDL_GetGrabbedWindow,
197
212
  :SDL_SetWindowBrightness,
198
213
  :SDL_GetWindowBrightness,
@@ -203,6 +218,7 @@ module SDL2
203
218
  :SDL_SetWindowGammaRamp,
204
219
  :SDL_GetWindowGammaRamp,
205
220
  :SDL_SetWindowHitTest,
221
+ :SDL_FlashWindow,
206
222
  :SDL_DestroyWindow,
207
223
  :SDL_IsScreenSaverEnabled,
208
224
  :SDL_EnableScreenSaver,
@@ -266,6 +282,7 @@ module SDL2
266
282
  :SDL_GetWindowMaximumSize => [:pointer, :pointer, :pointer],
267
283
  :SDL_SetWindowBordered => [:pointer, :int],
268
284
  :SDL_SetWindowResizable => [:pointer, :int],
285
+ :SDL_SetWindowAlwaysOnTop => [:pointer, :int],
269
286
  :SDL_ShowWindow => [:pointer],
270
287
  :SDL_HideWindow => [:pointer],
271
288
  :SDL_RaiseWindow => [:pointer],
@@ -277,7 +294,11 @@ module SDL2
277
294
  :SDL_UpdateWindowSurface => [:pointer],
278
295
  :SDL_UpdateWindowSurfaceRects => [:pointer, :pointer, :int],
279
296
  :SDL_SetWindowGrab => [:pointer, :int],
297
+ :SDL_SetWindowKeyboardGrab => [:pointer, :int],
298
+ :SDL_SetWindowMouseGrab => [:pointer, :int],
280
299
  :SDL_GetWindowGrab => [:pointer],
300
+ :SDL_GetWindowKeyboardGrab => [:pointer],
301
+ :SDL_GetWindowMouseGrab => [:pointer],
281
302
  :SDL_GetGrabbedWindow => [],
282
303
  :SDL_SetWindowBrightness => [:pointer, :float],
283
304
  :SDL_GetWindowBrightness => [:pointer],
@@ -287,7 +308,8 @@ module SDL2
287
308
  :SDL_SetWindowInputFocus => [:pointer],
288
309
  :SDL_SetWindowGammaRamp => [:pointer, :pointer, :pointer, :pointer],
289
310
  :SDL_GetWindowGammaRamp => [:pointer, :pointer, :pointer, :pointer],
290
- :SDL_SetWindowHitTest => [:pointer, :pointer, :pointer],
311
+ :SDL_SetWindowHitTest => [:pointer, :SDL_HitTest, :pointer],
312
+ :SDL_FlashWindow => [:pointer, :int],
291
313
  :SDL_DestroyWindow => [:pointer],
292
314
  :SDL_IsScreenSaverEnabled => [],
293
315
  :SDL_EnableScreenSaver => [],
@@ -351,6 +373,7 @@ module SDL2
351
373
  :SDL_GetWindowMaximumSize => :void,
352
374
  :SDL_SetWindowBordered => :void,
353
375
  :SDL_SetWindowResizable => :void,
376
+ :SDL_SetWindowAlwaysOnTop => :void,
354
377
  :SDL_ShowWindow => :void,
355
378
  :SDL_HideWindow => :void,
356
379
  :SDL_RaiseWindow => :void,
@@ -362,7 +385,11 @@ module SDL2
362
385
  :SDL_UpdateWindowSurface => :int,
363
386
  :SDL_UpdateWindowSurfaceRects => :int,
364
387
  :SDL_SetWindowGrab => :void,
388
+ :SDL_SetWindowKeyboardGrab => :void,
389
+ :SDL_SetWindowMouseGrab => :void,
365
390
  :SDL_GetWindowGrab => :int,
391
+ :SDL_GetWindowKeyboardGrab => :int,
392
+ :SDL_GetWindowMouseGrab => :int,
366
393
  :SDL_GetGrabbedWindow => :pointer,
367
394
  :SDL_SetWindowBrightness => :int,
368
395
  :SDL_GetWindowBrightness => :float,
@@ -373,6 +400,7 @@ module SDL2
373
400
  :SDL_SetWindowGammaRamp => :int,
374
401
  :SDL_GetWindowGammaRamp => :int,
375
402
  :SDL_SetWindowHitTest => :int,
403
+ :SDL_FlashWindow => :int,
376
404
  :SDL_DestroyWindow => :void,
377
405
  :SDL_IsScreenSaverEnabled => :int,
378
406
  :SDL_EnableScreenSaver => :void,