sdl2-bindings 0.0.8 → 0.1.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (51) hide show
  1. checksums.yaml +4 -4
  2. data/ChangeLog +124 -92
  3. data/LICENSE.txt +1 -1
  4. data/README.md +77 -53
  5. data/lib/sdl2.rb +131 -172
  6. data/lib/sdl2_audio.rb +261 -222
  7. data/lib/sdl2_blendmode.rb +72 -69
  8. data/lib/sdl2_clipboard.rb +56 -51
  9. data/lib/sdl2_cpuinfo.rb +129 -106
  10. data/lib/sdl2_error.rb +71 -64
  11. data/lib/sdl2_events.rb +564 -533
  12. data/lib/sdl2_filesystem.rb +52 -48
  13. data/lib/sdl2_framerate.rb +74 -67
  14. data/lib/sdl2_gamecontroller.rb +329 -274
  15. data/lib/sdl2_gesture.rb +61 -55
  16. data/lib/sdl2_gfxPrimitives.rb +283 -222
  17. data/lib/sdl2_haptic.rb +301 -269
  18. data/lib/sdl2_hidapi.rb +139 -118
  19. data/lib/sdl2_hints.rb +221 -197
  20. data/lib/sdl2_image.rb +232 -185
  21. data/lib/sdl2_imageFilter.rb +164 -132
  22. data/lib/sdl2_joystick.rb +294 -239
  23. data/lib/sdl2_keyboard.rb +125 -99
  24. data/lib/sdl2_keycode.rb +307 -305
  25. data/lib/sdl2_log.rb +131 -115
  26. data/lib/sdl2_main.rb +74 -67
  27. data/lib/sdl2_messagebox.rb +102 -98
  28. data/lib/sdl2_misc.rb +48 -45
  29. data/lib/sdl2_mixer.rb +392 -317
  30. data/lib/sdl2_mouse.rb +136 -117
  31. data/lib/sdl2_pixels.rb +240 -224
  32. data/lib/sdl2_platform.rb +48 -45
  33. data/lib/sdl2_power.rb +54 -51
  34. data/lib/sdl2_rect.rb +145 -102
  35. data/lib/sdl2_render.rb +408 -322
  36. data/lib/sdl2_rotozoom.rb +76 -66
  37. data/lib/sdl2_rwops.rb +238 -208
  38. data/lib/sdl2_scancode.rb +289 -287
  39. data/lib/sdl2_sensor.rb +115 -97
  40. data/lib/sdl2_shape.rb +83 -77
  41. data/lib/sdl2_sound.rb +154 -0
  42. data/lib/sdl2_stdinc.rb +556 -439
  43. data/lib/sdl2_surface.rb +229 -188
  44. data/lib/sdl2_syswm.rb +160 -156
  45. data/lib/sdl2_timer.rb +74 -65
  46. data/lib/sdl2_touch.rb +86 -75
  47. data/lib/sdl2_ttf.rb +358 -202
  48. data/lib/sdl2_version.rb +67 -62
  49. data/lib/sdl2_video.rb +540 -446
  50. data/lib/sdl2_vulkan.rb +72 -64
  51. metadata +19 -4
