rbsdl3 0.3.0 → 0.4.0

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 735ceabe7394f50d29b5dc1b5693991a27f033391562f12fa47018a529dbafd8
4
- data.tar.gz: 0d3d0c7887c6bc2f5d65fe7d0b3f52d1291491808442ec7669daba4761f1da39
3
+ metadata.gz: 57654ffabb46a5a938789a02f3585f910a2b7cb196b8f1b882a0eabf258653d6
4
+ data.tar.gz: 1a90d683a5a7d15a29c7b018d5d5f2de7de8312505632e268363b0b42b2d32ac
5
5
  SHA512:
6
- metadata.gz: 7f178fc6ec1dc4632841a4b634b21e843169c6fdf036c3f6c7becedb5047322c36931bff88cdd36759411b2c4b2adeb1bfa9d4f14b2aa227d65371f58983d193
7
- data.tar.gz: 05bef4a70e285975a806f0216945cd0a1e75dbff6ef7490f81296721737a2b52bf3ce4bec7f1faa05f128672a8d11be977a767a7bce3a0a15a462d777e8f1fdd
6
+ metadata.gz: 636299ac99bbb64b493bf81b25c39e6110937649f943e57f01c7ff43aa47d279bb301171049e6292f87c55a358a4d17980bf6fbccd2f647736470f6a798df19a
7
+ data.tar.gz: 881b6420e7df843e66c8487378c6cbe390f84d4690f0064de5f304de2485ec8c7136e4fa989483ae0ae9f8ffbb7e402f4221f439f6a26cea43d18af4ef9cf399
data/CHANGELOG.md CHANGED
@@ -2,6 +2,16 @@
2
2
 
3
3
  ## [Unreleased]
4
4
 
5
+ ## [0.4.0] - 2026-03-13
6
+
7
+ ### Added
8
+ - Added optional extension entry point: `require "rbsdl3/mixer"` for SDL_mixer APIs.
9
+ - Target SDL_mixer version to 3.2.0. Generated `rbsdl3/mixer.rb`; SDL_mixer 3.2.0 APIs are now available via the bindings.
10
+
11
+ ### Updated
12
+ - Extended macro extraction to include `SDLK_`, `IMG_`, `MIX_`, and `TTF_` prefixes, so the generated bindings now include previously omitted constants.
13
+ - Added SDL_mixer to the default dynamic library load targets.
14
+
5
15
  ## [0.3.0] - 2026-01-24
6
16
 
7
17
  ### Updated
data/lib/rbsdl3/image.rb CHANGED
@@ -12,6 +12,35 @@ module SDL3
12
12
  const_set :SDL_IMAGE_MICRO_VERSION, 0
13
13
  const_set :SDL_IMAGE_VERSION, SDL_VERSIONNUM(SDL_IMAGE_MAJOR_VERSION, SDL_IMAGE_MINOR_VERSION, SDL_IMAGE_MICRO_VERSION)
14
14
  module_function def SDL_IMAGE_VERSION_ATLEAST(x, y, z) = ((SDL_IMAGE_MAJOR_VERSION >= x) && (SDL_IMAGE_MAJOR_VERSION > x || SDL_IMAGE_MINOR_VERSION >= y) && (SDL_IMAGE_MAJOR_VERSION > x || SDL_IMAGE_MINOR_VERSION > y || SDL_IMAGE_MICRO_VERSION >= z))
15
+ const_set :IMG_PROP_ANIMATION_ENCODER_CREATE_FILENAME_STRING, "SDL_image.animation_encoder.create.filename"
16
+ const_set :IMG_PROP_ANIMATION_ENCODER_CREATE_IOSTREAM_POINTER, "SDL_image.animation_encoder.create.iostream"
17
+ const_set :IMG_PROP_ANIMATION_ENCODER_CREATE_IOSTREAM_AUTOCLOSE_BOOLEAN, "SDL_image.animation_encoder.create.iostream.autoclose"
18
+ const_set :IMG_PROP_ANIMATION_ENCODER_CREATE_TYPE_STRING, "SDL_image.animation_encoder.create.type"
19
+ const_set :IMG_PROP_ANIMATION_ENCODER_CREATE_QUALITY_NUMBER, "SDL_image.animation_encoder.create.quality"
20
+ const_set :IMG_PROP_ANIMATION_ENCODER_CREATE_TIMEBASE_NUMERATOR_NUMBER, "SDL_image.animation_encoder.create.timebase.numerator"
21
+ const_set :IMG_PROP_ANIMATION_ENCODER_CREATE_TIMEBASE_DENOMINATOR_NUMBER, "SDL_image.animation_encoder.create.timebase.denominator"
22
+ const_set :IMG_PROP_ANIMATION_ENCODER_CREATE_AVIF_MAX_THREADS_NUMBER, "SDL_image.animation_encoder.create.avif.max_threads"
23
+ const_set :IMG_PROP_ANIMATION_ENCODER_CREATE_AVIF_KEYFRAME_INTERVAL_NUMBER, "SDL_image.animation_encoder.create.avif.keyframe_interval"
24
+ const_set :IMG_PROP_ANIMATION_ENCODER_CREATE_GIF_USE_LUT_BOOLEAN, "SDL_image.animation_encoder.create.gif.use_lut"
25
+ const_set :IMG_PROP_ANIMATION_DECODER_CREATE_FILENAME_STRING, "SDL_image.animation_decoder.create.filename"
26
+ const_set :IMG_PROP_ANIMATION_DECODER_CREATE_IOSTREAM_POINTER, "SDL_image.animation_decoder.create.iostream"
27
+ const_set :IMG_PROP_ANIMATION_DECODER_CREATE_IOSTREAM_AUTOCLOSE_BOOLEAN, "SDL_image.animation_decoder.create.iostream.autoclose"
28
+ const_set :IMG_PROP_ANIMATION_DECODER_CREATE_TYPE_STRING, "SDL_image.animation_decoder.create.type"
29
+ const_set :IMG_PROP_ANIMATION_DECODER_CREATE_TIMEBASE_NUMERATOR_NUMBER, "SDL_image.animation_decoder.create.timebase.numerator"
30
+ const_set :IMG_PROP_ANIMATION_DECODER_CREATE_TIMEBASE_DENOMINATOR_NUMBER, "SDL_image.animation_decoder.create.timebase.denominator"
31
+ const_set :IMG_PROP_ANIMATION_DECODER_CREATE_AVIF_MAX_THREADS_NUMBER, "SDL_image.animation_decoder.create.avif.max_threads"
32
+ const_set :IMG_PROP_ANIMATION_DECODER_CREATE_AVIF_ALLOW_INCREMENTAL_BOOLEAN, "SDL_image.animation_decoder.create.avif.allow_incremental"
33
+ const_set :IMG_PROP_ANIMATION_DECODER_CREATE_AVIF_ALLOW_PROGRESSIVE_BOOLEAN, "SDL_image.animation_decoder.create.avif.allow_progressive"
34
+ const_set :IMG_PROP_ANIMATION_DECODER_CREATE_GIF_TRANSPARENT_COLOR_INDEX_NUMBER, "SDL_image.animation_encoder.create.gif.transparent_color_index"
35
+ const_set :IMG_PROP_ANIMATION_DECODER_CREATE_GIF_NUM_COLORS_NUMBER, "SDL_image.animation_encoder.create.gif.num_colors"
36
+ const_set :IMG_PROP_METADATA_IGNORE_PROPS_BOOLEAN, "SDL_image.metadata.ignore_props"
37
+ const_set :IMG_PROP_METADATA_DESCRIPTION_STRING, "SDL_image.metadata.description"
38
+ const_set :IMG_PROP_METADATA_COPYRIGHT_STRING, "SDL_image.metadata.copyright"
39
+ const_set :IMG_PROP_METADATA_TITLE_STRING, "SDL_image.metadata.title"
40
+ const_set :IMG_PROP_METADATA_AUTHOR_STRING, "SDL_image.metadata.author"
41
+ const_set :IMG_PROP_METADATA_CREATION_TIME_STRING, "SDL_image.metadata.creation_time"
42
+ const_set :IMG_PROP_METADATA_FRAME_COUNT_NUMBER, "SDL_image.metadata.frame_count"
43
+ const_set :IMG_PROP_METADATA_LOOP_COUNT_NUMBER, "SDL_image.metadata.loop_count"
15
44
 
