From ff05dc844633aeb3b473ec403207beb6e63954bc Mon Sep 17 00:00:00 2001 From: rubidium Date: Thu, 23 Apr 2009 21:05:00 +0000 Subject: (svn r16129) -Feature-ish: configurable digit group separator per language with user override. --- src/strings.cpp | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) (limited to 'src/strings.cpp') diff --git a/src/strings.cpp b/src/strings.cpp index b2e31116c..9ba0a6e7c 100644 --- a/src/strings.cpp +++ b/src/strings.cpp @@ -217,7 +217,9 @@ static char *FormatNumber(char *buff, int64 number, const char *last, const char static char *FormatCommaNumber(char *buff, int64 number, const char *last) { - return FormatNumber(buff, number, last, ","); + const char *separator = _settings_game.locale.digit_group_separator; + if (separator == NULL) separator = _langpack->digit_group_separator; + return FormatNumber(buff, number, last, separator); } static char *FormatNoCommaNumber(char *buff, int64 number, const char *last) @@ -333,8 +335,13 @@ static char *FormatGenericCurrency(char *buff, const CurrencySpec *spec, Money n } } - char sep[2] = { spec->separator, '\0' }; - buff = FormatNumber(buff, number, last, sep); + const char *separator = _settings_game.locale.digit_group_separator_currency; + if (separator == NULL && _currency->separator != '\0') { + static char sep[] = { _currency->separator, '\0' }; + separator = sep; + } + if (separator == NULL) separator = _langpack->digit_group_separator_currency; + buff = FormatNumber(buff, number, last, separator); buff = strecpy(buff, multiplier, last); /* Add suffix part, folowing symbol_pos specification. -- cgit v1.2.3-70-g09d2