data/lib/sdl2_keyboard.rb CHANGED
@@ -1,99 +1,125 @@
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
-
9
- module SDL2
10
- extend FFI::Library
11
- # Define/Macro
12
-
13
-
14
- # Enum
15
-
16
-
17
- # Typedef
18
-
19
-
20
- # Struct
21
-
22
- class SDL_Keysym < FFI::Struct
23
- layout(
24
- :scancode, :int,
25
- :sym, :int,
26
- :mod, :ushort,
27
- :unused, :uint,
28
- )
29
- end
30
-
31
-
32
- # Function
33
-
34
- def self.setup_keyboard_symbols()
35
- symbols = [
36
- :SDL_GetKeyboardFocus,
37
- :SDL_GetKeyboardState,
38
- :SDL_GetModState,
39
- :SDL_SetModState,
40
- :SDL_GetKeyFromScancode,
41
- :SDL_GetScancodeFromKey,
42
- :SDL_GetScancodeName,
43
- :SDL_GetScancodeFromName,
44
- :SDL_GetKeyName,
45
- :SDL_GetKeyFromName,
46
- :SDL_StartTextInput,
47
- :SDL_IsTextInputActive,
48
- :SDL_StopTextInput,
49
- :SDL_SetTextInputRect,
50
- :SDL_HasScreenKeyboardSupport,
51
- :SDL_IsScreenKeyboardShown,
52
- ]
53
- args = {
54
- :SDL_GetKeyboardFocus => [],
55
- :SDL_GetKeyboardState => [:pointer],
56
- :SDL_GetModState => [],
57
- :SDL_SetModState => [:int],
58
- :SDL_GetKeyFromScancode => [:int],
59
- :SDL_GetScancodeFromKey => [:int],
60
- :SDL_GetScancodeName => [:int],
61
- :SDL_GetScancodeFromName => [:pointer],
62
- :SDL_GetKeyName => [:int],
63
- :SDL_GetKeyFromName => [:pointer],
64
- :SDL_StartTextInput => [],
65
- :SDL_IsTextInputActive => [],
66
- :SDL_StopTextInput => [],
67
- :SDL_SetTextInputRect => [:pointer],
68
- :SDL_HasScreenKeyboardSupport => [],
69
- :SDL_IsScreenKeyboardShown => [:pointer],
70
- }
71
- retvals = {
72
- :SDL_GetKeyboardFocus => :pointer,
73
- :SDL_GetKeyboardState => :pointer,
74
- :SDL_GetModState => :int,
75
- :SDL_SetModState => :void,
76
- :SDL_GetKeyFromScancode => :int,
77
- :SDL_GetScancodeFromKey => :int,
78
- :SDL_GetScancodeName => :pointer,
79
- :SDL_GetScancodeFromName => :int,
80
- :SDL_GetKeyName => :pointer,
81
- :SDL_GetKeyFromName => :int,
82
- :SDL_StartTextInput => :void,
83
- :SDL_IsTextInputActive => :int,
84
- :SDL_StopTextInput => :void,
85
- :SDL_SetTextInputRect => :void,
86
- :SDL_HasScreenKeyboardSupport => :int,
87
- :SDL_IsScreenKeyboardShown => :int,
88
- }
89
- symbols.each do |sym|
90
- begin
91
- attach_function sym, args[sym], retvals[sym]
92
- rescue FFI::NotFoundError => error
93
- $stderr.puts("[Warning] Failed to import #{sym} (#{error}).")
94
- end
95
- end
96
- end
97
-
98
- end
99
-
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
+
9
+ module SDL
10
+ extend FFI::Library
11
+ # Define/Macro
12
+
13
+
14
+ # Enum
15
+
16
+
17
+ # Typedef
18
+
19
+
20
+ # Struct
21
+
22
+ class Keysym < FFI::Struct
23
+ layout(
24
+ :scancode, :int,
25
+ :sym, :int,
26
+ :mod, :ushort,
27
+ :unused, :uint,
28
+ )
29
+ end
30
+
31
+
32
+ # Function
33
+
34
+ def self.setup_keyboard_symbols(output_error = false)
35
+ symbols = [
36
+ :SDL_GetKeyboardFocus,
37
+ :SDL_GetKeyboardState,
38
+ :SDL_GetModState,
39
+ :SDL_SetModState,
40
+ :SDL_GetKeyFromScancode,
41
+ :SDL_GetScancodeFromKey,
42
+ :SDL_GetScancodeName,
43
+ :SDL_GetScancodeFromName,
44
+ :SDL_GetKeyName,
45
+ :SDL_GetKeyFromName,
46
+ :SDL_StartTextInput,
47
+ :SDL_IsTextInputActive,
48
+ :SDL_StopTextInput,
49
+ :SDL_ClearComposition,
50
+ :SDL_IsTextInputShown,
51
+ :SDL_SetTextInputRect,
52
+ :SDL_HasScreenKeyboardSupport,
53
+ :SDL_IsScreenKeyboardShown,
54
+ ]
55
+ apis = {
56
+ :SDL_GetKeyboardFocus => :GetKeyboardFocus,
57
+ :SDL_GetKeyboardState => :GetKeyboardState,
58
+ :SDL_GetModState => :GetModState,
59
+ :SDL_SetModState => :SetModState,
60
+ :SDL_GetKeyFromScancode => :GetKeyFromScancode,
61
+ :SDL_GetScancodeFromKey => :GetScancodeFromKey,
62
+ :SDL_GetScancodeName => :GetScancodeName,
63
+ :SDL_GetScancodeFromName => :GetScancodeFromName,
64
+ :SDL_GetKeyName => :GetKeyName,
65
+ :SDL_GetKeyFromName => :GetKeyFromName,
66
+ :SDL_StartTextInput => :StartTextInput,
67
+ :SDL_IsTextInputActive => :IsTextInputActive,
68
+ :SDL_StopTextInput => :StopTextInput,
69
+ :SDL_ClearComposition => :ClearComposition,
70
+ :SDL_IsTextInputShown => :IsTextInputShown,
71
+ :SDL_SetTextInputRect => :SetTextInputRect,
72
+ :SDL_HasScreenKeyboardSupport => :HasScreenKeyboardSupport,
73
+ :SDL_IsScreenKeyboardShown => :IsScreenKeyboardShown,
74
+ }
75
+ args = {
76
+ :SDL_GetKeyboardFocus => [],
77
+ :SDL_GetKeyboardState => [:pointer],
78
+ :SDL_GetModState => [],
79
+ :SDL_SetModState => [:int],
80
+ :SDL_GetKeyFromScancode => [:int],
81
+ :SDL_GetScancodeFromKey => [:int],
82
+ :SDL_GetScancodeName => [:int],
83
+ :SDL_GetScancodeFromName => [:pointer],
84
+ :SDL_GetKeyName => [:int],
85
+ :SDL_GetKeyFromName => [:pointer],
86
+ :SDL_StartTextInput => [],
87
+ :SDL_IsTextInputActive => [],
88
+ :SDL_StopTextInput => [],
89
+ :SDL_ClearComposition => [],
90
+ :SDL_IsTextInputShown => [],
91
+ :SDL_SetTextInputRect => [:pointer],
92
+ :SDL_HasScreenKeyboardSupport => [],
93
+ :SDL_IsScreenKeyboardShown => [:pointer],
94
+ }
95
+ retvals = {
96
+ :SDL_GetKeyboardFocus => :pointer,
97
+ :SDL_GetKeyboardState => :pointer,
98
+ :SDL_GetModState => :int,
99
+ :SDL_SetModState => :void,
100
+ :SDL_GetKeyFromScancode => :int,
101
+ :SDL_GetScancodeFromKey => :int,
102
+ :SDL_GetScancodeName => :pointer,
103
+ :SDL_GetScancodeFromName => :int,
104
+ :SDL_GetKeyName => :pointer,
105
+ :SDL_GetKeyFromName => :int,
106
+ :SDL_StartTextInput => :void,
107
+ :SDL_IsTextInputActive => :int,
108
+ :SDL_StopTextInput => :void,
109
+ :SDL_ClearComposition => :void,
110
+ :SDL_IsTextInputShown => :int,
111
+ :SDL_SetTextInputRect => :void,
112
+ :SDL_HasScreenKeyboardSupport => :int,
113
+ :SDL_IsScreenKeyboardShown => :int,
114
+ }
115
+ symbols.each do |sym|
116
+ begin
117
+ attach_function apis[sym], sym, args[sym], retvals[sym]
118
+ rescue FFI::NotFoundError => error
119
+ $stderr.puts("[Warning] Failed to import #{sym} (#{error}).") if output_error
120
+ end
121
+ end
122
+ end
123
+
124
+ end
125
+