Commit e81725978d5b09767f77ac4261700383601af474

Authored by tatiana
1 parent abb3cdf4

FIX: Error on linux2 when running from source and bin, and there is a new language in the source

Showing 2 changed files with 16 additions and 7 deletions   Show diff stats
invesalius/i18n.py
@@ -64,8 +64,11 @@ def GetLocaleOS(): @@ -64,8 +64,11 @@ def GetLocaleOS():
64 64
65 def InstallLanguage(language): 65 def InstallLanguage(language):
66 language_dir = os.path.abspath(os.path.join('..','locale')) 66 language_dir = os.path.abspath(os.path.join('..','locale'))
67 - lang = gettext.translation('invesalius', language_dir,\ 67 + if os.path.isdir(language_dir):
  68 + lang = gettext.translation('invesalius', language_dir,\
68 languages=[language], codeset='utf8') 69 languages=[language], codeset='utf8')
69 - # Using unicode  
70 - lang.install(unicode=1)  
71 - return lang.ugettext 70 + # Using unicode
  71 + lang.install(unicode=1)
  72 + return lang.ugettext
  73 + else:
  74 + return False
invesalius/invesalius.py
@@ -90,13 +90,19 @@ class SplashScreen(_SplashScreen): @@ -90,13 +90,19 @@ class SplashScreen(_SplashScreen):
90 create_session = True 90 create_session = True
91 91
92 # Check if there is a language set (if session file exists 92 # Check if there is a language set (if session file exists
93 - if session.ReadLanguage(): 93 + language_exist = session.ReadLanguage()
  94 +
  95 + if language_exist:
94 lang = session.GetLanguage() 96 lang = session.GetLanguage()
95 - _ = i18n.InstallLanguage(lang) 97 + install = i18n.InstallLanguage(lang)
  98 + if install:
  99 + _ = install
  100 + else:
  101 + language_exist = False
96 102
97 # If no language is set into session file, show dialog so 103 # If no language is set into session file, show dialog so
98 # user can select language 104 # user can select language
99 - else: 105 + if not language_exist:
100 dialog = lang_dlg.LanguageDialog() 106 dialog = lang_dlg.LanguageDialog()
101 107
102 # FIXME: This works ok in linux2, darwin and win32, 108 # FIXME: This works ok in linux2, darwin and win32,