X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Flibgame%2Fsystem.h;h=95076061b8f175cb6c167c25cd559f4675cad8aa;hb=6fd606e95cceca17c82e2f97e2ca2832b238f96d;hp=9f997cf16d63d7f6d4603389a880b7f67b259cfe;hpb=297ee9b33dab3bca9433befc81d7c7ce91450dd0;p=rocksndiamonds.git diff --git a/src/libgame/system.h b/src/libgame/system.h index 9f997cf1..95076061 100644 --- a/src/libgame/system.h +++ b/src/libgame/system.h @@ -47,9 +47,19 @@ #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 50 +#define STD_WINDOW_SCALING_PERCENT 100 +#define MAX_WINDOW_SCALING_PERCENT 300 +#define STEP_WINDOW_SCALING_PERCENT 10 + /* default input keys */ #define DEFAULT_KEY_LEFT KSYM_Left #define DEFAULT_KEY_RIGHT KSYM_Right @@ -723,11 +733,16 @@ struct VideoSystemInfo { int default_depth; int width, height, depth; + int window_width, window_height; boolean fullscreen_available; boolean fullscreen_enabled; + boolean fullscreen_initial; struct ScreenModeInfo *fullscreen_modes; char *fullscreen_mode_current; + + boolean window_scaling_available; + int window_scaling_percent; }; struct AudioSystemInfo @@ -937,6 +952,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; @@ -1182,6 +1198,7 @@ struct TextPosInfo int size; int font, font_alt; boolean draw_masked; + boolean draw_player; /* special case for network player buttons */ int sort_priority; int id; }; @@ -1259,6 +1276,8 @@ void SetWindowBackgroundBitmap(Bitmap *); void SetMainBackgroundBitmap(Bitmap *); void SetDoorBackgroundBitmap(Bitmap *); +void LimitScreenUpdates(boolean); + void InitVideoDisplay(void); void CloseVideoDisplay(void); void InitVideoBuffer(int, int, int, boolean);