16
45
  # Fiddle declarations for SDL_image functions, structs, and enums
17
46
  #
@@ -0,0 +1,168 @@
1
+ # frozen_string_literal: true
2
+ require_relative "../rbsdl3"
3
+ require_relative "sdl"
4
+
5
+ module SDL3
6
+ using BindingsRefinement
7
+ SDL_mixer = proc {
8
+ # Ruby wrappers for SDL_mixer macros
9
+ #
10
+ const_set :SDL_MIXER_MAJOR_VERSION, 3
11
+ const_set :SDL_MIXER_MINOR_VERSION, 2
12
+ const_set :SDL_MIXER_MICRO_VERSION, 0
13
+ const_set :SDL_MIXER_VERSION, SDL_VERSIONNUM(SDL_MIXER_MAJOR_VERSION, SDL_MIXER_MINOR_VERSION, SDL_MIXER_MICRO_VERSION)
14
+ module_function def SDL_MIXER_VERSION_ATLEAST(x, y, z) = ((SDL_MIXER_MAJOR_VERSION >= x) && (SDL_MIXER_MAJOR_VERSION > x || SDL_MIXER_MINOR_VERSION >= y) && (SDL_MIXER_MAJOR_VERSION > x || SDL_MIXER_MINOR_VERSION > y || SDL_MIXER_MICRO_VERSION >= z))
15
+ const_set :MIX_PROP_MIXER_DEVICE_NUMBER, "SDL_mixer.mixer.device"
16
+ const_set :MIX_PROP_AUDIO_LOAD_IOSTREAM_POINTER, "SDL_mixer.audio.load.iostream"
17
+ const_set :MIX_PROP_AUDIO_LOAD_CLOSEIO_BOOLEAN, "SDL_mixer.audio.load.closeio"
18
+ const_set :MIX_PROP_AUDIO_LOAD_PREDECODE_BOOLEAN, "SDL_mixer.audio.load.predecode"
19
+ const_set :MIX_PROP_AUDIO_LOAD_PREFERRED_MIXER_POINTER, "SDL_mixer.audio.load.preferred_mixer"
20
+ const_set :MIX_PROP_AUDIO_LOAD_SKIP_METADATA_TAGS_BOOLEAN, "SDL_mixer.audio.load.skip_metadata_tags"
21
+ const_set :MIX_PROP_AUDIO_DECODER_STRING, "SDL_mixer.audio.decoder"
22
+ const_set :MIX_PROP_METADATA_TITLE_STRING, "SDL_mixer.metadata.title"
23
+ const_set :MIX_PROP_METADATA_ARTIST_STRING, "SDL_mixer.metadata.artist"
24
+ const_set :MIX_PROP_METADATA_ALBUM_STRING, "SDL_mixer.metadata.album"
25
+ const_set :MIX_PROP_METADATA_COPYRIGHT_STRING, "SDL_mixer.metadata.copyright"
26
+ const_set :MIX_PROP_METADATA_TRACK_NUMBER, "SDL_mixer.metadata.track"
27
+ const_set :MIX_PROP_METADATA_TOTAL_TRACKS_NUMBER, "SDL_mixer.metadata.total_tracks"
28
+ const_set :MIX_PROP_METADATA_YEAR_NUMBER, "SDL_mixer.metadata.year"
29
+ const_set :MIX_PROP_METADATA_DURATION_FRAMES_NUMBER, "SDL_mixer.metadata.duration_frames"
30
+ const_set :MIX_PROP_METADATA_DURATION_INFINITE_BOOLEAN, "SDL_mixer.metadata.duration_infinite"
31
+ const_set :MIX_DURATION_UNKNOWN, -1
32
+ const_set :MIX_DURATION_INFINITE, -2
33
+ const_set :MIX_PROP_PLAY_LOOPS_NUMBER, "SDL_mixer.play.loops"
34
+ const_set :MIX_PROP_PLAY_MAX_FRAME_NUMBER, "SDL_mixer.play.max_frame"
35
+ const_set :MIX_PROP_PLAY_MAX_MILLISECONDS_NUMBER, "SDL_mixer.play.max_milliseconds"
36
+ const_set :MIX_PROP_PLAY_START_FRAME_NUMBER, "SDL_mixer.play.start_frame"
37
+ const_set :MIX_PROP_PLAY_START_MILLISECOND_NUMBER, "SDL_mixer.play.start_millisecond"
38
+ const_set :MIX_PROP_PLAY_LOOP_START_FRAME_NUMBER, "SDL_mixer.play.loop_start_frame"
39
+ const_set :MIX_PROP_PLAY_LOOP_START_MILLISECOND_NUMBER, "SDL_mixer.play.loop_start_millisecond"
40
+ const_set :MIX_PROP_PLAY_FADE_IN_FRAMES_NUMBER, "SDL_mixer.play.fade_in_frames"
41
+ const_set :MIX_PROP_PLAY_FADE_IN_MILLISECONDS_NUMBER, "SDL_mixer.play.fade_in_milliseconds"
42
+ const_set :MIX_PROP_PLAY_FADE_IN_START_GAIN_FLOAT, "SDL_mixer.play.fade_in_start_gain"
43
+ const_set :MIX_PROP_PLAY_APPEND_SILENCE_FRAMES_NUMBER, "SDL_mixer.play.append_silence_frames"
44
+ const_set :MIX_PROP_PLAY_APPEND_SILENCE_MILLISECONDS_NUMBER, "SDL_mixer.play.append_silence_milliseconds"
45
+ const_set :MIX_PROP_PLAY_HALT_WHEN_EXHAUSTED_BOOLEAN, "SDL_mixer.play.halt_when_exhausted"
46
+
47
+ # Fiddle declarations for SDL_mixer functions, structs, and enums
48
+ #
49
+ extern "int MIX_Version(void)"
50
+ extern "bool MIX_Init(void)"
51
+ extern "void MIX_Quit(void)"
52
+ extern "int MIX_GetNumAudioDecoders(void)"
53
+ extern "char * MIX_GetAudioDecoder(int)"
54
+ extern "MIX_Mixer * MIX_CreateMixerDevice(SDL_AudioDeviceID, SDL_AudioSpec *)"
55
+ extern "MIX_Mixer * MIX_CreateMixer(SDL_AudioSpec *)"
56
+ extern "void MIX_DestroyMixer(MIX_Mixer *)"
57
+ extern "SDL_PropertiesID MIX_GetMixerProperties(MIX_Mixer *)"
58
+ extern "bool MIX_GetMixerFormat(MIX_Mixer *, SDL_AudioSpec *)"
59
+ extern "void MIX_LockMixer(MIX_Mixer *)"
60
+ extern "void MIX_UnlockMixer(MIX_Mixer *)"
61
+ extern "MIX_Audio * MIX_LoadAudio_IO(MIX_Mixer *, SDL_IOStream *, bool, bool)"
62
+ extern "MIX_Audio * MIX_LoadAudio(MIX_Mixer *, char *, bool)"
63
+ extern "MIX_Audio * MIX_LoadAudioNoCopy(MIX_Mixer *, void *, size_t, bool)"
64
+ extern "MIX_Audio * MIX_LoadAudioWithProperties(SDL_PropertiesID)"
65
+ extern "MIX_Audio * MIX_LoadRawAudio_IO(MIX_Mixer *, SDL_IOStream *, SDL_AudioSpec *, bool)"
66
+ extern "MIX_Audio * MIX_LoadRawAudio(MIX_Mixer *, void *, size_t, SDL_AudioSpec *)"
67
+ extern "MIX_Audio * MIX_LoadRawAudioNoCopy(MIX_Mixer *, void *, size_t, SDL_AudioSpec *, bool)"
68
+ extern "MIX_Audio * MIX_CreateSineWaveAudio(MIX_Mixer *, int, float, Sint64)"
69
+ extern "SDL_PropertiesID MIX_GetAudioProperties(MIX_Audio *)"
70
+ extern "Sint64 MIX_GetAudioDuration(MIX_Audio *)"
71
+ extern "bool MIX_GetAudioFormat(MIX_Audio *, SDL_AudioSpec *)"
72
+ extern "void MIX_DestroyAudio(MIX_Audio *)"
73
+ extern "MIX_Track * MIX_CreateTrack(MIX_Mixer *)"
74
+ extern "void MIX_DestroyTrack(MIX_Track *)"
75
+ extern "SDL_PropertiesID MIX_GetTrackProperties(MIX_Track *)"
76
+ extern "MIX_Mixer * MIX_GetTrackMixer(MIX_Track *)"
77
+ extern "bool MIX_SetTrackAudio(MIX_Track *, MIX_Audio *)"
78
+ extern "bool MIX_SetTrackAudioStream(MIX_Track *, SDL_AudioStream *)"
79
+ extern "bool MIX_SetTrackIOStream(MIX_Track *, SDL_IOStream *, bool)"
80
+ extern "bool MIX_SetTrackRawIOStream(MIX_Track *, SDL_IOStream *, SDL_AudioSpec *, bool)"
81
+ extern "bool MIX_TagTrack(MIX_Track *, char *)"
82
+ extern "void MIX_UntagTrack(MIX_Track *, char *)"
83
+ extern "char ** MIX_GetTrackTags(MIX_Track *, int *)"
84
+ extern "MIX_Track ** MIX_GetTaggedTracks(MIX_Mixer *, char *, int *)"
85
+ extern "bool MIX_SetTrackPlaybackPosition(MIX_Track *, Sint64)"
86
+ extern "Sint64 MIX_GetTrackPlaybackPosition(MIX_Track *)"
87
+ extern "Sint64 MIX_GetTrackFadeFrames(MIX_Track *)"
88
+ extern "int MIX_GetTrackLoops(MIX_Track *)"
89
+ extern "bool MIX_SetTrackLoops(MIX_Track *, int)"
90
+ extern "MIX_Audio * MIX_GetTrackAudio(MIX_Track *)"
91
+ extern "SDL_AudioStream * MIX_GetTrackAudioStream(MIX_Track *)"
92
+ extern "Sint64 MIX_GetTrackRemaining(MIX_Track *)"
93
+ extern "Sint64 MIX_TrackMSToFrames(MIX_Track *, Sint64)"
94
+ extern "Sint64 MIX_TrackFramesToMS(MIX_Track *, Sint64)"
95
+ extern "Sint64 MIX_AudioMSToFrames(MIX_Audio *, Sint64)"
96
+ extern "Sint64 MIX_AudioFramesToMS(MIX_Audio *, Sint64)"
97
+ extern "Sint64 MIX_MSToFrames(int, Sint64)"
98
+ extern "Sint64 MIX_FramesToMS(int, Sint64)"
99
+ extern "bool MIX_PlayTrack(MIX_Track *, SDL_PropertiesID)"
100
+ extern "bool MIX_PlayTag(MIX_Mixer *, char *, SDL_PropertiesID)"
101
+ extern "bool MIX_PlayAudio(MIX_Mixer *, MIX_Audio *)"
102
+ extern "bool MIX_StopTrack(MIX_Track *, Sint64)"
103
+ extern "bool MIX_StopAllTracks(MIX_Mixer *, Sint64)"
104
+ extern "bool MIX_StopTag(MIX_Mixer *, char *, Sint64)"
105
+ extern "bool MIX_PauseTrack(MIX_Track *)"
106
+ extern "bool MIX_PauseAllTracks(MIX_Mixer *)"
107
+ extern "bool MIX_PauseTag(MIX_Mixer *, char *)"
108
+ extern "bool MIX_ResumeTrack(MIX_Track *)"
109
+ extern "bool MIX_ResumeAllTracks(MIX_Mixer *)"
110
+ extern "bool MIX_ResumeTag(MIX_Mixer *, char *)"
111
+ extern "bool MIX_TrackPlaying(MIX_Track *)"
112
+ extern "bool MIX_TrackPaused(MIX_Track *)"
113
+ extern "bool MIX_SetMixerGain(MIX_Mixer *, float)"
114
+ extern "float MIX_GetMixerGain(MIX_Mixer *)"
115
+ extern "bool MIX_SetTrackGain(MIX_Track *, float)"
116
+ extern "float MIX_GetTrackGain(MIX_Track *)"
117
+ extern "bool MIX_SetTagGain(MIX_Mixer *, char *, float)"
118
+ extern "bool MIX_SetMixerFrequencyRatio(MIX_Mixer *, float)"
119
+ extern "float MIX_GetMixerFrequencyRatio(MIX_Mixer *)"
120
+ extern "bool MIX_SetTrackFrequencyRatio(MIX_Track *, float)"
121
+ extern "float MIX_GetTrackFrequencyRatio(MIX_Track *)"
122
+ extern "bool MIX_SetTrackOutputChannelMap(MIX_Track *, int *, int)"
123
+ const_set :MIX_StereoGains, struct(
124
+ [
125
+ "float left",
126
+ "float right",
127
+ ]
128
+ )
129
+ extern "bool MIX_SetTrackStereo(MIX_Track *, MIX_StereoGains *)"
130
+ const_set :MIX_Point3D, struct(
131
+ [
132
+ "float x",
133
+ "float y",
134
+ "float z",
135
+ ]
136
+ )
137
+ extern "bool MIX_SetTrack3DPosition(MIX_Track *, MIX_Point3D *)"
138
+ extern "bool MIX_GetTrack3DPosition(MIX_Track *, MIX_Point3D *)"
139
+ extern "MIX_Group * MIX_CreateGroup(MIX_Mixer *)"
140
+ extern "void MIX_DestroyGroup(MIX_Group *)"
141
+ extern "SDL_PropertiesID MIX_GetGroupProperties(MIX_Group *)"
142
+ extern "MIX_Mixer * MIX_GetGroupMixer(MIX_Group *)"
143
+ extern "bool MIX_SetTrackGroup(MIX_Track *, MIX_Group *)"
144
+ typealias "MIX_TrackStoppedCallback", "function (*pointer)()"
145
+ const_set :MIX_TrackStoppedCallback, "void MIX_TrackStoppedCallback(void *, MIX_Track *)"
146
+ extern "bool MIX_SetTrackStoppedCallback(MIX_Track *, MIX_TrackStoppedCallback, void *)"
147
+ typealias "MIX_TrackMixCallback", "function (*pointer)()"
148
+ const_set :MIX_TrackMixCallback, "void MIX_TrackMixCallback(void *, MIX_Track *, SDL_AudioSpec *, float *, int)"
149
+ extern "bool MIX_SetTrackRawCallback(MIX_Track *, MIX_TrackMixCallback, void *)"
150
+ extern "bool MIX_SetTrackCookedCallback(MIX_Track *, MIX_TrackMixCallback, void *)"
151
+ typealias "MIX_GroupMixCallback", "function (*pointer)()"
152
+ const_set :MIX_GroupMixCallback, "void MIX_GroupMixCallback(void *, MIX_Group *, SDL_AudioSpec *, float *, int)"
153
+ extern "bool MIX_SetGroupPostMixCallback(MIX_Group *, MIX_GroupMixCallback, void *)"
154
+ typealias "MIX_PostMixCallback", "function (*pointer)()"
155
+ const_set :MIX_PostMixCallback, "void MIX_PostMixCallback(void *, MIX_Mixer *, SDL_AudioSpec *, float *, int)"
156
+ extern "bool MIX_SetPostMixCallback(MIX_Mixer *, MIX_PostMixCallback, void *)"
157
+ extern "int MIX_Generate(MIX_Mixer *, void *, int)"
158
+ extern "MIX_AudioDecoder * MIX_CreateAudioDecoder(char *, SDL_PropertiesID)"
159
+ extern "MIX_AudioDecoder * MIX_CreateAudioDecoder_IO(SDL_IOStream *, bool, SDL_PropertiesID)"
160
+ extern "void MIX_DestroyAudioDecoder(MIX_AudioDecoder *)"
161
+ extern "SDL_PropertiesID MIX_GetAudioDecoderProperties(MIX_AudioDecoder *)"
162
+ extern "bool MIX_GetAudioDecoderFormat(MIX_AudioDecoder *, SDL_AudioSpec *)"
163
+ extern "int MIX_DecodeAudio(MIX_AudioDecoder *, void *, int, SDL_AudioSpec *)"
164
+ }
165
+ private_constant :SDL_mixer
166
+
167
+ SDL_mixer.call
168
+ end
data/lib/rbsdl3/sdl.rb CHANGED
@@ -187,8 +187,11 @@ module SDL3
187
187
  const_set :SDL_PROP_GPU_DEVICE_CREATE_SHADERS_METALLIB_BOOLEAN, "SDL.gpu.device.create.shaders.metallib"
