From b6289db8a859cccaf393e97654beb2f131e1601b Mon Sep 17 00:00:00 2001 From: Jon Tibble Date: Thu, 5 Nov 2009 16:29:49 +0000 Subject: [PATCH 1/2] Slightly improve i18n script --- openlp-get-strings.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/openlp-get-strings.py b/openlp-get-strings.py index 2af5e476b..e53924b02 100644 --- a/openlp-get-strings.py +++ b/openlp-get-strings.py @@ -42,7 +42,7 @@ ts_message = u""" """ -find_trUtf8 = re.compile(r"trUtf8\(u'([\w]+)'\)", re.UNICODE) +find_trUtf8 = re.compile(r"trUtf8\(u'([\.:;\\&\w]+)'\)", re.UNICODE) strings = {} def parse_file(filename): @@ -83,7 +83,7 @@ def write_file(filename): file.close() def main(): - start_dir = u'/home/raoul/Projects/openlp/i18n' + start_dir = u'.' for root, dirs, files in os.walk(start_dir): for file in files: if file.endswith(u'.py'): From 74b08cb9c4514d07dde42fc39f77291dbee2d12b Mon Sep 17 00:00:00 2001 From: Jon Tibble Date: Fri, 6 Nov 2009 02:12:56 +0000 Subject: [PATCH 2/2] Clean theme loading --- openlp/core/ui/amendthemeform.py | 11 ++--------- openlp/core/ui/thememanager.py | 24 ++++++++++++------------ 2 files changed, 14 insertions(+), 21 deletions(-) diff --git a/openlp/core/ui/amendthemeform.py b/openlp/core/ui/amendthemeform.py index 2723c17d8..c66eb5199 100644 --- a/openlp/core/ui/amendthemeform.py +++ b/openlp/core/ui/amendthemeform.py @@ -28,7 +28,7 @@ import os.path from PyQt4 import QtCore, QtGui -from openlp.core.lib import ThemeXML, file_to_xml +from openlp.core.lib import ThemeXML from amendthemedialog import Ui_AmendThemeDialog log = logging.getLogger(u'AmendThemeForm') @@ -184,14 +184,7 @@ class AmendThemeForm(QtGui.QDialog, Ui_AmendThemeDialog): def loadTheme(self, theme): log.debug(u'LoadTheme %s', theme) - if theme is None: - self.theme.parse(self.thememanager.baseTheme()) - else: - xml_file = os.path.join(self.path, theme, theme + u'.xml') - xml = file_to_xml(xml_file) - self.theme.parse(xml) - self.theme.extend_image_filename(self.path) - self.thememanager.cleanTheme(self.theme) + self.theme = self.thememanager.getThemeData(theme) # Stop the initial screen setup generating 1 preview per field! self.allowPreview = False self.paintUi(self.theme) diff --git a/openlp/core/ui/thememanager.py b/openlp/core/ui/thememanager.py index 44ac83043..50b40f11f 100644 --- a/openlp/core/ui/thememanager.py +++ b/openlp/core/ui/thememanager.py @@ -269,18 +269,14 @@ class ThemeManager(QtGui.QWidget): return self.themelist def getThemeData(self, themename): + assert(themename) log.debug(u'getthemedata for theme %s', themename) xml_file = os.path.join(self.path, unicode(themename), unicode(themename) + u'.xml') - try: - xml = file_to_xml(xml_file) - except: + xml = file_to_xml(xml_file) + if not xml: xml = self.baseTheme() - theme = ThemeXML() - theme.parse(xml) - self.cleanTheme(theme) - theme.extend_image_filename(self.path) - return theme + return createThemeFromXml(xml, self.path) def checkThemesExists(self, dir): log.debug(u'check themes') @@ -428,10 +424,7 @@ class ThemeManager(QtGui.QWidget): def generateAndSaveImage(self, dir, name, theme_xml): log.debug(u'generateAndSaveImage %s %s %s', dir, name, theme_xml) - theme = ThemeXML() - theme.parse(theme_xml) - self.cleanTheme(theme) - theme.extend_image_filename(dir) + theme = self.createThemeFromXml(theme_xml, dir) frame = self.generateImage(theme) samplepathname = os.path.join(self.path, name + u'.png') if os.path.exists(samplepathname): @@ -465,6 +458,13 @@ class ThemeManager(QtGui.QWidget): unicode(u'#FFFFFF'), unicode(0), unicode(0), unicode(0)) return newtheme.extract_xml() + def createThemeFromXml(self, theme_xml, path): + theme = ThemeXML() + theme.parse(theme_xml) + self.cleanTheme(theme) + theme.extend_image_filename(path) + return theme + def cleanTheme(self, theme): theme.background_color = theme.background_color.strip() theme.background_direction = theme.background_direction.strip()