Skip to content

Commit 9d79ba7

Browse files
authored
Merge pull request #256 from Susko3/update-sdl
Update SDL bindings, with two input fixes and one feature
2 parents b71f522 + 95165b5 commit 9d79ba7

File tree

16 files changed

+289
-46
lines changed

16 files changed

+289
-46
lines changed

External/SDL

Submodule SDL updated 741 files

External/SDL_image

Submodule SDL_image updated 157 files

SDL3-CS/SDL3/ClangSharp/SDL_cpuinfo.g.cs

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -98,6 +98,9 @@ public static partial class SDL3
9898
[return: NativeTypeName("size_t")]
9999
public static extern nuint SDL_GetSIMDAlignment();
100100

101+
[DllImport("SDL3", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)]
102+
public static extern int SDL_GetSystemPageSize();
103+
101104
[NativeTypeName("#define SDL_CACHELINE_SIZE 128")]
102105
public const int SDL_CACHELINE_SIZE = 128;
103106
}

SDL3-CS/SDL3/ClangSharp/SDL_events.g.cs

Lines changed: 25 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -48,8 +48,9 @@ public enum SDL_EventType
4848
SDL_EVENT_DISPLAY_DESKTOP_MODE_CHANGED,
4949
SDL_EVENT_DISPLAY_CURRENT_MODE_CHANGED,
5050
SDL_EVENT_DISPLAY_CONTENT_SCALE_CHANGED,
51+
SDL_EVENT_DISPLAY_USABLE_BOUNDS_CHANGED,
5152
SDL_EVENT_DISPLAY_FIRST = SDL_EVENT_DISPLAY_ORIENTATION,
52-
SDL_EVENT_DISPLAY_LAST = SDL_EVENT_DISPLAY_CONTENT_SCALE_CHANGED,
53+
SDL_EVENT_DISPLAY_LAST = SDL_EVENT_DISPLAY_USABLE_BOUNDS_CHANGED,
5354
SDL_EVENT_WINDOW_SHOWN = 0x202,
5455
SDL_EVENT_WINDOW_HIDDEN,
5556
SDL_EVENT_WINDOW_EXPOSED,
@@ -85,6 +86,8 @@ public enum SDL_EventType
8586
SDL_EVENT_KEYBOARD_ADDED,
8687
SDL_EVENT_KEYBOARD_REMOVED,
8788
SDL_EVENT_TEXT_EDITING_CANDIDATES,
89+
SDL_EVENT_SCREEN_KEYBOARD_SHOWN,
90+
SDL_EVENT_SCREEN_KEYBOARD_HIDDEN,
8891
SDL_EVENT_MOUSE_MOTION = 0x400,
8992
SDL_EVENT_MOUSE_BUTTON_DOWN,
9093
SDL_EVENT_MOUSE_BUTTON_UP,
@@ -116,6 +119,9 @@ public enum SDL_EventType
116119
SDL_EVENT_FINGER_UP,
117120
SDL_EVENT_FINGER_MOTION,
118121
SDL_EVENT_FINGER_CANCELED,
122+
SDL_EVENT_PINCH_BEGIN = 0x710,
123+
SDL_EVENT_PINCH_UPDATE,
124+
SDL_EVENT_PINCH_END,
119125
SDL_EVENT_CLIPBOARD_UPDATE = 0x900,
120126
SDL_EVENT_DROP_FILE = 0x1000,
121127
SDL_EVENT_DROP_TEXT,
@@ -758,6 +764,21 @@ public partial struct SDL_TouchFingerEvent
758764
public SDL_WindowID windowID;
759765
}
760766

