// (c) 1995-2014 by Artsoft Entertainment
// Holger Schemel
// info@artsoft.org
-// http://www.artsoft.org/
+// https://www.artsoft.org/
// ----------------------------------------------------------------------------
// sdl.h
// ============================================================================
#include <SDL_mixer.h>
#include <SDL_net.h>
#include <SDL_thread.h>
-#if defined(PLATFORM_WIN32)
+#if defined(PLATFORM_WINDOWS)
#include <SDL_syswm.h>
#endif
// definitions needed for "system.c"
-#define SURFACE_FLAGS (0)
+#define SURFACE_FLAGS (SDL_WINDOW_RESIZABLE)
#define SET_TRANSPARENT_PIXEL (SDL_TRUE)
#define UNSET_TRANSPARENT_PIXEL (SDL_FALSE)
#define KSYM_FKEY_LAST KSYM_F12
#define KSYM_NUM_FKEYS (KSYM_FKEY_LAST - KSYM_FKEY_FIRST + 1)
+#define KSYM_RAW(k) (((k) >= KSYM_a && \
+ (k) <= KSYM_z) || \
+ ((k) >= KSYM_0 && \
+ (k) <= KSYM_9) || \
+ (k) == KSYM_space)
+
+#define KSYM_PRINTABLE(k) (((k) >= KSYM_space && \
+ (k) <= KSYM_z) || \
+ (k) == KSYM_Adiaeresis || \
+ (k) == KSYM_Odiaeresis || \
+ (k) == KSYM_Udiaeresis || \
+ (k) == KSYM_adiaeresis || \
+ (k) == KSYM_odiaeresis || \
+ (k) == KSYM_udiaeresis)
+
#define KMOD_None KMOD_NONE
#define KMOD_Shift_L KMOD_LSHIFT
#define KMOD_Shift_R KMOD_RSHIFT
#define KMOD_TextInput (KMOD_Shift | KMOD_Alt_R)
+
// SDL function definitions
+void SDLSetAlpha(SDL_Surface *, boolean, int);
+const char *SDLGetRendererName(void);
boolean SDLSetNativeSurface(SDL_Surface **);
SDL_Surface *SDLGetNativeSurface(SDL_Surface *);
void SDLCreateBitmapTextures(Bitmap *);
Pixel SDLGetPixel(Bitmap *, int, int);
void SDLPutPixel(Bitmap *, int, int, Pixel);
-void SDLInvertArea(Bitmap *, int, int, int, int, Uint32);
void SDLCopyInverseMasked(Bitmap *, Bitmap *, int, int, int, int, int, int);
Bitmap *SDLZoomBitmap(Bitmap *, int, int);
void SDLCloseAudio(void);
void SDLWaitEvent(Event *);
-void SDLCorrectMouseEventXY(int *, int *);
+void SDLCorrectRawMousePosition(int *, int *);
void HandleJoystickEvent(Event *);
void SDLInitJoysticks(void);