sdl2-bindings 0.0.3 → 0.0.4
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/ChangeLog +6 -0
- data/README.md +1 -1
- data/lib/sdl2.rb +2 -0
- data/lib/sdl2_events.rb +4 -4
- data/lib/sdl2_hints.rb +93 -2
- data/lib/sdl2_log.rb +1 -1
- data/lib/sdl2_mixer.rb +2 -2
- data/lib/sdl2_stdinc.rb +1 -1
- data/lib/sdl2_syswm.rb +154 -0
- data/lib/sdl2_timer.rb +1 -1
- data/lib/sdl2_video.rb +1 -1
- metadata +6 -5
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 9f118058647c2dac8172c7240e09fe535a2efe02987eb7f176c83816c42d5bc6
|
4
|
+
data.tar.gz: acfb6538985bfc21f820c083cd9cc73ee91fd16fff3d7a940882265e5f9051b8
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 436c7e2e1fe87e50440c1398f513f306bfe271bfbb5fb5d4868713c545026a0398b7138394a58e6506b2eea25c8ce88ff65ea52b14a31ec6fe9ec64aa526f776
|
7
|
+
data.tar.gz: 4b45499bc140f16d00bccf1b1e74bb5ca84645febb941ec7eb1817e629be97687e8a74c8b023aa557504056cae39118e2705e0046dc54799c4f64348e335b3b5
|
data/ChangeLog
CHANGED
@@ -1,6 +1,12 @@
|
|
1
|
+
2020-06-08 vaiorabbit <http://twitter.com/vaiorabbit>
|
2
|
+
|
3
|
+
* lib/sdl2_syswm.rb: Added
|
4
|
+
* lib/sdl2_hints.rb: Added hint string symboles
|
5
|
+
|
1
6
|
2020-03-22 vaiorabbit <http://twitter.com/vaiorabbit>
|
2
7
|
|
3
8
|
* Added SDL 2.0.12 features.
|
9
|
+
* Generate callback types correctly.
|
4
10
|
|
5
11
|
2019-10-27 vaiorabbit <http://twitter.com/vaiorabbit>
|
6
12
|
|
data/README.md
CHANGED
data/lib/sdl2.rb
CHANGED
@@ -31,6 +31,7 @@ require_relative 'sdl2_scancode.rb'
|
|
31
31
|
require_relative 'sdl2_shape.rb'
|
32
32
|
require_relative 'sdl2_stdinc.rb'
|
33
33
|
require_relative 'sdl2_surface.rb'
|
34
|
+
require_relative 'sdl2_syswm.rb'
|
34
35
|
require_relative 'sdl2_timer.rb'
|
35
36
|
require_relative 'sdl2_touch.rb'
|
36
37
|
require_relative 'sdl2_version.rb'
|
@@ -114,6 +115,7 @@ module SDL2
|
|
114
115
|
setup_scancode_symbols()
|
115
116
|
setup_shape_symbols()
|
116
117
|
setup_surface_symbols()
|
118
|
+
setup_syswm_symbols()
|
117
119
|
setup_stdinc_symbols()
|
118
120
|
setup_timer_symbols()
|
119
121
|
setup_touch_symbols()
|
data/lib/sdl2_events.rb
CHANGED
@@ -460,11 +460,11 @@ module SDL2
|
|
460
460
|
:SDL_WaitEvent => [:pointer],
|
461
461
|
:SDL_WaitEventTimeout => [:pointer, :int],
|
462
462
|
:SDL_PushEvent => [:pointer],
|
463
|
-
:SDL_SetEventFilter => [:
|
463
|
+
:SDL_SetEventFilter => [:SDL_EventFilter, :pointer],
|
464
464
|
:SDL_GetEventFilter => [:pointer, :pointer],
|
465
|
-
:SDL_AddEventWatch => [:
|
466
|
-
:SDL_DelEventWatch => [:
|
467
|
-
:SDL_FilterEvents => [:
|
465
|
+
:SDL_AddEventWatch => [:SDL_EventFilter, :pointer],
|
466
|
+
:SDL_DelEventWatch => [:SDL_EventFilter, :pointer],
|
467
|
+
:SDL_FilterEvents => [:SDL_EventFilter, :pointer],
|
468
468
|
:SDL_EventState => [:uint, :int],
|
469
469
|
:SDL_RegisterEvents => [:int],
|
470
470
|
}
|
data/lib/sdl2_hints.rb
CHANGED
@@ -10,6 +10,97 @@ module SDL2
|
|
10
10
|
extend FFI::Library
|
11
11
|
# Define/Macro
|
12
12
|
|
13
|
+
SDL_HINT_FRAMEBUFFER_ACCELERATION = "SDL_FRAMEBUFFER_ACCELERATION"
|
14
|
+
SDL_HINT_RENDER_DRIVER = "SDL_RENDER_DRIVER"
|
15
|
+
SDL_HINT_RENDER_OPENGL_SHADERS = "SDL_RENDER_OPENGL_SHADERS"
|
16
|
+
SDL_HINT_RENDER_DIRECT3D_THREADSAFE = "SDL_RENDER_DIRECT3D_THREADSAFE"
|
17
|
+
SDL_HINT_RENDER_DIRECT3D11_DEBUG = "SDL_RENDER_DIRECT3D11_DEBUG"
|
18
|
+
SDL_HINT_RENDER_LOGICAL_SIZE_MODE = "SDL_RENDER_LOGICAL_SIZE_MODE"
|
19
|
+
SDL_HINT_RENDER_SCALE_QUALITY = "SDL_RENDER_SCALE_QUALITY"
|
20
|
+
SDL_HINT_RENDER_VSYNC = "SDL_RENDER_VSYNC"
|
21
|
+
SDL_HINT_VIDEO_ALLOW_SCREENSAVER = "SDL_VIDEO_ALLOW_SCREENSAVER"
|
22
|
+
SDL_HINT_VIDEO_EXTERNAL_CONTEXT = "SDL_VIDEO_EXTERNAL_CONTEXT"
|
23
|
+
SDL_HINT_VIDEO_X11_XVIDMODE = "SDL_VIDEO_X11_XVIDMODE"
|
24
|
+
SDL_HINT_VIDEO_X11_XINERAMA = "SDL_VIDEO_X11_XINERAMA"
|
25
|
+
SDL_HINT_VIDEO_X11_XRANDR = "SDL_VIDEO_X11_XRANDR"
|
26
|
+
SDL_HINT_VIDEO_X11_WINDOW_VISUALID = "SDL_VIDEO_X11_WINDOW_VISUALID"
|
27
|
+
SDL_HINT_VIDEO_X11_NET_WM_PING = "SDL_VIDEO_X11_NET_WM_PING"
|
28
|
+
SDL_HINT_VIDEO_X11_NET_WM_BYPASS_COMPOSITOR = "SDL_VIDEO_X11_NET_WM_BYPASS_COMPOSITOR"
|
29
|
+
SDL_HINT_VIDEO_X11_FORCE_EGL = "SDL_VIDEO_X11_FORCE_EGL"
|
30
|
+
SDL_HINT_WINDOW_FRAME_USABLE_WHILE_CURSOR_HIDDEN = "SDL_WINDOW_FRAME_USABLE_WHILE_CURSOR_HIDDEN"
|
31
|
+
SDL_HINT_WINDOWS_INTRESOURCE_ICON = "SDL_WINDOWS_INTRESOURCE_ICON"
|
32
|
+
SDL_HINT_WINDOWS_INTRESOURCE_ICON_SMALL = "SDL_WINDOWS_INTRESOURCE_ICON_SMALL"
|
33
|
+
SDL_HINT_WINDOWS_ENABLE_MESSAGELOOP = "SDL_WINDOWS_ENABLE_MESSAGELOOP"
|
34
|
+
SDL_HINT_GRAB_KEYBOARD = "SDL_GRAB_KEYBOARD"
|
35
|
+
SDL_HINT_MOUSE_DOUBLE_CLICK_TIME = "SDL_MOUSE_DOUBLE_CLICK_TIME"
|
36
|
+
SDL_HINT_MOUSE_DOUBLE_CLICK_RADIUS = "SDL_MOUSE_DOUBLE_CLICK_RADIUS"
|
37
|
+
SDL_HINT_MOUSE_NORMAL_SPEED_SCALE = "SDL_MOUSE_NORMAL_SPEED_SCALE"
|
38
|
+
SDL_HINT_MOUSE_RELATIVE_SPEED_SCALE = "SDL_MOUSE_RELATIVE_SPEED_SCALE"
|
39
|
+
SDL_HINT_MOUSE_RELATIVE_MODE_WARP = "SDL_MOUSE_RELATIVE_MODE_WARP"
|
40
|
+
SDL_HINT_MOUSE_FOCUS_CLICKTHROUGH = "SDL_MOUSE_FOCUS_CLICKTHROUGH"
|
41
|
+
SDL_HINT_TOUCH_MOUSE_EVENTS = "SDL_TOUCH_MOUSE_EVENTS"
|
42
|
+
SDL_HINT_MOUSE_TOUCH_EVENTS = "SDL_MOUSE_TOUCH_EVENTS"
|
43
|
+
SDL_HINT_VIDEO_MINIMIZE_ON_FOCUS_LOSS = "SDL_VIDEO_MINIMIZE_ON_FOCUS_LOSS"
|
44
|
+
SDL_HINT_IDLE_TIMER_DISABLED = "SDL_IOS_IDLE_TIMER_DISABLED"
|
45
|
+
SDL_HINT_ORIENTATIONS = "SDL_IOS_ORIENTATIONS"
|
46
|
+
SDL_HINT_APPLE_TV_CONTROLLER_UI_EVENTS = "SDL_APPLE_TV_CONTROLLER_UI_EVENTS"
|
47
|
+
SDL_HINT_APPLE_TV_REMOTE_ALLOW_ROTATION = "SDL_APPLE_TV_REMOTE_ALLOW_ROTATION"
|
48
|
+
SDL_HINT_IOS_HIDE_HOME_INDICATOR = "SDL_IOS_HIDE_HOME_INDICATOR"
|
49
|
+
SDL_HINT_ACCELEROMETER_AS_JOYSTICK = "SDL_ACCELEROMETER_AS_JOYSTICK"
|
50
|
+
SDL_HINT_TV_REMOTE_AS_JOYSTICK = "SDL_TV_REMOTE_AS_JOYSTICK"
|
51
|
+
SDL_HINT_XINPUT_ENABLED = "SDL_XINPUT_ENABLED"
|
52
|
+
SDL_HINT_XINPUT_USE_OLD_JOYSTICK_MAPPING = "SDL_XINPUT_USE_OLD_JOYSTICK_MAPPING"
|
53
|
+
SDL_HINT_GAMECONTROLLERTYPE = "SDL_GAMECONTROLLERTYPE"
|
54
|
+
SDL_HINT_GAMECONTROLLERCONFIG = "SDL_GAMECONTROLLERCONFIG"
|
55
|
+
SDL_HINT_GAMECONTROLLERCONFIG_FILE = "SDL_GAMECONTROLLERCONFIG_FILE"
|
56
|
+
SDL_HINT_GAMECONTROLLER_IGNORE_DEVICES = "SDL_GAMECONTROLLER_IGNORE_DEVICES"
|
57
|
+
SDL_HINT_GAMECONTROLLER_IGNORE_DEVICES_EXCEPT = "SDL_GAMECONTROLLER_IGNORE_DEVICES_EXCEPT"
|
58
|
+
SDL_HINT_GAMECONTROLLER_USE_BUTTON_LABELS = "SDL_GAMECONTROLLER_USE_BUTTON_LABELS"
|
59
|
+
SDL_HINT_JOYSTICK_ALLOW_BACKGROUND_EVENTS = "SDL_JOYSTICK_ALLOW_BACKGROUND_EVENTS"
|
60
|
+
SDL_HINT_JOYSTICK_HIDAPI = "SDL_JOYSTICK_HIDAPI"
|
61
|
+
SDL_HINT_JOYSTICK_HIDAPI_PS4 = "SDL_JOYSTICK_HIDAPI_PS4"
|
62
|
+
SDL_HINT_JOYSTICK_HIDAPI_PS4_RUMBLE = "SDL_JOYSTICK_HIDAPI_PS4_RUMBLE"
|
63
|
+
SDL_HINT_JOYSTICK_HIDAPI_STEAM = "SDL_JOYSTICK_HIDAPI_STEAM"
|
64
|
+
SDL_HINT_JOYSTICK_HIDAPI_SWITCH = "SDL_JOYSTICK_HIDAPI_SWITCH"
|
65
|
+
SDL_HINT_JOYSTICK_HIDAPI_XBOX = "SDL_JOYSTICK_HIDAPI_XBOX"
|
66
|
+
SDL_HINT_JOYSTICK_HIDAPI_GAMECUBE = "SDL_JOYSTICK_HIDAPI_GAMECUBE"
|
67
|
+
SDL_HINT_ENABLE_STEAM_CONTROLLERS = "SDL_ENABLE_STEAM_CONTROLLERS"
|
68
|
+
SDL_HINT_ALLOW_TOPMOST = "SDL_ALLOW_TOPMOST"
|
69
|
+
SDL_HINT_TIMER_RESOLUTION = "SDL_TIMER_RESOLUTION"
|
70
|
+
SDL_HINT_QTWAYLAND_CONTENT_ORIENTATION = "SDL_QTWAYLAND_CONTENT_ORIENTATION"
|
71
|
+
SDL_HINT_QTWAYLAND_WINDOW_FLAGS = "SDL_QTWAYLAND_WINDOW_FLAGS"
|
72
|
+
SDL_HINT_THREAD_STACK_SIZE = "SDL_THREAD_STACK_SIZE"
|
73
|
+
SDL_HINT_VIDEO_HIGHDPI_DISABLED = "SDL_VIDEO_HIGHDPI_DISABLED"
|
74
|
+
SDL_HINT_MAC_CTRL_CLICK_EMULATE_RIGHT_CLICK = "SDL_MAC_CTRL_CLICK_EMULATE_RIGHT_CLICK"
|
75
|
+
SDL_HINT_VIDEO_WIN_D3DCOMPILER = "SDL_VIDEO_WIN_D3DCOMPILER"
|
76
|
+
SDL_HINT_VIDEO_WINDOW_SHARE_PIXEL_FORMAT = "SDL_VIDEO_WINDOW_SHARE_PIXEL_FORMAT"
|
77
|
+
SDL_HINT_WINRT_PRIVACY_POLICY_URL = "SDL_WINRT_PRIVACY_POLICY_URL"
|
78
|
+
SDL_HINT_WINRT_PRIVACY_POLICY_LABEL = "SDL_WINRT_PRIVACY_POLICY_LABEL"
|
79
|
+
SDL_HINT_WINRT_HANDLE_BACK_BUTTON = "SDL_WINRT_HANDLE_BACK_BUTTON"
|
80
|
+
SDL_HINT_VIDEO_MAC_FULLSCREEN_SPACES = "SDL_VIDEO_MAC_FULLSCREEN_SPACES"
|
81
|
+
SDL_HINT_MAC_BACKGROUND_APP = "SDL_MAC_BACKGROUND_APP"
|
82
|
+
SDL_HINT_ANDROID_APK_EXPANSION_MAIN_FILE_VERSION = "SDL_ANDROID_APK_EXPANSION_MAIN_FILE_VERSION"
|
83
|
+
SDL_HINT_ANDROID_APK_EXPANSION_PATCH_FILE_VERSION = "SDL_ANDROID_APK_EXPANSION_PATCH_FILE_VERSION"
|
84
|
+
SDL_HINT_IME_INTERNAL_EDITING = "SDL_IME_INTERNAL_EDITING"
|
85
|
+
SDL_HINT_ANDROID_TRAP_BACK_BUTTON = "SDL_ANDROID_TRAP_BACK_BUTTON"
|
86
|
+
SDL_HINT_ANDROID_BLOCK_ON_PAUSE = "SDL_ANDROID_BLOCK_ON_PAUSE"
|
87
|
+
SDL_HINT_RETURN_KEY_HIDES_IME = "SDL_RETURN_KEY_HIDES_IME"
|
88
|
+
SDL_HINT_EMSCRIPTEN_KEYBOARD_ELEMENT = "SDL_EMSCRIPTEN_KEYBOARD_ELEMENT"
|
89
|
+
SDL_HINT_NO_SIGNAL_HANDLERS = "SDL_NO_SIGNAL_HANDLERS"
|
90
|
+
SDL_HINT_WINDOWS_NO_CLOSE_ON_ALT_F4 = "SDL_WINDOWS_NO_CLOSE_ON_ALT_F4"
|
91
|
+
SDL_HINT_BMP_SAVE_LEGACY_FORMAT = "SDL_BMP_SAVE_LEGACY_FORMAT"
|
92
|
+
SDL_HINT_WINDOWS_DISABLE_THREAD_NAMING = "SDL_WINDOWS_DISABLE_THREAD_NAMING"
|
93
|
+
SDL_HINT_RPI_VIDEO_LAYER = "SDL_RPI_VIDEO_LAYER"
|
94
|
+
SDL_HINT_VIDEO_DOUBLE_BUFFER = "SDL_VIDEO_DOUBLE_BUFFER"
|
95
|
+
SDL_HINT_OPENGL_ES_DRIVER = "SDL_OPENGL_ES_DRIVER"
|
96
|
+
SDL_HINT_AUDIO_RESAMPLING_MODE = "SDL_AUDIO_RESAMPLING_MODE"
|
97
|
+
SDL_HINT_AUDIO_CATEGORY = "SDL_AUDIO_CATEGORY"
|
98
|
+
SDL_HINT_RENDER_BATCHING = "SDL_RENDER_BATCHING"
|
99
|
+
SDL_HINT_EVENT_LOGGING = "SDL_EVENT_LOGGING"
|
100
|
+
SDL_HINT_WAVE_RIFF_CHUNK_SIZE = "SDL_WAVE_RIFF_CHUNK_SIZE"
|
101
|
+
SDL_HINT_WAVE_TRUNCATION = "SDL_WAVE_TRUNCATION"
|
102
|
+
SDL_HINT_WAVE_FACT_CHUNK = "SDL_WAVE_FACT_CHUNK"
|
103
|
+
SDL_HINT_DISPLAY_USABLE_BOUNDS = "SDL_DISPLAY_USABLE_BOUNDS"
|
13
104
|
|
14
105
|
# Enum
|
15
106
|
|
@@ -42,8 +133,8 @@ module SDL2
|
|
42
133
|
:SDL_SetHint => [:pointer, :pointer],
|
43
134
|
:SDL_GetHint => [:pointer],
|
44
135
|
:SDL_GetHintBoolean => [:pointer, :int],
|
45
|
-
:SDL_AddHintCallback => [:pointer, :
|
46
|
-
:SDL_DelHintCallback => [:pointer, :
|
136
|
+
:SDL_AddHintCallback => [:pointer, :SDL_HintCallback, :pointer],
|
137
|
+
:SDL_DelHintCallback => [:pointer, :SDL_HintCallback, :pointer],
|
47
138
|
:SDL_ClearHints => [],
|
48
139
|
}
|
49
140
|
retvals = {
|
data/lib/sdl2_log.rb
CHANGED
@@ -84,7 +84,7 @@ module SDL2
|
|
84
84
|
:SDL_LogCritical => [:int, :pointer],
|
85
85
|
:SDL_LogMessage => [:int, :int, :pointer],
|
86
86
|
:SDL_LogGetOutputFunction => [:pointer, :pointer],
|
87
|
-
:SDL_LogSetOutputFunction => [:
|
87
|
+
:SDL_LogSetOutputFunction => [:SDL_LogOutputFunction, :pointer],
|
88
88
|
}
|
89
89
|
retvals = {
|
90
90
|
:SDL_LogSetAllPriority => :void,
|
data/lib/sdl2_mixer.rb
CHANGED
@@ -166,8 +166,8 @@ module SDL2
|
|
166
166
|
:Mix_HookMusicFinished => [:pointer],
|
167
167
|
:Mix_GetMusicHookData => [],
|
168
168
|
:Mix_ChannelFinished => [:pointer],
|
169
|
-
:Mix_RegisterEffect => [:int, :
|
170
|
-
:Mix_UnregisterEffect => [:int, :
|
169
|
+
:Mix_RegisterEffect => [:int, :Mix_EffectFunc_t, :Mix_EffectDone_t, :pointer],
|
170
|
+
:Mix_UnregisterEffect => [:int, :Mix_EffectFunc_t],
|
171
171
|
:Mix_UnregisterAllEffects => [:int],
|
172
172
|
:Mix_SetPanning => [:int, :uchar, :uchar],
|
173
173
|
:Mix_SetPosition => [:int, :short, :uchar],
|
data/lib/sdl2_stdinc.rb
CHANGED
@@ -151,7 +151,7 @@ module SDL2
|
|
151
151
|
:SDL_realloc => [:pointer, :ulong],
|
152
152
|
:SDL_free => [:pointer],
|
153
153
|
:SDL_GetMemoryFunctions => [:pointer, :pointer, :pointer, :pointer],
|
154
|
-
:SDL_SetMemoryFunctions => [:
|
154
|
+
:SDL_SetMemoryFunctions => [:SDL_malloc_func, :SDL_calloc_func, :SDL_realloc_func, :SDL_free_func],
|
155
155
|
:SDL_GetNumAllocations => [],
|
156
156
|
:SDL_getenv => [:pointer],
|
157
157
|
:SDL_setenv => [:pointer, :pointer, :int],
|
data/lib/sdl2_syswm.rb
ADDED
@@ -0,0 +1,154 @@
|
|
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
|
+
|
31
|
+
# Typedef
|
32
|
+
|
33
|
+
typedef :int, :SDL_SYSWM_TYPE
|
34
|
+
|
35
|
+
class SDL_SysWMmsg_def_win < FFI::Struct
|
36
|
+
layout(
|
37
|
+
:hwnd, :pointer,
|
38
|
+
:msg, :uint32,
|
39
|
+
:wParam, :uint64,
|
40
|
+
:lParam, :int64
|
41
|
+
)
|
42
|
+
end
|
43
|
+
|
44
|
+
class SDL_SysWMmsg_value_win < FFI::Union
|
45
|
+
layout(
|
46
|
+
:win, SDL_SysWMmsg_def_win.by_value,
|
47
|
+
:dummy, :int
|
48
|
+
)
|
49
|
+
end
|
50
|
+
|
51
|
+
class SDL_SysWMmsg_win < FFI::Struct
|
52
|
+
layout(
|
53
|
+
:version, SDL_version.by_value,
|
54
|
+
:subsystem, :int,
|
55
|
+
:msg, SDL_SysWMmsg_value_win.by_value
|
56
|
+
)
|
57
|
+
end
|
58
|
+
|
59
|
+
|
60
|
+
class SDL_SysWMmsg_def_cocoa < FFI::Struct
|
61
|
+
layout(
|
62
|
+
:dummy, :int
|
63
|
+
)
|
64
|
+
end
|
65
|
+
|
66
|
+
class SDL_SysWMmsg_value_cocoa < FFI::Union
|
67
|
+
layout(
|
68
|
+
:cocoa, SDL_SysWMmsg_def_cocoa.by_value,
|
69
|
+
:dummy, :int
|
70
|
+
)
|
71
|
+
end
|
72
|
+
|
73
|
+
class SDL_SysWMmsg_cocoa < FFI::Struct
|
74
|
+
layout(
|
75
|
+
:version, SDL_version.by_value,
|
76
|
+
:subsystem, :int,
|
77
|
+
:msg, SDL_SysWMmsg_value_cocoa.by_value
|
78
|
+
)
|
79
|
+
end
|
80
|
+
|
81
|
+
################################################################################
|
82
|
+
|
83
|
+
class SDL_SysWMinfo_def_win < FFI::Struct
|
84
|
+
layout(
|
85
|
+
:window, :pointer,
|
86
|
+
:hdc, :pointer,
|
87
|
+
:hinstance, :pointer
|
88
|
+
)
|
89
|
+
end
|
90
|
+
|
91
|
+
class SDL_SysWMinfo_value_win < FFI::Union
|
92
|
+
layout(
|
93
|
+
:win, SDL_SysWMinfo_def_win.by_value,
|
94
|
+
:dummy, [:uint8, 64]
|
95
|
+
)
|
96
|
+
end
|
97
|
+
|
98
|
+
class SDL_SysWMinfo_win < FFI::Struct
|
99
|
+
layout(
|
100
|
+
:version, SDL_version.by_value,
|
101
|
+
:subsystem, :int,
|
102
|
+
:info, SDL_SysWMinfo_value_win.by_value
|
103
|
+
)
|
104
|
+
end
|
105
|
+
|
106
|
+
|
107
|
+
class SDL_SysWMinfo_def_cocoa < FFI::Struct
|
108
|
+
layout(
|
109
|
+
:window, :pointer
|
110
|
+
)
|
111
|
+
end
|
112
|
+
|
113
|
+
class SDL_SysWMinfo_value_cocoa < FFI::Union
|
114
|
+
layout(
|
115
|
+
:cocoa, SDL_SysWMinfo_def_cocoa.by_value,
|
116
|
+
:dummy, [:uint8, 64]
|
117
|
+
)
|
118
|
+
end
|
119
|
+
|
120
|
+
class SDL_SysWMinfo_cocoa < FFI::Struct
|
121
|
+
layout(
|
122
|
+
:version, SDL_version.by_value,
|
123
|
+
:subsystem, :int,
|
124
|
+
:info, SDL_SysWMinfo_value_cocoa.by_value
|
125
|
+
)
|
126
|
+
end
|
127
|
+
|
128
|
+
|
129
|
+
# Struct
|
130
|
+
|
131
|
+
|
132
|
+
# Function
|
133
|
+
|
134
|
+
def self.setup_syswm_symbols()
|
135
|
+
symbols = [
|
136
|
+
:SDL_GetWindowWMInfo,
|
137
|
+
]
|
138
|
+
args = {
|
139
|
+
:SDL_GetWindowWMInfo => [:pointer, :pointer],
|
140
|
+
}
|
141
|
+
retvals = {
|
142
|
+
:SDL_GetWindowWMInfo => :int,
|
143
|
+
}
|
144
|
+
symbols.each do |sym|
|
145
|
+
begin
|
146
|
+
attach_function sym, args[sym], retvals[sym]
|
147
|
+
rescue FFI::NotFoundError => error
|
148
|
+
$stderr.puts("[Warning] Failed to import #{sym} (#{error}).")
|
149
|
+
end
|
150
|
+
end
|
151
|
+
end
|
152
|
+
|
153
|
+
end
|
154
|
+
|
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, :
|
41
|
+
:SDL_AddTimer => [:uint, :SDL_TimerCallback, :pointer],
|
42
42
|
:SDL_RemoveTimer => [:int],
|
43
43
|
}
|
44
44
|
retvals = {
|
data/lib/sdl2_video.rb
CHANGED
@@ -287,7 +287,7 @@ module SDL2
|
|
287
287
|
:SDL_SetWindowInputFocus => [:pointer],
|
288
288
|
:SDL_SetWindowGammaRamp => [:pointer, :pointer, :pointer, :pointer],
|
289
289
|
:SDL_GetWindowGammaRamp => [:pointer, :pointer, :pointer, :pointer],
|
290
|
-
:SDL_SetWindowHitTest => [:pointer, :
|
290
|
+
:SDL_SetWindowHitTest => [:pointer, :SDL_HitTest, :pointer],
|
291
291
|
:SDL_DestroyWindow => [:pointer],
|
292
292
|
:SDL_IsScreenSaverEnabled => [],
|
293
293
|
:SDL_EnableScreenSaver => [],
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: sdl2-bindings
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- vaiorabbit
|
8
|
-
autorequire:
|
8
|
+
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2020-
|
11
|
+
date: 2020-06-08 00:00:00.000000000 Z
|
12
12
|
dependencies: []
|
13
13
|
description: 'Ruby bindings for SDL2.
|
14
14
|
|
@@ -57,6 +57,7 @@ files:
|
|
57
57
|
- lib/sdl2_shape.rb
|
58
58
|
- lib/sdl2_stdinc.rb
|
59
59
|
- lib/sdl2_surface.rb
|
60
|
+
- lib/sdl2_syswm.rb
|
60
61
|
- lib/sdl2_timer.rb
|
61
62
|
- lib/sdl2_touch.rb
|
62
63
|
- lib/sdl2_ttf.rb
|
@@ -67,7 +68,7 @@ homepage: https://github.com/vaiorabbit/sdl2-bindings
|
|
67
68
|
licenses:
|
68
69
|
- Zlib
|
69
70
|
metadata: {}
|
70
|
-
post_install_message:
|
71
|
+
post_install_message:
|
71
72
|
rdoc_options: []
|
72
73
|
require_paths:
|
73
74
|
- lib
|
@@ -83,7 +84,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
83
84
|
version: '0'
|
84
85
|
requirements: []
|
85
86
|
rubygems_version: 3.1.2
|
86
|
-
signing_key:
|
87
|
+
signing_key:
|
87
88
|
specification_version: 4
|
88
89
|
summary: Bindings for SDL2
|
89
90
|
test_files: []
|