From e492d8720606c08d51166785221273ef1747d962 Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Mon, 12 Oct 2009 14:17:59 -0600 Subject: [PATCH] IGN:... --- src/calibre/gui2/__init__.py | 11 +++++++++-- src/calibre/gui2/wizard/__init__.py | 6 ++++-- 2 files changed, 13 insertions(+), 4 deletions(-) diff --git a/src/calibre/gui2/__init__.py b/src/calibre/gui2/__init__.py index 56dbe4fab6..32f7a32efa 100644 --- a/src/calibre/gui2/__init__.py +++ b/src/calibre/gui2/__init__.py @@ -508,14 +508,21 @@ class ResizableDialog(QDialog): gui_thread = None - +qt_app = None class Application(QApplication): def __init__(self, args): qargs = [i.encode('utf-8') if isinstance(i, unicode) else i for i in args] QApplication.__init__(self, qargs) - global gui_thread + global gui_thread, qt_app gui_thread = QThread.currentThread() + self._translator = None + self.load_translations() + qt_app = self + + def load_translations(self): + if self._translator is not None: + self.removeTranslator(self._translator) self._translator = QTranslator(self) if set_qt_translator(self._translator): self.installTranslator(self._translator) diff --git a/src/calibre/gui2/wizard/__init__.py b/src/calibre/gui2/wizard/__init__.py index 13222861ef..adde8c7fde 100644 --- a/src/calibre/gui2/wizard/__init__.py +++ b/src/calibre/gui2/wizard/__init__.py @@ -492,7 +492,9 @@ class LibraryPage(QWizardPage, LibraryUI): import __builtin__ __builtin__.__dict__['_'] = lambda(x): x from calibre.utils.localization import set_translators + from calibre.gui2 import qt_app set_translators() + qt_app.load_translations() self.emit(SIGNAL('retranslate()')) self.init_languages() @@ -627,7 +629,7 @@ def wizard(parent=None): return w if __name__ == '__main__': - from PyQt4.Qt import QApplication - app = QApplication([]) + from calibre.gui2 import Application + app = Application([]) wizard().exec_()