X-Git-Url: https://git.artsoft.org/?p=rocksndiamonds.git;a=blobdiff_plain;f=src%2Flibgame%2Fsystem.h;h=b6cea7b51ea2d38ed0d5fddae8174d9fa114521a;hp=009cbf81bc9dda05036e1ffaae98499be7ed3809;hb=00383dd409fde133c6738231abfcee662c03087c;hpb=6c674ccdd458314ced75459649c6acf1489b6056 diff --git a/src/libgame/system.h b/src/libgame/system.h index 009cbf81..b6cea7b5 100644 --- a/src/libgame/system.h +++ b/src/libgame/system.h @@ -85,6 +85,7 @@ /* values for touch control */ #define TOUCH_CONTROL_VIRTUAL_BUTTONS "virtual_buttons" #define TOUCH_CONTROL_WIPE_GESTURES "wipe_gestures" +#define TOUCH_CONTROL_FOLLOW_FINGER "follow_finger" #define TOUCH_CONTROL_DEFAULT TOUCH_CONTROL_VIRTUAL_BUTTONS @@ -92,9 +93,12 @@ #define TOUCH_DROP_DISTANCE_DEFAULT 5 -/* values for screen keyboard on mobile devices */ +/* values for special settings for mobile devices */ #if defined(PLATFORM_ANDROID) +#define USE_TOUCH_INPUT_OVERLAY +#define USE_COMPLETE_DISPLAY #define HAS_SCREEN_KEYBOARD +#define SCREEN_KEYBOARD_POS(h) ((h) / 2) #endif @@ -721,14 +725,6 @@ } -/* type definitions */ -#if defined(TARGET_SDL2) -typedef int (*EventFilter)(void *, Event *); -#else -typedef int (*EventFilter)(const Event *); -#endif - - /* structure definitions */ struct ProgramInfo @@ -794,6 +790,9 @@ struct VideoSystemInfo int default_depth; int width, height, depth; int window_width, window_height; + int display_width, display_height; + int screen_width, screen_height; + int screen_xoffset, screen_yoffset; boolean fullscreen_available; boolean fullscreen_enabled; @@ -808,6 +807,10 @@ struct VideoSystemInfo unsigned int frame_delay_value; boolean shifted_up; + int shifted_up_pos; + int shifted_up_pos_last; + unsigned int shifted_up_delay; + unsigned int shifted_up_delay_value; boolean initialized; }; @@ -909,6 +912,11 @@ struct GfxInfo int cursor_mode; }; +struct OverlayInfo +{ + boolean active; +}; + struct JoystickInfo { int status; @@ -1372,6 +1380,7 @@ extern struct OptionInfo options; extern struct VideoSystemInfo video; extern struct AudioSystemInfo audio; extern struct GfxInfo gfx; +extern struct OverlayInfo overlay; extern struct AnimInfo anim; extern struct ArtworkInfo artwork; extern struct JoystickInfo joystick; @@ -1426,6 +1435,9 @@ void InitGfxDrawGlobalAnimFunction(void (*draw_global_anim_function)(int, int)); void InitGfxDrawGlobalBorderFunction(void (*draw_global_border_function)(int)); void InitGfxCustomArtworkInfo(); void InitGfxOtherSettings(); +void InitOverlayInfo(); +void SetOverlayActive(boolean); +boolean GetOverlayActive(); void SetDrawDeactivationMask(int); void SetDrawBackgroundMask(int); void SetWindowBackgroundBitmap(Bitmap *); @@ -1488,7 +1500,6 @@ void OpenAudio(void); void CloseAudio(void); void SetAudioMode(boolean); -void InitEventFilter(EventFilter); boolean PendingEvent(void); void NextEvent(Event *event); void PeekEvent(Event *event); @@ -1496,7 +1507,7 @@ Key GetEventKey(KeyEvent *, boolean); KeyMod HandleKeyModState(Key, int); KeyMod GetKeyModState(); KeyMod GetKeyModStateFromEvents(); -void StartTextInput(int, int); +void StartTextInput(int, int, int, int); void StopTextInput(); boolean CheckCloseWindowEvent(ClientMessageEvent *);