by
Changes to 6 files · Browse files at bf1160f429d7 Showing diff from parent 7ab0112dbd39 9ccf60504e07 Diff from another changeset...
@@ -43,6 +43,7 @@ demandimport.ignore.append('win32com.shell')
demandimport.ignore.append('tortoisehg.util.config')
demandimport.ignore.append('icons_rc')
+demandimport.ignore.append('translations_rc')
demandimport.enable()
# Verify we can reach TortoiseHg sources first
|
@@ -1,2 +1,8 @@ # load icon resources
import icons_rc
+
+# load Qt translations for frozen environment
+try:
+ import translations_rc
+except ImportError:
+ pass
|
@@ -492,6 +492,13 @@ assert name in _fontdefaults
return _fontcache[name]
+def gettranslationpath():
+ """Return path to Qt's translation file (.qm)"""
+ if getattr(sys, 'frozen', False):
+ return ':/translations'
+ else:
+ return QLibraryInfo.location(QLibraryInfo.TranslationsPath)
+
def CommonMsgBox(icon, title, main, text='', buttons=QMessageBox.Ok,
labels=[], parent=None, defaultbutton=None):
msg = QMessageBox(parent)
|
@@ -464,6 +464,7 @@ self._mainapp.setOrganizationName('TortoiseHg')
self._mainapp.setOrganizationDomain('tortoisehg.org')
self._mainapp.setApplicationVersion(thgversion.version())
+ self._installtranslator()
qtlib.setup_font_substitutions()
qtlib.fix_application_font()
qtlib.configstyles(ui)
@@ -497,6 +498,13 @@ finally:
self._mainapp = None
+ def _installtranslator(self):
+ if not i18n.language:
+ return
+ t = QTranslator(self._mainapp)
+ t.load('qt_' + i18n.language, qtlib.gettranslationpath())
+ self._mainapp.installTranslator(t)
+
def _opendialog(self, dlgfunc, ui, *args, **opts):
dlg = dlgfunc(ui, *args, **opts)
if not dlg:
|
@@ -30,7 +30,7 @@
def setlanguage(lang=None):
"""Change translation catalog to the specified language"""
- global t
+ global t, language
if not lang:
lang = _defaultlanguage()
opts = {}
@@ -38,6 +38,7 @@ opts['languages'] = (lang,)
t = gettext.translation('tortoisehg', paths.get_locale_path(),
fallback=True, **opts)
+ language = lang or locale.getdefaultlocale(_localeenvs)[0]
setlanguage()
def availablelanguages():
|
Loading...