X-Git-Url: https://git.artsoft.org/?p=rocksndiamonds.git;a=blobdiff_plain;f=src%2Fconfig.c;h=8c4f1b5a8602e10069126e582d721b170f419b8a;hp=c812adfdbfd148588e2f4af3727e4b99d9e3cb6c;hb=f37c86753d5005bf7ae341d0cbcc15ef75393567;hpb=e6e40967d3a828e2a106b3445e9940f507905381 diff --git a/src/config.c b/src/config.c index c812adfd..8c4f1b5a 100644 --- a/src/config.c +++ b/src/config.c @@ -1,15 +1,13 @@ -/*********************************************************** -* Rocks'n'Diamonds -- McDuffin Strikes Back! * -*----------------------------------------------------------* -* (c) 1995-2006 Artsoft Entertainment * -* Holger Schemel * -* Detmolder Strasse 189 * -* 33604 Bielefeld * -* Germany * -* e-mail: info@artsoft.org * -*----------------------------------------------------------* -* config.c * -***********************************************************/ +// ============================================================================ +// Rocks'n'Diamonds - McDuffin Strikes Back! +// ---------------------------------------------------------------------------- +// (c) 1995-2014 by Artsoft Entertainment +// Holger Schemel +// info@artsoft.org +// http://www.artsoft.org/ +// ---------------------------------------------------------------------------- +// config.c +// ============================================================================ #include "libgame/libgame.h" @@ -17,89 +15,112 @@ #include "conftime.h" -#define USE_EXTENDED_VERSION 1 - - -char *getCompileDateString() +char *getSourceDateString(void) { - return COMPILE_DATE_STRING; + return SOURCE_DATE_STRING; } -char *getProgramReleaseVersionString() +char *getProgramTitleString(void) { - static char program_version_string[32]; - -#if USE_EXTENDED_VERSION - sprintf(program_version_string, "%d.%d.%d.%d", - PROGRAM_VERSION_MAJOR, PROGRAM_VERSION_MINOR, PROGRAM_VERSION_PATCH, - PROGRAM_VERSION_BUILD); -#else - sprintf(program_version_string, "%d.%d.%d", - PROGRAM_VERSION_MAJOR, PROGRAM_VERSION_MINOR, PROGRAM_VERSION_PATCH); -#endif - - return program_version_string; + return program.program_title; } -char *getProgramFullVersionString() +char *getProgramRealVersionString(void) { static char program_version_string[32]; -#if USE_EXTENDED_VERSION - sprintf(program_version_string, "%d.%d.%d.%d", - PROGRAM_VERSION_MAJOR, PROGRAM_VERSION_MINOR, PROGRAM_VERSION_PATCH, - PROGRAM_VERSION_BUILD); -#else - sprintf(program_version_string, "%d.%d.%d-%d", - PROGRAM_VERSION_MAJOR, PROGRAM_VERSION_MINOR, PROGRAM_VERSION_PATCH, - PROGRAM_VERSION_BUILD); -#endif + sprintf(program_version_string, "%d.%d.%d.%d%s", + PROGRAM_VERSION_SUPER, PROGRAM_VERSION_MAJOR, PROGRAM_VERSION_MINOR, + PROGRAM_VERSION_PATCH, PROGRAM_VERSION_EXTRA); return program_version_string; } -char *getProgramVersionString() +char *getProgramVersionString(void) { -#ifdef DEBUG - return getProgramFullVersionString(); -#else - return getProgramReleaseVersionString(); -#endif + return program.version_string; } -char *getProgramInitString() +char *getProgramInitString(void) { static char *program_init_string = NULL; if (program_init_string == NULL) { - program_init_string = checked_malloc(strlen(PROGRAM_TITLE_STRING) + 1 + - strlen(getProgramVersionString()) +1 + - strlen(TARGET_STRING) + 1); + program_init_string = checked_malloc(strlen(getProgramTitleString()) + 1 + + strlen(getProgramVersionString()) + 1); - sprintf(program_init_string, "%s %s %s", - PROGRAM_TITLE_STRING, getProgramVersionString(), TARGET_STRING); + sprintf(program_init_string, "%s %s", + getProgramTitleString(), getProgramVersionString()); } return program_init_string; } -char *getWindowTitleString() +char *getConfigProgramTitleString(void) +{ + 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(void) +{ + 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(void) +{ + 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(void) { -#ifdef DEBUG static char *window_title_string = NULL; - if (window_title_string == NULL) - { - window_title_string = checked_malloc(strlen(getProgramInitString()) + 1 + - strlen(getCompileDateString()) + 2 +1); + checked_free(window_title_string); +#ifdef DEBUG + window_title_string = checked_malloc(strlen(getProgramInitString()) + 20 + + 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(), getCompileDateString()); - } - - return window_title_string; + getProgramInitString(), + getSourceDateString()); #else - return getProgramInitString(); + window_title_string = checked_malloc(strlen(getProgramInitString()) + 20); + + 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 + + return window_title_string; }