X-Git-Url: https://git.artsoft.org/?p=rocksndiamonds.git;a=blobdiff_plain;f=src%2Fconfig.c;h=8a7a5c5bb0ca1cc40265a3e3a154138fe212550b;hp=e44e8348c25a946890cb6d291dad8ef9ba398a75;hb=HEAD;hpb=abe44529b439ad39b4d8dbf19cbd67c9b9844279 diff --git a/src/config.c b/src/config.c index e44e8348..8a7a5c5b 100644 --- a/src/config.c +++ b/src/config.c @@ -4,7 +4,7 @@ // (c) 1995-2014 by Artsoft Entertainment // Holger Schemel // info@artsoft.org -// http://www.artsoft.org/ +// https://www.artsoft.org/ // ---------------------------------------------------------------------------- // config.c // ============================================================================ @@ -13,128 +13,125 @@ #include "config.h" #include "conftime.h" +#include "confhash.h" -#define USE_EXTENDED_VERSION 1 +char *getSourceDateString(void) +{ + return SOURCE_DATE_STRING; +} +char *getSourceHashString(void) +{ + return SOURCE_HASH_STRING; +} -char *getCompileDateString() +char *getProgramTitleString(void) { - return COMPILE_DATE_STRING; + return program.program_title; } -char *getProgramReleaseVersionString() +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", - PROGRAM_VERSION_MAJOR, PROGRAM_VERSION_MINOR, PROGRAM_VERSION_PATCH); -#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 *getProgramFullVersionString() +char *getProgramVersionString(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 - - return program_version_string; + return program.version_string; } -char *getProgramVersionString() +char *getProgramPlatformString(void) { -#ifdef DEBUG - return getProgramFullVersionString(); -#else - return getProgramReleaseVersionString(); -#endif + return PLATFORM_STRING; } -char *getProgramInitString() +char *getProgramInitString(void) { static char *program_init_string = NULL; -#if 1 - // do not display compile target anymore, as it is almost always "SDL" now if (program_init_string == NULL) { - program_init_string = checked_malloc(strlen(PROGRAM_TITLE_STRING) + 1 + + program_init_string = checked_malloc(strlen(getProgramTitleString()) + 1 + strlen(getProgramVersionString()) + 1); sprintf(program_init_string, "%s %s", - PROGRAM_TITLE_STRING, getProgramVersionString()); - } -#else - if (program_init_string == NULL) - { - program_init_string = checked_malloc(strlen(PROGRAM_TITLE_STRING) + 1 + - strlen(getProgramVersionString()) + 1 + - strlen(TARGET_STRING) + 1); - - sprintf(program_init_string, "%s %s %s", - PROGRAM_TITLE_STRING, getProgramVersionString(), TARGET_STRING); + getProgramTitleString(), getProgramVersionString()); } -#endif 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) { -#if 1 static char *window_title_string = NULL; checked_free(window_title_string); #ifdef DEBUG window_title_string = checked_malloc(strlen(getProgramInitString()) + 20 + - strlen(getCompileDateString()) + 2 + 1); + strlen(getSourceDateString()) + 2 + 1); - sprintf(window_title_string, "%s (%d %%) [%s]", - getProgramInitString(), setup.window_scaling_percent, - getCompileDateString()); + 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 return window_title_string; - -#else - -#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); - - sprintf(window_title_string, "%s [%s]", - getProgramInitString(), getCompileDateString()); - } - - return window_title_string; -#else - return getProgramInitString(); -#endif - -#endif }