shithub: npe

Download patch

ref: 74308d12f66140b88cda1ff256218b2fe81a898e
parent: c67f7194ddf7fb2860fa4ef12892ab69a31cad3f
author: Sigrid Solveig Haflínudóttir <ftrvxmtrx@gmail.com>
date: Wed Dec 29 11:52:56 EST 2021

sdl: add few more stubs for events peeping and joysticks

--- a/include/npe/SDL2/SDL.h
+++ b/include/npe/SDL2/SDL.h
@@ -44,6 +44,7 @@
 #include <SDL2/SDL_keycode.h>
 #include <SDL2/SDL_scancode.h>
 #include <SDL2/SDL_audio.h>
+#include <SDL2/SDL_joystick.h>
 #include <SDL2/SDL_events.h>
 #include <SDL2/SDL_thread.h>
 #include <SDL2/SDL_rwops.h>
--- a/include/npe/SDL2/SDL_events.h
+++ b/include/npe/SDL2/SDL_events.h
@@ -4,6 +4,9 @@
 enum {
 	SDL_KEYDOWN,
 	SDL_KEYUP,
+	SDL_JOYAXISMOTION,
+	SDL_JOYBUTTONDOWN,
+	SDL_JOYBUTTONUP,
 	SDL_MOUSEBUTTONDOWN,
 	SDL_MOUSEBUTTONUP,
 	SDL_MOUSEWHEEL,
@@ -21,9 +24,14 @@
 	SDL_WINDOWEVENT_RESIZED = SDL_WINDOWEVENT_SIZE_CHANGED, /* FIXME I don't even fucking know... */
 
 	SDL_TEXTINPUTEVENT_TEXT_SIZE = UTFmax,
+
+	SDL_ADDEVENT = 0,
+	SDL_PEEKEVENT,
+	SDL_GETEVENT,
 };
 
 typedef struct SDL_Event SDL_Event;
+typedef int SDL_eventaction;
 
 struct SDL_Event {
 	int type;
@@ -46,6 +54,13 @@
 		int state;
 	}cbutton;
 	struct {
+		int button;
+	}jbutton;
+	struct {
+		int value;
+		int axis;
+	}jaxis;
+	struct {
 		int x, y;
 	}motion;
 	struct {
@@ -63,5 +78,6 @@
 int SDL_PollEvent(SDL_Event *event);
 int SDL_PushEvent(SDL_Event *event);
 int SDL_RegisterEvents(int);
+int SDL_PeepEvents(SDL_Event *events, int numevents, SDL_eventaction action, Uint32 minType, Uint32 maxType);
 
 #endif
--- /dev/null
+++ b/include/npe/SDL2/SDL_joystick.h
@@ -1,0 +1,9 @@
+#ifndef _npe_SDL_joystick_h_
+#define _npe_SDL_joystick_h_
+
+typedef struct SDL_Joystick SDL_Joystick;
+
+int SDL_NumJoysticks(void);
+SDL_Joystick *SDL_JoystickOpen(int n);
+
+#endif
--- a/libnpe_sdl2/sdl2.c
+++ b/libnpe_sdl2/sdl2.c
@@ -1046,3 +1046,26 @@
 SDL_ClearError(void)
 {
 }
+
+int
+SDL_PeepEvents(SDL_Event *events, int numevents, SDL_eventaction action, Uint32 minType, Uint32 maxType)
+{
+	/* FIXME implement */
+	USED(events, numevents, action, minType, maxType);
+	return 0;
+}
+
+int
+SDL_NumJoysticks(void)
+{
+	/* FIXME implement */
+	return 0;
+}
+
+SDL_Joystick *
+SDL_JoystickOpen(int n)
+{
+	/* FIXME implement */
+	USED(n);
+	return nil;
+}