changed comments from old to new style (one-line comments only)
[rocksndiamonds.git] / src / libgame / sdl.h
index 7cc3b459612f15556249ca3544657b7537f63b08..58434681112f608d782529a098675d8e4c0f403d 100644 (file)
@@ -21,7 +21,7 @@
 #include <SDL_syswm.h>
 #endif
 
-/* definitions needed for "system.c" */
+// definitions needed for "system.c"
 
 #if defined(TARGET_SDL2)
 #define SURFACE_FLAGS          (0)
@@ -37,7 +37,7 @@
 #define UNSET_TRANSPARENT_PIXEL        (0)
 #endif
 
-/* system dependent definitions */
+// system dependent definitions
 
 #if defined(TARGET_SDL2)
 #define TARGET_STRING          "SDL2"
 #if defined(PLATFORM_ANDROID)
 #define WINDOW_SCALING_STATUS  WINDOW_SCALING_NOT_AVAILABLE
 #define FULLSCREEN_STATUS      FULLSCREEN_AVAILABLE
-#define USE_DESKTOP_FULLSCREEN TRUE
 #elif defined(TARGET_SDL2)
 #define WINDOW_SCALING_STATUS  WINDOW_SCALING_AVAILABLE
 #define FULLSCREEN_STATUS      FULLSCREEN_AVAILABLE
-#define USE_DESKTOP_FULLSCREEN TRUE
 #else  // SDL 1.2
 #define WINDOW_SCALING_STATUS  WINDOW_SCALING_NOT_AVAILABLE
 #define FULLSCREEN_STATUS      FULLSCREEN_AVAILABLE
 #endif
 
-#define USE_FINAL_SCREEN_BITMAP        FALSE
-
 #define CURSOR_MAX_WIDTH       32
 #define CURSOR_MAX_HEIGHT      32
 
 
-/* SDL type definitions */
+// SDL type definitions
 
 typedef struct SDLSurfaceInfo  Bitmap;
 typedef struct SDLSurfaceInfo  DrawBuffer;
@@ -84,6 +80,7 @@ typedef SDL_Event             Event;
 typedef SDL_MouseButtonEvent   ButtonEvent;
 typedef SDL_MouseMotionEvent   MotionEvent;
 #if defined(TARGET_SDL2)
+typedef SDL_MouseWheelEvent    WheelEvent;
 typedef SDL_TouchFingerEvent   FingerEvent;
 typedef SDL_TextInputEvent     TextEvent;
 typedef SDL_Event              PauseResumeEvent;
@@ -95,7 +92,7 @@ typedef SDL_Event             FocusChangeEvent;
 typedef SDL_Event              ClientMessageEvent;
 
 
-/* structure definitions */
+// structure definitions
 
 struct SDLSurfaceInfo
 {
@@ -120,7 +117,7 @@ struct MouseCursorInfo
 };
 
 
-/* SDL symbol definitions */
+// SDL symbol definitions
 
 #define None                   0L
 
@@ -131,6 +128,7 @@ struct MouseCursorInfo
 #define EVENT_BUTTONRELEASE    SDL_MOUSEBUTTONUP
 #define EVENT_MOTIONNOTIFY     SDL_MOUSEMOTION
 #if defined(TARGET_SDL2)
+#define        EVENT_WHEELMOTION       SDL_MOUSEWHEEL
 #define        EVENT_FINGERPRESS       SDL_FINGERDOWN
 #define EVENT_FINGERRELEASE    SDL_FINGERUP
 #define EVENT_FINGERMOTION     SDL_FINGERMOTION
@@ -201,8 +199,14 @@ struct MouseCursorInfo
 #define KSYM_Page_Down         SDLK_PAGEDOWN
 
 #if defined(TARGET_SDL2)
+#define KSYM_Select            SDLK_SELECT
 #define KSYM_Menu              SDLK_MENU
 #define KSYM_Back              SDLK_AC_BACK
+#define KSYM_PlayPause         SDLK_AUDIOPLAY
+#if defined(PLATFORM_ANDROID)
+#define KSYM_Rewind            SDLK_AUDIOREWIND
+#define KSYM_FastForward       SDLK_AUDIOFASTFORWARD
+#endif
 #endif
 
 #define KSYM_space             SDLK_SPACE
@@ -214,7 +218,7 @@ struct MouseCursorInfo
 #if defined(TARGET_SDL2)
 #define KSYM_percent           SDLK_PERCENT
 #else
-#define KSYM_percent           37                      /* undefined in SDL */
+#define KSYM_percent           37                      // undefined in SDL
 #endif
 
 #define KSYM_ampersand         SDLK_AMPERSAND