767+
public partial struct SDL_PinchFingerEvent
768+
{
769+
public SDL_EventType type;
770+
771+
[NativeTypeName("Uint32")]
772+
public uint reserved;
773+
774+
[NativeTypeName("Uint64")]
775+
public ulong timestamp;
776+
777+
public float scale;
778+
779+
public SDL_WindowID windowID;
780+
}
781+
761782
public partial struct SDL_PenProximityEvent
762783
{
763784
public SDL_EventType type;
@@ -1069,6 +1090,9 @@ public partial struct SDL_Event
10691090
[FieldOffset(0)]
10701091
public SDL_TouchFingerEvent tfinger;
10711092

1093+
[FieldOffset(0)]
1094+
public SDL_PinchFingerEvent pinch;
1095+
10721096
[FieldOffset(0)]
10731097
public SDL_PenProximityEvent pproximity;
10741098

SDL3-CS/SDL3/ClangSharp/SDL_gpu.g.cs

Lines changed: 42 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1008,10 +1008,10 @@ public unsafe partial struct SDL_GPUDepthStencilTargetInfo
10081008
public byte clear_stencil;
10091009

10101010
[NativeTypeName("Uint8")]
1011-
public byte padding1;
1011+
public byte mip_level;
10121012

10131013
[NativeTypeName("Uint8")]
1014-
public byte padding2;
1014+
public byte layer;
10151015
}
10161016

10171017
public partial struct SDL_GPUBlitInfo
@@ -1096,6 +1096,30 @@ public unsafe partial struct SDL_GPUStorageTextureReadWriteBinding
10961096
public byte padding3;
10971097
}
10981098