188
188
  const_set :SDL_PROP_GPU_DEVICE_CREATE_D3D12_ALLOW_FEWER_RESOURCE_SLOTS_BOOLEAN, "SDL.gpu.device.create.d3d12.allowtier1resourcebinding"
189
189
  const_set :SDL_PROP_GPU_DEVICE_CREATE_D3D12_SEMANTIC_NAME_STRING, "SDL.gpu.device.create.d3d12.semantic"
190
+ const_set :SDL_PROP_GPU_DEVICE_CREATE_D3D12_AGILITY_SDK_VERSION_NUMBER, "SDL.gpu.device.create.d3d12.agility_sdk_version"
191
+ const_set :SDL_PROP_GPU_DEVICE_CREATE_D3D12_AGILITY_SDK_PATH_STRING, "SDL.gpu.device.create.d3d12.agility_sdk_path"
190
192
  const_set :SDL_PROP_GPU_DEVICE_CREATE_VULKAN_REQUIRE_HARDWARE_ACCELERATION_BOOLEAN, "SDL.gpu.device.create.vulkan.requirehardwareacceleration"
191
193
  const_set :SDL_PROP_GPU_DEVICE_CREATE_VULKAN_OPTIONS_POINTER, "SDL.gpu.device.create.vulkan.options"
