From 19fe8463d4ce81ea1c11c2cf0b65e4bc4151c527 Mon Sep 17 00:00:00 2001 From: Jan Nieuwenhuizen Date: Mon, 12 Apr 2010 20:46:30 +0200 Subject: [PATCH] translation-status.py: Use factory for [Un]TranslatedTely. This enables creation of Top/Included tely polymorphy. --- scripts/auxiliar/translations-status.py | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/scripts/auxiliar/translations-status.py b/scripts/auxiliar/translations-status.py index 4cf7d9ddbd..3469c65f35 100755 --- a/scripts/auxiliar/translations-status.py +++ b/scripts/auxiliar/translations-status.py @@ -456,18 +456,12 @@ class MasterTelyDocument (TelyDocument): if not self.language or self.language == 'en': languages = [x for x in parent_translations.keys () if x != 'en'] for lang in languages: - if os.path.exists (translations[lang]): - found[lang] = True - self.translations[lang] = TranslatedTelyDocument (translations[lang], - self, - parent_translations.get (lang)) - else: - self.translations[lang] = UntranslatedTelyDocument (translations[lang], - self, - parent_translations.get (lang)) + self.translations[lang] = self.translated_factory (translations[lang], + parent_translations.get (lang)) + found[lang] = not isinstance (self.translations[lang], UntranslatedTelyDocument) if self.top: for lang in [x for x in langdefs.LANGDICT if x and x != 'en']: - if not found.has_key (lang): + if not found.get (lang, False): del self.translations[lang] if self.translations: @@ -476,6 +470,12 @@ class MasterTelyDocument (TelyDocument): else: self.includes = [] + def translated_factory (self, filename, parent): + if os.path.exists (filename): + return TranslatedTelyDocument (filename, self, parent) + else: + return UntranslatedTelyDocument (filename, self, parent) + def update_word_counts (self, s): s = update_word_count (s, self.filename, sum (self.word_count)) for i in self.includes: -- 2.39.5