diff options
author | rubidium <rubidium@openttd.org> | 2009-10-17 20:34:09 +0000 |
---|---|---|
committer | rubidium <rubidium@openttd.org> | 2009-10-17 20:34:09 +0000 |
commit | d5d23542960c5c090c4b7593d156a008b3d84914 (patch) | |
tree | 6f9b9dea08f72511637e41f43acf6ff6d55ccc73 /src/base_media_func.h | |
parent | f7944f555441182dc07f30725c9ec8962582418b (diff) | |
download | openttd-d5d23542960c5c090c4b7593d156a008b3d84914.tar.xz |
(svn r17790) -Feature: translatable base sound/graphics set descriptions
Diffstat (limited to 'src/base_media_func.h')
-rw-r--r-- | src/base_media_func.h | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/src/base_media_func.h b/src/base_media_func.h index 40d154d65..df49f0b1b 100644 --- a/src/base_media_func.h +++ b/src/base_media_func.h @@ -40,7 +40,14 @@ bool BaseSet<T, Tnum_files>::FillSetDetails(IniFile *ini, const char *path) this->name = strdup(item->value); fetch_metadata("description"); - this->description = strdup(item->value); + this->description[strdup("")] = strdup(item->value); + + /* Add the translations of the descriptions too. */ + for (const IniItem *item = metadata->item; item != NULL; item = item->next) { + if (strncmp("description.", item->name, 12) != 0) continue; + + this->description[strdup(item->name + 12)] = strdup(item->value); + } fetch_metadata("shortname"); for (uint i = 0; item->value[i] != '\0' && i < 4; i++) { @@ -213,7 +220,7 @@ template <class Tbase_set> { p += seprintf(p, last, "List of " SET_TYPE " sets:\n"); for (const Tbase_set *s = BaseMedia<Tbase_set>::available_sets; s != NULL; s = s->next) { - p += seprintf(p, last, "%18s: %s", s->name, s->description); + p += seprintf(p, last, "%18s: %s", s->name, s->GetDescription()); int invalid = s->GetNumInvalid(); if (invalid != 0) { int missing = s->GetNumMissing(); |