194
+ const_set :SDL_PROP_GPU_DEVICE_CREATE_METAL_ALLOW_MACFAMILY1_BOOLEAN, "SDL.gpu.device.create.metal.allowmacfamily1"
192
195
  const_set :SDL_PROP_GPU_DEVICE_NAME_STRING, "SDL.gpu.device.name"
193
196
  const_set :SDL_PROP_GPU_DEVICE_DRIVER_NAME_STRING, "SDL.gpu.device.driver_name"
194
197
  const_set :SDL_PROP_GPU_DEVICE_DRIVER_VERSION_STRING, "SDL.gpu.device.driver_version"
@@ -395,6 +398,7 @@ module SDL3
395
398
  const_set :SDL_HINT_OPENGL_LIBRARY, "SDL_OPENGL_LIBRARY"
396
399
  const_set :SDL_HINT_EGL_LIBRARY, "SDL_EGL_LIBRARY"
397
400
  const_set :SDL_HINT_OPENGL_ES_DRIVER, "SDL_OPENGL_ES_DRIVER"
401
+ const_set :SDL_HINT_OPENGL_FORCE_SRGB_FRAMEBUFFER, "SDL_OPENGL_FORCE_SRGB_FRAMEBUFFER"
398
402
  const_set :SDL_HINT_OPENVR_LIBRARY, "SDL_OPENVR_LIBRARY"
