fixed name of element 'beamer' to 'teleporter'
[rocksndiamonds.git] / src / config.c
index 2e90887055567ac070a36b5527d6ca98697dc473..fe40a69769a255ebb20c146f78c67193887fd6df 100644 (file)
@@ -15,9 +15,9 @@
 #include "conftime.h"
 
 
-char *getCompileDateString()
+char *getSourceDateString()
 {
-  return COMPILE_DATE_STRING;
+  return SOURCE_DATE_STRING;
 }
 
 char *getProgramTitleString()
@@ -25,7 +25,7 @@ char *getProgramTitleString()
   return program.program_title;
 }
 
-char *getProgramVersionString()
+char *getProgramRealVersionString()
 {
   static char program_version_string[32];
 
@@ -36,6 +36,11 @@ char *getProgramVersionString()
   return program_version_string;
 }
 
+char *getProgramVersionString()
+{
+  return program.version_string;
+}
+
 char *getProgramInitString()
 {
   static char *program_init_string = NULL;
@@ -52,6 +57,42 @@ char *getProgramInitString()
   return program_init_string;
 }
 
+char *getConfigProgramTitleString()
+{
+  TreeInfo *graphics_current =
+    getArtworkTreeInfoForUserLevelSet(ARTWORK_TYPE_GRAPHICS);
+
+  return (leveldir_current->program_title ?
+         leveldir_current->program_title :
+         graphics_current->program_title ?
+         graphics_current->program_title :
+         setup.internal.program_title);
+}
+
+char *getConfigProgramCopyrightString()
+{
+  TreeInfo *graphics_current =
+    getArtworkTreeInfoForUserLevelSet(ARTWORK_TYPE_GRAPHICS);
+
+  return (leveldir_current->program_copyright ?
+         leveldir_current->program_copyright :
+         graphics_current->program_copyright ?
+         graphics_current->program_copyright :
+         setup.internal.program_copyright);
+}
+
+char *getConfigProgramCompanyString()
+{
+  TreeInfo *graphics_current =
+    getArtworkTreeInfoForUserLevelSet(ARTWORK_TYPE_GRAPHICS);
+
+  return (leveldir_current->program_company ?
+         leveldir_current->program_company :
+         graphics_current->program_company ?
+         graphics_current->program_company :
+         setup.internal.program_company);
+}
+
 char *getWindowTitleString()
 {
   static char *window_title_string = NULL;
@@ -62,26 +103,35 @@ char *getWindowTitleString()
 
 #ifdef DEBUG
   window_title_string = checked_malloc(strlen(getProgramInitString()) + 20 +
-                                      strlen(getCompileDateString()) + 2 + 1);
-
-  sprintf(window_title_string, "%s (%d %%) [%s]",
-         getProgramInitString(), setup.window_scaling_percent,
-         getCompileDateString());
+                                      strlen(getSourceDateString()) + 2 + 1);
+
+  if (setup.internal.show_scaling_in_title)
+    sprintf(window_title_string, "%s (%d %%) [%s]",
+           getProgramInitString(), video.window_scaling_percent,
+           getSourceDateString());
+  else
+    sprintf(window_title_string, "%s [%s]",
+           getProgramInitString(),
+           getSourceDateString());
 #else
   window_title_string = checked_malloc(strlen(getProgramInitString()) + 20);
 
-  sprintf(window_title_string, "%s (%d %%)",
-         getProgramInitString(), setup.window_scaling_percent);
+  if (setup.internal.show_scaling_in_title)
+    sprintf(window_title_string, "%s (%d %%)",
+           getProgramInitString(), video.window_scaling_percent);
+  else
+    sprintf(window_title_string, "%s",
+           getProgramInitString());
 #endif
 
 #else
 
 #ifdef DEBUG
   window_title_string = checked_malloc(strlen(getProgramInitString()) + 1 +
-                                      strlen(getCompileDateString()) + 2 + 1);
+                                      strlen(getSourceDateString()) + 2 + 1);
 
   sprintf(window_title_string, "%s [%s]",
-         getProgramInitString(), getCompileDateString());
+         getProgramInitString(), getSourceDateString());
 #else
   window_title_string = checked_malloc(strlen(getProgramInitString()) + 1);