@@ -243,11 +247,11 @@ struct MouseCursorInfo
 #define KSYM_underscore                SDLK_UNDERSCORE
 #define KSYM_grave             SDLK_BACKQUOTE
 
-#define KSYM_quoteleft         KSYM_UNDEFINED          /* undefined */
-#define KSYM_braceleft         KSYM_UNDEFINED          /* undefined */
-#define KSYM_bar               KSYM_UNDEFINED          /* undefined */
-#define KSYM_braceright                KSYM_UNDEFINED          /* undefined */
-#define KSYM_asciitilde                KSYM_UNDEFINED          /* undefined */
+#define KSYM_quoteleft         KSYM_UNDEFINED          // undefined
+#define KSYM_braceleft         KSYM_UNDEFINED          // undefined
+#define KSYM_bar               KSYM_UNDEFINED          // undefined
+#define KSYM_braceright                KSYM_UNDEFINED          // undefined
+#define KSYM_asciitilde                KSYM_UNDEFINED          // undefined
 
 #if defined(TARGET_SDL2)
 #define KSYM_degree            176
@@ -426,36 +430,49 @@ struct MouseCursorInfo
 #define KMOD_Meta              (KMOD_Meta_L    | KMOD_Meta_R)
 #define KMOD_Alt               (KMOD_Alt_L     | KMOD_Alt_R)
 
+// this only contains "valid" key modifiers (and ignores keys like "NumLock")
+#define KMOD_Valid             (KMOD_Shift   | \
+                                KMOD_Control | \
+                                KMOD_Meta    | \
+                                KMOD_Alt)
+
 #if defined(TARGET_SDL2)
 #define KMOD_TextInput         (KMOD_Shift | KMOD_Alt_R)
 #endif
 
-/* SDL function definitions */
+// SDL function definitions
 
 boolean SDLSetNativeSurface(SDL_Surface **);
 SDL_Surface *SDLGetNativeSurface(SDL_Surface *);
 void SDLCreateBitmapTextures(Bitmap *);
+void SDLFreeBitmapTextures(Bitmap *);
 
 #if defined(TARGET_SDL2)
 SDL_Surface *SDL_DisplayFormat(SDL_Surface *);
 void SDLSetWindowScaling(int);
 void SDLSetWindowScalingQuality(char *);
 void SDLSetWindowFullscreen(boolean);
-void SDLRedrawWindow();
+void SDLSetDisplaySize(void);
+void SDLSetScreenSizeAndOffsets(int, int);
+void SDLSetScreenSizeForRenderer(int, int);
+void SDLSetScreenProperties(void);
 #endif
 
+void SDLSetScreenRenderingMode(char *);
+void SDLSetScreenVsyncMode(char *);
+void SDLRedrawWindow(void);
 void SDLSetWindowTitle(void);
 
 void SDLLimitScreenUpdates(boolean);
 void SDLInitVideoDisplay(void);
-void SDLInitVideoBuffer(DrawBuffer **, DrawWindow **, boolean);
-boolean SDLSetVideoMode(DrawBuffer **, boolean);
+void SDLInitVideoBuffer(boolean);
+boolean SDLSetVideoMode(boolean);
 void SDLCreateBitmapContent(Bitmap *, int, int, int);
 void SDLFreeBitmapPointers(Bitmap *);
 void SDLCopyArea(Bitmap *, Bitmap *, int, int, int, int, int, int, int);
 void SDLBlitTexture(Bitmap *, int, int, int, int, int, int, int);
 void SDLFillRectangle(Bitmap *, int, int, int, int, Uint32);
-void SDLFadeRectangle(Bitmap *, int, int, int, int, int, int, int,
+void SDLFadeRectangle(int, int, int, int, int, int, int,
                      void (*draw_border_function)(void));
 void SDLDrawSimpleLine(Bitmap *, int, int, int, int, Uint32);
 void SDLDrawLine(Bitmap *, int, int, int, int, Uint32);
@@ -474,11 +491,19 @@ void SDLSetMouseCursor(struct MouseCursorInfo *);
 void SDLOpenAudio(void);
 void SDLCloseAudio(void);
 
-void SDLNextEvent(Event *);
+void SDLWaitEvent(Event *);
 void SDLHandleWindowManagerEvent(Event *);
 
 void HandleJoystickEvent(Event *);
 void SDLInitJoysticks(void);
 boolean SDLReadJoystick(int, int *, int *, boolean *, boolean *);
+boolean SDLCheckJoystickOpened(int);
+void SDLClearJoystickState(void);
+boolean SDLOpenJoystick(int);
+void SDLCloseJoystick(int);
+
+void PrepareFadeBitmap(int);
+
+void Delay_WithScreenUpdates(unsigned int);
 
-#endif /* SDL_H */
+#endif // SDL_H