399
403
  const_set :SDL_HINT_ORIENTATIONS, "SDL_ORIENTATIONS"
400
404
  const_set :SDL_HINT_POLL_SENTINEL, "SDL_POLL_SENTINEL"
@@ -541,7 +545,265 @@ module SDL3
541
545
  const_set :SDL_PROP_TEXTINPUT_AUTOCORRECT_BOOLEAN, "SDL.textinput.autocorrect"
542
546
  const_set :SDL_PROP_TEXTINPUT_MULTILINE_BOOLEAN, "SDL.textinput.multiline"
543
547
  const_set :SDL_PROP_TEXTINPUT_ANDROID_INPUTTYPE_NUMBER, "SDL.textinput.android.inputtype"
548
+ const_set :SDLK_EXTENDED_MASK, (1 << 29)
549
+ const_set :SDLK_SCANCODE_MASK, (1 << 30)
544
550
  module_function def SDL_SCANCODE_TO_KEYCODE(x) = (x | SDLK_SCANCODE_MASK)
551
+ const_set :SDLK_UNKNOWN, 0x00000000
552
+ const_set :SDLK_RETURN, 0x0000000d
553
+ const_set :SDLK_ESCAPE, 0x0000001b
554
+ const_set :SDLK_BACKSPACE, 0x00000008
555
+ const_set :SDLK_TAB, 0x00000009
556
+ const_set :SDLK_SPACE, 0x00000020
557
+ const_set :SDLK_EXCLAIM, 0x00000021
558
+ const_set :SDLK_DBLAPOSTROPHE, 0x00000022
559
+ const_set :SDLK_HASH, 0x00000023
560
+ const_set :SDLK_DOLLAR, 0x00000024
561
+ const_set :SDLK_PERCENT, 0x00000025
562
+ const_set :SDLK_AMPERSAND, 0x00000026
563
+ const_set :SDLK_APOSTROPHE, 0x00000027
564
+ const_set :SDLK_LEFTPAREN, 0x00000028
565
+ const_set :SDLK_RIGHTPAREN, 0x00000029
566
+ const_set :SDLK_ASTERISK, 0x0000002a
567
+ const_set :SDLK_PLUS, 0x0000002b
568
+ const_set :SDLK_COMMA, 0x0000002c
569
+ const_set :SDLK_MINUS, 0x0000002d
570
+ const_set :SDLK_PERIOD, 0x0000002e
571
+ const_set :SDLK_SLASH, 0x0000002f
572
+ const_set :SDLK_0, 0x00000030
573
+ const_set :SDLK_1, 0x00000031
574
+ const_set :SDLK_2, 0x00000032
575
+ const_set :SDLK_3, 0x00000033
576
+ const_set :SDLK_4, 0x00000034
577
+ const_set :SDLK_5, 0x00000035
578
+ const_set :SDLK_6, 0x00000036
579
+ const_set :SDLK_7, 0x00000037
580
+ const_set :SDLK_8, 0x00000038
581
+ const_set :SDLK_9, 0x00000039
582
+ const_set :SDLK_COLON, 0x0000003a
583
+ const_set :SDLK_SEMICOLON, 0x0000003b
584
+ const_set :SDLK_LESS, 0x0000003c
585
+ const_set :SDLK_EQUALS, 0x0000003d
586
+ const_set :SDLK_GREATER, 0x0000003e
587
+ const_set :SDLK_QUESTION, 0x0000003f
588
+ const_set :SDLK_AT, 0x00000040
589
+ const_set :SDLK_LEFTBRACKET, 0x0000005b
590
+ const_set :SDLK_BACKSLASH, 0x0000005c
591
+ const_set :SDLK_RIGHTBRACKET, 0x0000005d
592
+ const_set :SDLK_CARET, 0x0000005e
593
+ const_set :SDLK_UNDERSCORE, 0x0000005f
594
+ const_set :SDLK_GRAVE, 0x00000060
595
+ const_set :SDLK_A, 0x00000061
596
+ const_set :SDLK_B, 0x00000062
597
+ const_set :SDLK_C, 0x00000063
598
+ const_set :SDLK_D, 0x00000064
599
+ const_set :SDLK_E, 0x00000065
600
+ const_set :SDLK_F, 0x00000066
601
+ const_set :SDLK_G, 0x00000067
602
+ const_set :SDLK_H, 0x00000068
603
+ const_set :SDLK_I, 0x00000069
604
+ const_set :SDLK_J, 0x0000006a
605
+ const_set :SDLK_K, 0x0000006b
606
+ const_set :SDLK_L, 0x0000006c
607
+ const_set :SDLK_M, 0x0000006d
608
+ const_set :SDLK_N, 0x0000006e
609
+ const_set :SDLK_O, 0x0000006f
610
+ const_set :SDLK_P, 0x00000070
611
+ const_set :SDLK_Q, 0x00000071
612
+ const_set :SDLK_R, 0x00000072
613
+ const_set :SDLK_S, 0x00000073
614
+ const_set :SDLK_T, 0x00000074
615
+ const_set :SDLK_U, 0x00000075
616
+ const_set :SDLK_V, 0x00000076
617
+ const_set :SDLK_W, 0x00000077
618
+ const_set :SDLK_X, 0x00000078
619
+ const_set :SDLK_Y, 0x00000079
620
+ const_set :SDLK_Z, 0x0000007a
621
+ const_set :SDLK_LEFTBRACE, 0x0000007b
622
+ const_set :SDLK_PIPE, 0x0000007c
623
+ const_set :SDLK_RIGHTBRACE, 0x0000007d
624
+ const_set :SDLK_TILDE, 0x0000007e
625
+ const_set :SDLK_DELETE, 0x0000007f
626
+ const_set :SDLK_PLUSMINUS, 0x000000b1
627
+ const_set :SDLK_CAPSLOCK, 0x40000039
628
+ const_set :SDLK_F1, 0x4000003a
629
+ const_set :SDLK_F2, 0x4000003b
630
+ const_set :SDLK_F3, 0x4000003c
631
+ const_set :SDLK_F4, 0x4000003d
632
+ const_set :SDLK_F5, 0x4000003e
633
+ const_set :SDLK_F6, 0x4000003f
634
+ const_set :SDLK_F7, 0x40000040
635
+ const_set :SDLK_F8, 0x40000041
636
+ const_set :SDLK_F9, 0x40000042
637
+ const_set :SDLK_F10, 0x40000043
638
+ const_set :SDLK_F11, 0x40000044
639
+ const_set :SDLK_F12, 0x40000045
640
+ const_set :SDLK_PRINTSCREEN, 0x40000046
641
+ const_set :SDLK_SCROLLLOCK, 0x40000047
642
+ const_set :SDLK_PAUSE, 0x40000048
643
+ const_set :SDLK_INSERT, 0x40000049
644
+ const_set :SDLK_HOME, 0x4000004a
645
+ const_set :SDLK_PAGEUP, 0x4000004b
646
+ const_set :SDLK_END, 0x4000004d
647
+ const_set :SDLK_PAGEDOWN, 0x4000004e
648
+ const_set :SDLK_RIGHT, 0x4000004f
649
+ const_set :SDLK_LEFT, 0x40000050
650
+ const_set :SDLK_DOWN, 0x40000051
651
+ const_set :SDLK_UP, 0x40000052
652
+ const_set :SDLK_NUMLOCKCLEAR, 0x40000053
653
+ const_set :SDLK_KP_DIVIDE, 0x40000054
654
+ const_set :SDLK_KP_MULTIPLY, 0x40000055
655
+ const_set :SDLK_KP_MINUS, 0x40000056
656
+ const_set :SDLK_KP_PLUS, 0x40000057
657
+ const_set :SDLK_KP_ENTER, 0x40000058
658
+ const_set :SDLK_KP_1, 0x40000059
659
+ const_set :SDLK_KP_2, 0x4000005a
660
+ const_set :SDLK_KP_3, 0x4000005b
661
+ const_set :SDLK_KP_4, 0x4000005c
662
+ const_set :SDLK_KP_5, 0x4000005d
663
+ const_set :SDLK_KP_6, 0x4000005e
664
+ const_set :SDLK_KP_7, 0x4000005f
665
+ const_set :SDLK_KP_8, 0x40000060
666
+ const_set :SDLK_KP_9, 0x40000061
667
+ const_set :SDLK_KP_0, 0x40000062
668
+ const_set :SDLK_KP_PERIOD, 0x40000063
669
+ const_set :SDLK_APPLICATION, 0x40000065
670
+ const_set :SDLK_POWER, 0x40000066
671
+ const_set :SDLK_KP_EQUALS, 0x40000067
672
+ const_set :SDLK_F13, 0x40000068
673
+ const_set :SDLK_F14, 0x40000069
674
+ const_set :SDLK_F15, 0x4000006a
675
+ const_set :SDLK_F16, 0x4000006b
676
+ const_set :SDLK_F17, 0x4000006c
677
+ const_set :SDLK_F18, 0x4000006d
678
+ const_set :SDLK_F19, 0x4000006e
679
+ const_set :SDLK_F20, 0x4000006f
680
+ const_set :SDLK_F21, 0x40000070
681
+ const_set :SDLK_F22, 0x40000071
682
+ const_set :SDLK_F23, 0x40000072
683
+ const_set :SDLK_F24, 0x40000073
684
+ const_set :SDLK_EXECUTE, 0x40000074
685
+ const_set :SDLK_HELP, 0x40000075
686
+ const_set :SDLK_MENU, 0x40000076
687
+ const_set :SDLK_SELECT, 0x40000077
688
+ const_set :SDLK_STOP, 0x40000078
689
+ const_set :SDLK_AGAIN, 0x40000079
690
+ const_set :SDLK_UNDO, 0x4000007a
691
+ const_set :SDLK_CUT, 0x4000007b
692
+ const_set :SDLK_COPY, 0x4000007c
693
+ const_set :SDLK_PASTE, 0x4000007d
694
+ const_set :SDLK_FIND, 0x4000007e
695
+ const_set :SDLK_MUTE, 0x4000007f
696
+ const_set :SDLK_VOLUMEUP, 0x40000080
697
+ const_set :SDLK_VOLUMEDOWN, 0x40000081
698
+ const_set :SDLK_KP_COMMA, 0x40000085
699
+ const_set :SDLK_KP_EQUALSAS400, 0x40000086
700
+ const_set :SDLK_ALTERASE, 0x40000099
701
+ const_set :SDLK_SYSREQ, 0x4000009a
702
+ const_set :SDLK_CANCEL, 0x4000009b
703
+ const_set :SDLK_CLEAR, 0x4000009c
704
+ const_set :SDLK_PRIOR, 0x4000009d
705
+ const_set :SDLK_RETURN2, 0x4000009e
706
+ const_set :SDLK_SEPARATOR, 0x4000009f
707
+ const_set :SDLK_OUT, 0x400000a0
708
+ const_set :SDLK_OPER, 0x400000a1
709
+ const_set :SDLK_CLEARAGAIN, 0x400000a2
710
+ const_set :SDLK_CRSEL, 0x400000a3
711
+ const_set :SDLK_EXSEL, 0x400000a4
712
+ const_set :SDLK_KP_00, 0x400000b0
713
+ const_set :SDLK_KP_000, 0x400000b1
714
+ const_set :SDLK_THOUSANDSSEPARATOR, 0x400000b2
715
+ const_set :SDLK_DECIMALSEPARATOR, 0x400000b3
716
+ const_set :SDLK_CURRENCYUNIT, 0x400000b4
717
+ const_set :SDLK_CURRENCYSUBUNIT, 0x400000b5
718
+ const_set :SDLK_KP_LEFTPAREN, 0x400000b6
719
+ const_set :SDLK_KP_RIGHTPAREN, 0x400000b7
720
+ const_set :SDLK_KP_LEFTBRACE, 0x400000b8
721
+ const_set :SDLK_KP_RIGHTBRACE, 0x400000b9
722
+ const_set :SDLK_KP_TAB, 0x400000ba
723
+ const_set :SDLK_KP_BACKSPACE, 0x400000bb
724
+ const_set :SDLK_KP_A, 0x400000bc
725
+ const_set :SDLK_KP_B, 0x400000bd
726
+ const_set :SDLK_KP_C, 0x400000be
727
+ const_set :SDLK_KP_D, 0x400000bf
728
+ const_set :SDLK_KP_E, 0x400000c0
729
+ const_set :SDLK_KP_F, 0x400000c1
730
+ const_set :SDLK_KP_XOR, 0x400000c2
731
+ const_set :SDLK_KP_POWER, 0x400000c3
732
+ const_set :SDLK_KP_PERCENT, 0x400000c4
733
+ const_set :SDLK_KP_LESS, 0x400000c5
734
+ const_set :SDLK_KP_GREATER, 0x400000c6
735
+ const_set :SDLK_KP_AMPERSAND, 0x400000c7
736
+ const_set :SDLK_KP_DBLAMPERSAND, 0x400000c8
737
+ const_set :SDLK_KP_VERTICALBAR, 0x400000c9
738
+ const_set :SDLK_KP_DBLVERTICALBAR, 0x400000ca
739
+ const_set :SDLK_KP_COLON, 0x400000cb
740
+ const_set :SDLK_KP_HASH, 0x400000cc
741
+ const_set :SDLK_KP_SPACE, 0x400000cd
742
+ const_set :SDLK_KP_AT, 0x400000ce
743
+ const_set :SDLK_KP_EXCLAM, 0x400000cf
744
+ const_set :SDLK_KP_MEMSTORE, 0x400000d0
745
+ const_set :SDLK_KP_MEMRECALL, 0x400000d1
746
+ const_set :SDLK_KP_MEMCLEAR, 0x400000d2
747
+ const_set :SDLK_KP_MEMADD, 0x400000d3
748
+ const_set :SDLK_KP_MEMSUBTRACT, 0x400000d4
749
+ const_set :SDLK_KP_MEMMULTIPLY, 0x400000d5
750
+ const_set :SDLK_KP_MEMDIVIDE, 0x400000d6
751
+ const_set :SDLK_KP_PLUSMINUS, 0x400000d7
752
+ const_set :SDLK_KP_CLEAR, 0x400000d8
753
+ const_set :SDLK_KP_CLEARENTRY, 0x400000d9
754
+ const_set :SDLK_KP_BINARY, 0x400000da
755
+ const_set :SDLK_KP_OCTAL, 0x400000db
756
+ const_set :SDLK_KP_DECIMAL, 0x400000dc
757
+ const_set :SDLK_KP_HEXADECIMAL, 0x400000dd
758
+ const_set :SDLK_LCTRL, 0x400000e0
759
+ const_set :SDLK_LSHIFT, 0x400000e1
760
+ const_set :SDLK_LALT, 0x400000e2
761
+ const_set :SDLK_LGUI, 0x400000e3
762
+ const_set :SDLK_RCTRL, 0x400000e4
763
+ const_set :SDLK_RSHIFT, 0x400000e5
764
+ const_set :SDLK_RALT, 0x400000e6
765
+ const_set :SDLK_RGUI, 0x400000e7
766
+ const_set :SDLK_MODE, 0x40000101
767
+ const_set :SDLK_SLEEP, 0x40000102
768
+ const_set :SDLK_WAKE, 0x40000103
769
+ const_set :SDLK_CHANNEL_INCREMENT, 0x40000104
770
+ const_set :SDLK_CHANNEL_DECREMENT, 0x40000105
771
+ const_set :SDLK_MEDIA_PLAY, 0x40000106
772
+ const_set :SDLK_MEDIA_PAUSE, 0x40000107
773
+ const_set :SDLK_MEDIA_RECORD, 0x40000108
774
+ const_set :SDLK_MEDIA_FAST_FORWARD, 0x40000109
775
+ const_set :SDLK_MEDIA_REWIND, 0x4000010a
776
+ const_set :SDLK_MEDIA_NEXT_TRACK, 0x4000010b
777
+ const_set :SDLK_MEDIA_PREVIOUS_TRACK, 0x4000010c
778
+ const_set :SDLK_MEDIA_STOP, 0x4000010d
779
+ const_set :SDLK_MEDIA_EJECT, 0x4000010e
780
+ const_set :SDLK_MEDIA_PLAY_PAUSE, 0x4000010f
781
+ const_set :SDLK_MEDIA_SELECT, 0x40000110
782
+ const_set :SDLK_AC_NEW, 0x40000111
783
+ const_set :SDLK_AC_OPEN, 0x40000112
784
+ const_set :SDLK_AC_CLOSE, 0x40000113
785
+ const_set :SDLK_AC_EXIT, 0x40000114
786
+ const_set :SDLK_AC_SAVE, 0x40000115
787
+ const_set :SDLK_AC_PRINT, 0x40000116
788
+ const_set :SDLK_AC_PROPERTIES, 0x40000117
789
+ const_set :SDLK_AC_SEARCH, 0x40000118
790
+ const_set :SDLK_AC_HOME, 0x40000119
791
+ const_set :SDLK_AC_BACK, 0x4000011a
792
+ const_set :SDLK_AC_FORWARD, 0x4000011b
793
+ const_set :SDLK_AC_STOP, 0x4000011c
794
+ const_set :SDLK_AC_REFRESH, 0x4000011d
795
+ const_set :SDLK_AC_BOOKMARKS, 0x4000011e
796
+ const_set :SDLK_SOFTLEFT, 0x4000011f
797
+ const_set :SDLK_SOFTRIGHT, 0x40000120
798
+ const_set :SDLK_CALL, 0x40000121
799
+ const_set :SDLK_ENDCALL, 0x40000122
800
+ const_set :SDLK_LEFT_TAB, 0x20000001
801
+ const_set :SDLK_LEVEL5_SHIFT, 0x20000002
802
+ const_set :SDLK_MULTI_KEY_COMPOSE, 0x20000003
803
+ const_set :SDLK_LMETA, 0x20000004
804
+ const_set :SDLK_RMETA, 0x20000005
805
+ const_set :SDLK_LHYPER, 0x20000006
806
+ const_set :SDLK_RHYPER, 0x20000007
545
807
  const_set :SDL_KMOD_NONE, 0x0000