1099+
public unsafe partial struct SDL_GPUVulkanOptions
1100+
{
1101+
[NativeTypeName("Uint32")]
1102+
public uint vulkan_api_version;
1103+
1104+
[NativeTypeName("void*")]
1105+
public IntPtr feature_list;
1106+
1107+
[NativeTypeName("void*")]
1108+
public IntPtr vulkan_10_physical_device_features;
1109+
1110+
[NativeTypeName("Uint32")]
1111+
public uint device_extension_count;
1112+
1113+
[NativeTypeName("const char **")]
1114+
public byte** device_extension_names;
1115+
1116+
[NativeTypeName("Uint32")]
1117+
public uint instance_extension_count;
1118+
1119+
[NativeTypeName("const char **")]
1120+
public byte** instance_extension_names;
1121+
}
1122+
10991123
public static unsafe partial class SDL3
11001124
{
11011125
[DllImport("SDL3", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)]
@@ -1489,6 +1513,18 @@ public static unsafe partial class SDL3
14891513
[NativeTypeName("#define SDL_PROP_GPU_DEVICE_CREATE_NAME_STRING \"SDL.gpu.device.create.name\"")]
14901514
public static ReadOnlySpan<byte> SDL_PROP_GPU_DEVICE_CREATE_NAME_STRING => "SDL.gpu.device.create.name"u8;
14911515

1516+
[NativeTypeName("#define SDL_PROP_GPU_DEVICE_CREATE_FEATURE_CLIP_DISTANCE_BOOLEAN \"SDL.gpu.device.create.feature.clip_distance\"")]
1517+
public static ReadOnlySpan<byte> SDL_PROP_GPU_DEVICE_CREATE_FEATURE_CLIP_DISTANCE_BOOLEAN => "SDL.gpu.device.create.feature.clip_distance"u8;
1518+
1519+
[NativeTypeName("#define SDL_PROP_GPU_DEVICE_CREATE_FEATURE_DEPTH_CLAMPING_BOOLEAN \"SDL.gpu.device.create.feature.depth_clamping\"")]
1520+
public static ReadOnlySpan<byte> SDL_PROP_GPU_DEVICE_CREATE_FEATURE_DEPTH_CLAMPING_BOOLEAN => "SDL.gpu.device.create.feature.depth_clamping"u8;
1521+
1522+
[NativeTypeName("#define SDL_PROP_GPU_DEVICE_CREATE_FEATURE_INDIRECT_DRAW_FIRST_INSTANCE_BOOLEAN \"SDL.gpu.device.create.feature.indirect_draw_first_instance\"")]
1523+
public static ReadOnlySpan<byte> SDL_PROP_GPU_DEVICE_CREATE_FEATURE_INDIRECT_DRAW_FIRST_INSTANCE_BOOLEAN => "SDL.gpu.device.create.feature.indirect_draw_first_instance"u8;
1524+
1525+
[NativeTypeName("#define SDL_PROP_GPU_DEVICE_CREATE_FEATURE_ANISOTROPY_BOOLEAN \"SDL.gpu.device.create.feature.anisotropy\"")]
1526+
public static ReadOnlySpan<byte> SDL_PROP_GPU_DEVICE_CREATE_FEATURE_ANISOTROPY_BOOLEAN => "SDL.gpu.device.create.feature.anisotropy"u8;
1527+
14921528
[NativeTypeName("#define SDL_PROP_GPU_DEVICE_CREATE_SHADERS_PRIVATE_BOOLEAN \"SDL.gpu.device.create.shaders.private\"")]
14931529
public static ReadOnlySpan<byte> SDL_PROP_GPU_DEVICE_CREATE_SHADERS_PRIVATE_BOOLEAN => "SDL.gpu.device.create.shaders.private"u8;
14941530

@@ -1513,17 +1549,11 @@ public static unsafe partial class SDL3
15131549
[NativeTypeName("#define SDL_PROP_GPU_DEVICE_CREATE_D3D12_SEMANTIC_NAME_STRING \"SDL.gpu.device.create.d3d12.semantic\"")]
15141550
public static ReadOnlySpan<byte> SDL_PROP_GPU_DEVICE_CREATE_D3D12_SEMANTIC_NAME_STRING => "SDL.gpu.device.create.d3d12.semantic"u8;
15151551

1516-
[NativeTypeName("#define SDL_PROP_GPU_DEVICE_CREATE_VULKAN_SHADERCLIPDISTANCE_BOOLEAN \"SDL.gpu.device.create.vulkan.shaderclipdistance\"")]
1517-
public static ReadOnlySpan<byte> SDL_PROP_GPU_DEVICE_CREATE_VULKAN_SHADERCLIPDISTANCE_BOOLEAN => "SDL.gpu.device.create.vulkan.shaderclipdistance"u8;
1518-
1519-
[NativeTypeName("#define SDL_PROP_GPU_DEVICE_CREATE_VULKAN_DEPTHCLAMP_BOOLEAN \"SDL.gpu.device.create.vulkan.depthclamp\"")]
1520-
public static ReadOnlySpan<byte> SDL_PROP_GPU_DEVICE_CREATE_VULKAN_DEPTHCLAMP_BOOLEAN => "SDL.gpu.device.create.vulkan.depthclamp"u8;
1521-
1522-
[NativeTypeName("#define SDL_PROP_GPU_DEVICE_CREATE_VULKAN_DRAWINDIRECTFIRST_BOOLEAN \"SDL.gpu.device.create.vulkan.drawindirectfirstinstance\"")]
1523-
public static ReadOnlySpan<byte> SDL_PROP_GPU_DEVICE_CREATE_VULKAN_DRAWINDIRECTFIRST_BOOLEAN => "SDL.gpu.device.create.vulkan.drawindirectfirstinstance"u8;
1552+
[NativeTypeName("#define SDL_PROP_GPU_DEVICE_CREATE_VULKAN_REQUIRE_HARDWARE_ACCELERATION_BOOLEAN \"SDL.gpu.device.create.vulkan.requirehardwareacceleration\"")]
1553+
public static ReadOnlySpan<byte> SDL_PROP_GPU_DEVICE_CREATE_VULKAN_REQUIRE_HARDWARE_ACCELERATION_BOOLEAN => "SDL.gpu.device.create.vulkan.requirehardwareacceleration"u8;
15241554

1525-
[NativeTypeName("#define SDL_PROP_GPU_DEVICE_CREATE_VULKAN_SAMPLERANISOTROPY_BOOLEAN \"SDL.gpu.device.create.vulkan.sampleranisotropy\"")]
1526-
public static ReadOnlySpan<byte> SDL_PROP_GPU_DEVICE_CREATE_VULKAN_SAMPLERANISOTROPY_BOOLEAN => "SDL.gpu.device.create.vulkan.sampleranisotropy"u8;
1555+
[NativeTypeName("#define SDL_PROP_GPU_DEVICE_CREATE_VULKAN_OPTIONS_POINTER \"SDL.gpu.device.create.vulkan.options\"")]
1556+
public static ReadOnlySpan<byte> SDL_PROP_GPU_DEVICE_CREATE_VULKAN_OPTIONS_POINTER => "SDL.gpu.device.create.vulkan.options"u8;
15271557

15281558
[NativeTypeName("#define SDL_PROP_GPU_DEVICE_NAME_STRING \"SDL.gpu.device.name\"")]
15291559
public static ReadOnlySpan<byte> SDL_PROP_GPU_DEVICE_NAME_STRING => "SDL.gpu.device.name"u8;

SDL3-CS/SDL3/ClangSharp/SDL_hints.g.cs

Lines changed: 33 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -121,6 +121,9 @@ public static unsafe partial class SDL3
121121
[NativeTypeName("#define SDL_HINT_AUDIO_DEVICE_STREAM_ROLE \"SDL_AUDIO_DEVICE_STREAM_ROLE\"")]
122122
public static ReadOnlySpan<byte> SDL_HINT_AUDIO_DEVICE_STREAM_ROLE => "SDL_AUDIO_DEVICE_STREAM_ROLE"u8;
123123

124+
[NativeTypeName("#define SDL_HINT_AUDIO_DEVICE_RAW_STREAM \"SDL_AUDIO_DEVICE_RAW_STREAM\"")]
125+
public static ReadOnlySpan<byte> SDL_HINT_AUDIO_DEVICE_RAW_STREAM => "SDL_AUDIO_DEVICE_RAW_STREAM"u8;
126+
124127
[NativeTypeName("#define SDL_HINT_AUDIO_DISK_INPUT_FILE \"SDL_AUDIO_DISK_INPUT_FILE\"")]
125128
public static ReadOnlySpan<byte> SDL_HINT_AUDIO_DISK_INPUT_FILE => "SDL_AUDIO_DISK_INPUT_FILE"u8;
126129

@@ -169,6 +172,9 @@ public static unsafe partial class SDL3
169172
[NativeTypeName("#define SDL_HINT_DISPLAY_USABLE_BOUNDS \"SDL_DISPLAY_USABLE_BOUNDS\"")]
170173
public static ReadOnlySpan<byte> SDL_HINT_DISPLAY_USABLE_BOUNDS => "SDL_DISPLAY_USABLE_BOUNDS"u8;
171174

175+
[NativeTypeName("#define SDL_HINT_INVALID_PARAM_CHECKS \"SDL_INVALID_PARAM_CHECKS\"")]
176+
public static ReadOnlySpan<byte> SDL_HINT_INVALID_PARAM_CHECKS => "SDL_INVALID_PARAM_CHECKS"u8;
177+
172178
[NativeTypeName("#define SDL_HINT_EMSCRIPTEN_ASYNCIFY \"SDL_EMSCRIPTEN_ASYNCIFY\"")]
173179
public static ReadOnlySpan<byte> SDL_HINT_EMSCRIPTEN_ASYNCIFY => "SDL_EMSCRIPTEN_ASYNCIFY"u8;
174180

@@ -178,6 +184,9 @@ public static unsafe partial class SDL3
178184
[NativeTypeName("#define SDL_HINT_EMSCRIPTEN_KEYBOARD_ELEMENT \"SDL_EMSCRIPTEN_KEYBOARD_ELEMENT\"")]
179185
public static ReadOnlySpan<byte> SDL_HINT_EMSCRIPTEN_KEYBOARD_ELEMENT => "SDL_EMSCRIPTEN_KEYBOARD_ELEMENT"u8;
180186

187+
[NativeTypeName("#define SDL_HINT_EMSCRIPTEN_FILL_DOCUMENT \"SDL_EMSCRIPTEN_FILL_DOCUMENT\"")]
188+
public static ReadOnlySpan<byte> SDL_HINT_EMSCRIPTEN_FILL_DOCUMENT => "SDL_EMSCRIPTEN_FILL_DOCUMENT"u8;
189+
181190
[NativeTypeName("#define SDL_HINT_ENABLE_SCREEN_KEYBOARD \"SDL_ENABLE_SCREEN_KEYBOARD\"")]
182191
public static ReadOnlySpan<byte> SDL_HINT_ENABLE_SCREEN_KEYBOARD => "SDL_ENABLE_SCREEN_KEYBOARD"u8;
183192

@@ -355,6 +364,9 @@ public static unsafe partial class SDL3
355364
[NativeTypeName("#define SDL_HINT_JOYSTICK_HIDAPI_SINPUT \"SDL_JOYSTICK_HIDAPI_SINPUT\"")]
356365
public static ReadOnlySpan<byte> SDL_HINT_JOYSTICK_HIDAPI_SINPUT => "SDL_JOYSTICK_HIDAPI_SINPUT"u8;
357366

367+
[NativeTypeName("#define SDL_HINT_JOYSTICK_HIDAPI_ZUIKI \"SDL_JOYSTICK_HIDAPI_ZUIKI\"")]
368+
public static ReadOnlySpan<byte> SDL_HINT_JOYSTICK_HIDAPI_ZUIKI => "SDL_JOYSTICK_HIDAPI_ZUIKI"u8;
369+
358370
[NativeTypeName("#define SDL_HINT_JOYSTICK_HIDAPI_FLYDIGI \"SDL_JOYSTICK_HIDAPI_FLYDIGI\"")]
359371
public static ReadOnlySpan<byte> SDL_HINT_JOYSTICK_HIDAPI_FLYDIGI => "SDL_JOYSTICK_HIDAPI_FLYDIGI"u8;
360372

@@ -463,6 +475,9 @@ public static unsafe partial class SDL3
463475
[NativeTypeName("#define SDL_HINT_KMSDRM_REQUIRE_DRM_MASTER \"SDL_KMSDRM_REQUIRE_DRM_MASTER\"")]
464476
public static ReadOnlySpan<byte> SDL_HINT_KMSDRM_REQUIRE_DRM_MASTER => "SDL_KMSDRM_REQUIRE_DRM_MASTER"u8;
465477

478+
[NativeTypeName("#define SDL_HINT_KMSDRM_ATOMIC \"SDL_KMSDRM_ATOMIC\"")]
479+
public static ReadOnlySpan<byte> SDL_HINT_KMSDRM_ATOMIC => "SDL_KMSDRM_ATOMIC"u8;
480+
466481
[NativeTypeName("#define SDL_HINT_LOGGING \"SDL_LOGGING\"")]
467482
public static ReadOnlySpan<byte> SDL_HINT_LOGGING => "SDL_LOGGING"u8;
468483

@@ -592,6 +607,18 @@ public static unsafe partial class SDL3
592607
[NativeTypeName("#define SDL_HINT_ROG_GAMEPAD_MICE_EXCLUDED \"SDL_ROG_GAMEPAD_MICE_EXCLUDED\"")]
593608
public static ReadOnlySpan<byte> SDL_HINT_ROG_GAMEPAD_MICE_EXCLUDED => "SDL_ROG_GAMEPAD_MICE_EXCLUDED"u8;
594609

610+
[NativeTypeName("#define SDL_HINT_PS2_GS_WIDTH \"SDL_PS2_GS_WIDTH\"")]
611+
public static ReadOnlySpan<byte> SDL_HINT_PS2_GS_WIDTH => "SDL_PS2_GS_WIDTH"u8;
612+
613+
[NativeTypeName("#define SDL_HINT_PS2_GS_HEIGHT \"SDL_PS2_GS_HEIGHT\"")]
614+
public static ReadOnlySpan<byte> SDL_HINT_PS2_GS_HEIGHT => "SDL_PS2_GS_HEIGHT"u8;
615+
616+
[NativeTypeName("#define SDL_HINT_PS2_GS_PROGRESSIVE \"SDL_PS2_GS_PROGRESSIVE\"")]
617+
public static ReadOnlySpan<byte> SDL_HINT_PS2_GS_PROGRESSIVE => "SDL_PS2_GS_PROGRESSIVE"u8;
618+
619+
[NativeTypeName("#define SDL_HINT_PS2_GS_MODE \"SDL_PS2_GS_MODE\"")]
620+
public static ReadOnlySpan<byte> SDL_HINT_PS2_GS_MODE => "SDL_PS2_GS_MODE"u8;
621+
595622
[NativeTypeName("#define SDL_HINT_RPI_VIDEO_LAYER \"SDL_RPI_VIDEO_LAYER\"")]
596623
public static ReadOnlySpan<byte> SDL_HINT_RPI_VIDEO_LAYER => "SDL_RPI_VIDEO_LAYER"u8;
597624

@@ -652,6 +679,9 @@ public static unsafe partial class SDL3
652679
[NativeTypeName("#define SDL_HINT_VIDEO_MAC_FULLSCREEN_MENU_VISIBILITY \"SDL_VIDEO_MAC_FULLSCREEN_MENU_VISIBILITY\"")]
653680
public static ReadOnlySpan<byte> SDL_HINT_VIDEO_MAC_FULLSCREEN_MENU_VISIBILITY => "SDL_VIDEO_MAC_FULLSCREEN_MENU_VISIBILITY"u8;
654681

682+
[NativeTypeName("#define SDL_HINT_VIDEO_METAL_AUTO_RESIZE_DRAWABLE \"SDL_VIDEO_METAL_AUTO_RESIZE_DRAWABLE\"")]
683+
public static ReadOnlySpan<byte> SDL_HINT_VIDEO_METAL_AUTO_RESIZE_DRAWABLE => "SDL_VIDEO_METAL_AUTO_RESIZE_DRAWABLE"u8;
684+
655685
[NativeTypeName("#define SDL_HINT_VIDEO_MATCH_EXCLUSIVE_MODE_ON_MOVE \"SDL_VIDEO_MATCH_EXCLUSIVE_MODE_ON_MOVE\"")]
656686
public static ReadOnlySpan<byte> SDL_HINT_VIDEO_MATCH_EXCLUSIVE_MODE_ON_MOVE => "SDL_VIDEO_MATCH_EXCLUSIVE_MODE_ON_MOVE"u8;
657687

@@ -772,6 +802,9 @@ public static unsafe partial class SDL3
772802
[NativeTypeName("#define SDL_HINT_WINDOWS_RAW_KEYBOARD \"SDL_WINDOWS_RAW_KEYBOARD\"")]
773803
public static ReadOnlySpan<byte> SDL_HINT_WINDOWS_RAW_KEYBOARD => "SDL_WINDOWS_RAW_KEYBOARD"u8;
774804

805+
[NativeTypeName("#define SDL_HINT_WINDOWS_RAW_KEYBOARD_EXCLUDE_HOTKEYS \"SDL_WINDOWS_RAW_KEYBOARD_EXCLUDE_HOTKEYS\"")]
806+
public static ReadOnlySpan<byte> SDL_HINT_WINDOWS_RAW_KEYBOARD_EXCLUDE_HOTKEYS => "SDL_WINDOWS_RAW_KEYBOARD_EXCLUDE_HOTKEYS"u8;
807+
775808
[NativeTypeName("#define SDL_HINT_WINDOWS_FORCE_SEMAPHORE_KERNEL \"SDL_WINDOWS_FORCE_SEMAPHORE_KERNEL\"")]
776809
public static ReadOnlySpan<byte> SDL_HINT_WINDOWS_FORCE_SEMAPHORE_KERNEL => "SDL_WINDOWS_FORCE_SEMAPHORE_KERNEL"u8;
777810

@@ -807,8 +840,5 @@ public static unsafe partial class SDL3
807840

808841
[NativeTypeName("#define SDL_HINT_PEN_TOUCH_EVENTS \"SDL_PEN_TOUCH_EVENTS\"")]
809842
public static ReadOnlySpan<byte> SDL_HINT_PEN_TOUCH_EVENTS => "SDL_PEN_TOUCH_EVENTS"u8;
810-
811-
[NativeTypeName("#define SDL_HINT_DEBUG_LOGGING \"SDL_DEBUG_LOGGING\"")]
812-
public static ReadOnlySpan<byte> SDL_HINT_DEBUG_LOGGING => "SDL_DEBUG_LOGGING"u8;
813843
}
814844
}

