X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Flibgame%2Fsystem.h;h=b9f65d149e19f77bffcc2b2aefc5ccc982ec461d;hb=cf0ff8143f99393006fc7ebdafd9616becf0ccc6;hp=b6c2ad3b465f74274944449c2886183a3b737731;hpb=3c53030b9e20c59004046274e94eff2ee90d0ab5;p=rocksndiamonds.git diff --git a/src/libgame/system.h b/src/libgame/system.h index b6c2ad3b..b9f65d14 100644 --- a/src/libgame/system.h +++ b/src/libgame/system.h @@ -24,6 +24,8 @@ #include "windows.h" #elif defined(PLATFORM_MSDOS) #include "msdos.h" +#elif defined(PLATFORM_ANDROID) +#include "android.h" #endif #if defined(TARGET_SDL) @@ -45,9 +47,18 @@ #define BLIT_INVERSE 2 #define BLIT_ON_BACKGROUND 3 +/* values for fullscreen status */ #define FULLSCREEN_NOT_AVAILABLE FALSE #define FULLSCREEN_AVAILABLE TRUE +/* values for window scaling */ +#define WINDOW_SCALING_NOT_AVAILABLE FALSE +#define WINDOW_SCALING_AVAILABLE TRUE + +#define MIN_WINDOW_SCALING_PERCENT 10 +#define STD_WINDOW_SCALING_PERCENT 100 +#define MAX_WINDOW_SCALING_PERCENT 300 + /* default input keys */ #define DEFAULT_KEY_LEFT KSYM_Left #define DEFAULT_KEY_RIGHT KSYM_Right @@ -644,7 +655,11 @@ /* type definitions */ +#if defined(TARGET_SDL2) +typedef int (*EventFilter)(void *, Event *); +#else typedef int (*EventFilter)(const Event *); +#endif /* structure definitions */ @@ -679,6 +694,7 @@ struct ProgramInfo int version_minor; int version_patch; + void (*exit_message_function)(char *, va_list); void (*exit_function)(int); }; @@ -721,6 +737,9 @@ struct VideoSystemInfo boolean fullscreen_enabled; struct ScreenModeInfo *fullscreen_modes; char *fullscreen_mode_current; + + boolean window_scaling_available; + int window_scaling_percent; }; struct AudioSystemInfo @@ -930,6 +949,7 @@ struct SetupInfo boolean time_limit; boolean fullscreen; char *fullscreen_mode; + int window_scaling_percent; boolean ask_on_escape; boolean ask_on_escape_editor; boolean quick_switch; @@ -1218,6 +1238,9 @@ extern DrawBuffer *drawto; extern int button_status; extern boolean motion_status; +#if defined(TARGET_SDL2) +extern boolean keyrepeat_status; +#endif extern int redraw_mask; extern int redraw_tiles; @@ -1230,6 +1253,7 @@ extern int FrameCounter; void InitProgramInfo(char *, char *, char *, char *, char *, char *, char *, char *, char *, char *, char *, char *, int); +void InitExitMessageFunction(void (*exit_message_function)(char *, va_list)); void InitExitFunction(void (*exit_function)(int)); void InitPlatformDependentStuff(void); void ClosePlatformDependentStuff(void);