546
808
  const_set :SDL_KMOD_LSHIFT, 0x0001
547
809
  const_set :SDL_KMOD_RSHIFT, 0x0002
@@ -774,7 +1036,7 @@ module SDL3
774
1036
  const_set :SDL_TRAYENTRY_CHECKED, 0x40000000
775
1037
  const_set :SDL_MAJOR_VERSION, 3
776
1038
  const_set :SDL_MINOR_VERSION, 4
777
- const_set :SDL_MICRO_VERSION, 0
1039
+ const_set :SDL_MICRO_VERSION, 2
778
1040
  module_function def SDL_VERSIONNUM(major, minor, patch) = ((major) * 1000000 + (minor) * 1000 + (patch))
779
1041
  module_function def SDL_VERSIONNUM_MAJOR(version) = ((version) / 1000000)
780
1042
  module_function def SDL_VERSIONNUM_MINOR(version) = (((version) / 1000) % 1000)
data/lib/rbsdl3/ttf.rb CHANGED
@@ -12,6 +12,42 @@ module SDL3
12
12
  const_set :SDL_TTF_MICRO_VERSION, 2
13
13
  const_set :SDL_TTF_VERSION, SDL_VERSIONNUM(SDL_TTF_MAJOR_VERSION, SDL_TTF_MINOR_VERSION, SDL_TTF_MICRO_VERSION)
