added option for window icon file to run-time special edition support
[rocksndiamonds.git] / src / libgame / system.c
index eec5d192960ac9e784d5232ad8e47ef5ccb90dc1..1088f17cc657b5c7229eb2b6bcebc47a76f18a43 100644 (file)
@@ -64,15 +64,17 @@ int                 FrameCounter = 0;
 /* init/close functions                                                      */
 /* ========================================================================= */
 
-void InitProgramInfo(char *argv0,
+void InitProgramInfo(char *argv0, char *config_filename,
                     char *userdata_subdir, char *userdata_subdir_unix,
                     char *program_title, char *icon_title,
-                    char *sdl_icon_filename, char *cookie_prefix,
+                    char *icon_filename, char *cookie_prefix,
                     int program_version)
 {
   program.command_basepath = getBasePath(argv0);
   program.command_basename = getBaseName(argv0);
 
+  program.config_filename = config_filename;
+
   program.userdata_subdir = userdata_subdir;
   program.userdata_subdir_unix = userdata_subdir_unix;
   program.userdata_path = getUserGameDataDir();
@@ -81,7 +83,7 @@ void InitProgramInfo(char *argv0,
   program.window_title = "(undefined)";
   program.icon_title = icon_title;
 
-  program.sdl_icon_filename = sdl_icon_filename;
+  program.icon_filename = icon_filename;
 
   program.cookie_prefix = cookie_prefix;
 
@@ -247,6 +249,11 @@ void InitGfxCustomArtworkInfo()
   gfx.draw_init_text = TRUE;
 }
 
+void InitGfxOtherSettings()
+{
+  gfx.cursor_mode = CURSOR_DEFAULT;
+}
+
 void SetDrawDeactivationMask(int draw_deactivation_mask)
 {
   gfx.draw_deactivation_mask = draw_deactivation_mask;
@@ -356,6 +363,8 @@ void InitVideoBuffer(int width, int height, int depth, boolean fullscreen)
 
   SDLInitVideoBuffer(&backbuffer, &window, fullscreen);
 
+  video.initialized = TRUE;
+
   drawto = backbuffer;
 }
 
@@ -1262,6 +1271,8 @@ void SetMouseCursor(int mode)
                mode == CURSOR_PLAYFIELD ? cursor_playfield : NULL);
 
   SDLSetMouseCursor(cursor_new);
+
+  gfx.cursor_mode = mode;
 }