SDL3-CS/SDL3/ClangSharp/SDL_mouse.g.cs

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -63,6 +63,14 @@ public enum SDL_MouseWheelDirection
6363
SDL_MOUSEWHEEL_FLIPPED,
6464
}
6565

66+
public unsafe partial struct SDL_CursorFrameInfo
67+
{
68+
public SDL_Surface* surface;
69+
70+
[NativeTypeName("Uint32")]
71+
public uint duration;
72+
}
73+
6674
public static unsafe partial class SDL3
6775
{
6876
[DllImport("SDL3", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)]
@@ -117,6 +125,9 @@ public static unsafe partial class SDL3
117125
[DllImport("SDL3", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)]
118126
public static extern SDL_Cursor* SDL_CreateColorCursor(SDL_Surface* surface, int hot_x, int hot_y);
119127

128+
[DllImport("SDL3", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)]
129+
public static extern SDL_Cursor* SDL_CreateAnimatedCursor(SDL_CursorFrameInfo* frames, int frame_count, int hot_x, int hot_y);
130+
120131
[DllImport("SDL3", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)]
121132
public static extern SDL_Cursor* SDL_CreateSystemCursor(SDL_SystemCursor id);
122133

SDL3-CS/SDL3/ClangSharp/SDL_pen.g.cs

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,8 @@ misrepresented as being the original software.
2323
3. This notice may not be removed or altered from any source distribution.
2424
*/
2525

26+
using System.Runtime.InteropServices;
27+
2628
namespace SDL
2729
{
2830
public enum SDL_PenAxis
@@ -37,8 +39,19 @@ public enum SDL_PenAxis
3739
SDL_PEN_AXIS_COUNT,
3840
}
3941

42+
public enum SDL_PenDeviceType
43+
{
44+
SDL_PEN_DEVICE_TYPE_INVALID = -1,
45+
SDL_PEN_DEVICE_TYPE_UNKNOWN,
46+
SDL_PEN_DEVICE_TYPE_DIRECT,
47+
SDL_PEN_DEVICE_TYPE_INDIRECT,
48+
}
49+
4050
public static partial class SDL3
4151
{
52+
[DllImport("SDL3", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)]
53+
public static extern SDL_PenDeviceType SDL_GetPenDeviceType(SDL_PenID instance_id);
54+
4255
[NativeTypeName("#define SDL_PEN_INPUT_DOWN (1u << 0)")]
4356
public const uint SDL_PEN_INPUT_DOWN = (1U << 0);
4457

0 commit comments

Comments
 (0)