14
14
  module_function def SDL_TTF_VERSION_ATLEAST(x, y, z) = ((SDL_TTF_MAJOR_VERSION >= x) && (SDL_TTF_MAJOR_VERSION > x || SDL_TTF_MINOR_VERSION >= y) && (SDL_TTF_MAJOR_VERSION > x || SDL_TTF_MINOR_VERSION > y || SDL_TTF_MICRO_VERSION >= z))
15
+ const_set :TTF_PROP_FONT_CREATE_FILENAME_STRING, "SDL_ttf.font.create.filename"
16
+ const_set :TTF_PROP_FONT_CREATE_IOSTREAM_POINTER, "SDL_ttf.font.create.iostream"
17
+ const_set :TTF_PROP_FONT_CREATE_IOSTREAM_OFFSET_NUMBER, "SDL_ttf.font.create.iostream.offset"
18
+ const_set :TTF_PROP_FONT_CREATE_IOSTREAM_AUTOCLOSE_BOOLEAN, "SDL_ttf.font.create.iostream.autoclose"
19
+ const_set :TTF_PROP_FONT_CREATE_SIZE_FLOAT, "SDL_ttf.font.create.size"
20
+ const_set :TTF_PROP_FONT_CREATE_FACE_NUMBER, "SDL_ttf.font.create.face"
21
+ const_set :TTF_PROP_FONT_CREATE_HORIZONTAL_DPI_NUMBER, "SDL_ttf.font.create.hdpi"
22
+ const_set :TTF_PROP_FONT_CREATE_VERTICAL_DPI_NUMBER, "SDL_ttf.font.create.vdpi"
23
+ const_set :TTF_PROP_FONT_CREATE_EXISTING_FONT, "SDL_ttf.font.create.existing_font"
24
+ const_set :TTF_PROP_FONT_OUTLINE_LINE_CAP_NUMBER, "SDL_ttf.font.outline.line_cap"
25
+ const_set :TTF_PROP_FONT_OUTLINE_LINE_JOIN_NUMBER, "SDL_ttf.font.outline.line_join"
26
+ const_set :TTF_PROP_FONT_OUTLINE_MITER_LIMIT_NUMBER, "SDL_ttf.font.outline.miter_limit"
27
+ const_set :TTF_STYLE_NORMAL, 0x00
28
+ const_set :TTF_STYLE_BOLD, 0x01
29
+ const_set :TTF_STYLE_ITALIC, 0x02
30
+ const_set :TTF_STYLE_UNDERLINE, 0x04
31
+ const_set :TTF_STYLE_STRIKETHROUGH, 0x08
32
+ const_set :TTF_FONT_WEIGHT_THIN, 100
33
+ const_set :TTF_FONT_WEIGHT_EXTRA_LIGHT, 200
34
+ const_set :TTF_FONT_WEIGHT_LIGHT, 300
35
+ const_set :TTF_FONT_WEIGHT_NORMAL, 400
36
+ const_set :TTF_FONT_WEIGHT_MEDIUM, 500
37
+ const_set :TTF_FONT_WEIGHT_SEMI_BOLD, 600
38
+ const_set :TTF_FONT_WEIGHT_BOLD, 700
39
+ const_set :TTF_FONT_WEIGHT_EXTRA_BOLD, 800
40
+ const_set :TTF_FONT_WEIGHT_BLACK, 900
41
+ const_set :TTF_FONT_WEIGHT_EXTRA_BLACK, 950
42
+ const_set :TTF_PROP_RENDERER_TEXT_ENGINE_RENDERER, "SDL_ttf.renderer_text_engine.create.renderer"
43
+ const_set :TTF_PROP_RENDERER_TEXT_ENGINE_ATLAS_TEXTURE_SIZE, "SDL_ttf.renderer_text_engine.create.atlas_texture_size"
44
+ const_set :TTF_PROP_GPU_TEXT_ENGINE_DEVICE, "SDL_ttf.gpu_text_engine.create.device"
45
+ const_set :TTF_PROP_GPU_TEXT_ENGINE_ATLAS_TEXTURE_SIZE, "SDL_ttf.gpu_text_engine.create.atlas_texture_size"
46
+ const_set :TTF_SUBSTRING_DIRECTION_MASK, 0x000000FF
47
+ const_set :TTF_SUBSTRING_TEXT_START, 0x00000100
48
+ const_set :TTF_SUBSTRING_LINE_START, 0x00000200
49
+ const_set :TTF_SUBSTRING_LINE_END, 0x00000400
50
+ const_set :TTF_SUBSTRING_TEXT_END, 0x00000800
15
51
 
16
52
  # Fiddle declarations for SDL_ttf functions, structs, and enums
17
53
  #
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module SDL3
4
- VERSION = "0.3.0"
4
+ VERSION = "0.4.0"
5
5
  end
data/lib/rbsdl3.rb CHANGED
@@ -47,7 +47,7 @@ module SDL3
47
47
 
48
48
  extend Fiddle::Importer
49
49
 
50
- DLLOAD_TARGETS = %i[SDL SDL_image SDL_ttf].freeze
50
+ DLLOAD_TARGETS = %i[SDL SDL_image SDL_mixer SDL_ttf].freeze
51
51
  private_constant :DLLOAD_TARGETS
52
52
 
53
53
  def self.dlload(*libs)
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rbsdl3
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.0
4
+ version: 0.4.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - shinokaro
@@ -38,6 +38,7 @@ files:
38
38
  - README.md
39
39
  - lib/rbsdl3.rb
40
40
  - lib/rbsdl3/image.rb
41
+ - lib/rbsdl3/mixer.rb
41
42
  - lib/rbsdl3/sdl.rb
42
43
  - lib/rbsdl3/ttf.rb
43
44
  - lib/rbsdl3/version.rb