changed experimental drag and drop code to be only used in debug mode
[rocksndiamonds.git] / src / libgame / system.h
index 04d97974f907963090f2e482b949c5b4bf49be4c..d3f518ed3b17c2f1e31ef4293f6ae500a00775d8 100644 (file)
 
 #define ERROR_BASENAME         "stderr.txt"
 
+#define STRING_PARENT_DIRECTORY                ".."
+#define STRING_TOP_DIRECTORY           "/"
+
 #define CHAR_PATH_SEPARATOR_UNIX       '/'
 #define CHAR_PATH_SEPARATOR_DOS                '\\'
 
@@ -729,6 +732,8 @@ struct VideoSystemInfo
   boolean window_scaling_available;
   int window_scaling_percent;
   char *window_scaling_quality;
+
+  boolean initialized;
 };
 
 struct AudioSystemInfo
@@ -788,6 +793,8 @@ struct GfxInfo
   int draw_deactivation_mask;
   int draw_background_mask;
 
+  boolean drawing_area_changed;
+
   Bitmap *field_save_buffer;
 
   Bitmap *background_bitmap;
@@ -811,6 +818,8 @@ struct GfxInfo
   int anim_random_frame;
 
   void (*draw_busy_anim_function)(void);
+
+  int cursor_mode;
 };
 
 struct JoystickInfo
@@ -1202,13 +1211,15 @@ struct DoorPartPosInfo
 struct TextPosInfo
 {
   int x, y;
+  int xoffset;                 /* special case for tape date and time */
+  int xoffset2;                        /* special case for tape date */
   int width, height;
   int align, valign;
-  int size;
+  int size;                    /* also used for suffix ".digits" */
   int font, font_alt;
   boolean draw_masked;
   boolean draw_player;         /* special case for network player buttons */
-  int sort_priority;
+  int sort_priority;           /* also used for suffix ".draw_order" */
   int id;
 };
 
@@ -1279,6 +1290,7 @@ void InitGfxScrollbufferInfo(int, int);
 void InitGfxClipRegion(boolean, int, int, int, int);
 void InitGfxDrawBusyAnimFunction(void (*draw_busy_anim_function)(void));
 void InitGfxCustomArtworkInfo();
+void InitGfxOtherSettings();
 void SetDrawDeactivationMask(int);
 void SetDrawBackgroundMask(int);
 void SetWindowBackgroundBitmap(Bitmap *);
@@ -1303,6 +1315,7 @@ void ClearRectangle(Bitmap *, int, int, int, int);
 void ClearRectangleOnBackground(Bitmap *, int, int, int, int);
 void BlitBitmapMasked(Bitmap *, Bitmap *, int, int, int, int, int, int);
 boolean DrawingOnBackground(int, int);
+boolean DrawingAreaChanged();
 void BlitBitmapOnBackground(Bitmap *, Bitmap *, int, int, int, int, int, int);
 void DrawSimpleBlackLine(Bitmap *, int, int, int, int);
 void DrawSimpleWhiteLine(Bitmap *, int, int, int, int);