Commit 71dc3176a64a4073eda20cd6e2d830170a35f3e9
1 parent
9d98bc74
Exists in
master
and in
68 other branches
FIX: Window showing the selection of languages before the splash screen and after FIX#91
Showing
2 changed files
with
46 additions
and
19 deletions
Show diff stats
invesalius/invesalius.py
... | ... | @@ -48,11 +48,9 @@ class SplashScreen(wx.SplashScreen): |
48 | 48 | |
49 | 49 | session = Session() |
50 | 50 | if not (session.ReadSession()): |
51 | - session.CreateItens() | |
51 | + session.CreateItens() | |
52 | 52 | |
53 | - lang = session.GetLanguage() | |
54 | - | |
55 | - if not(lang): | |
53 | + if not(session.ReadLanguage()): | |
56 | 54 | |
57 | 55 | ldlg = lang_dlg.LanguageDialog() |
58 | 56 | |
... | ... | @@ -67,6 +65,7 @@ class SplashScreen(wx.SplashScreen): |
67 | 65 | _ = i18n.InstallLanguage(lang) |
68 | 66 | |
69 | 67 | else: |
68 | + lang = session.GetLanguage() | |
70 | 69 | _ = i18n.InstallLanguage(lang) |
71 | 70 | |
72 | 71 | if (lang.startswith('pt')): #Necessy, pt noted as pt_BR |
... | ... | @@ -105,22 +104,14 @@ class SplashScreen(wx.SplashScreen): |
105 | 104 | self.fc.Stop() |
106 | 105 | |
107 | 106 | session = Session() |
108 | - if not (session.ReadSession()): | |
109 | - session.CreateItens() | |
110 | - | |
107 | + #if not (session.ReadSession()): | |
108 | + # session.CreateItens() | |
109 | + | |
111 | 110 | lang = session.GetLanguage() |
111 | + print lang | |
112 | 112 | |
113 | - if not(lang): | |
114 | - | |
115 | - ldlg = lang_dlg.LanguageDialog() | |
116 | - if (ldlg.ShowModal() == wx.ID_OK): | |
117 | - lang = ldlg.GetSelectedLanguage() | |
118 | - session.SetLanguage(lang) | |
119 | - i18n.InstallLanguage(lang) | |
120 | - self.ShowMain() | |
121 | - else: | |
122 | - i18n.InstallLanguage(lang) | |
123 | - self.ShowMain() | |
113 | + i18n.InstallLanguage(lang) | |
114 | + self.ShowMain() | |
124 | 115 | |
125 | 116 | |
126 | 117 | def ShowMain(self): | ... | ... |
invesalius/session.py
... | ... | @@ -17,7 +17,7 @@ class Session(object): |
17 | 17 | def __init__(self): |
18 | 18 | # ? |
19 | 19 | self.temp_item = False |
20 | - | |
20 | + | |
21 | 21 | ws = self.ws = WriteSession(self) |
22 | 22 | ws.start() |
23 | 23 | |
... | ... | @@ -48,6 +48,8 @@ class Session(object): |
48 | 48 | # Recent projects list |
49 | 49 | self.recent_projects = [] |
50 | 50 | |
51 | + self.CreateSessionFile() | |
52 | + | |
51 | 53 | def StopRecording(self, pubsub_evt): |
52 | 54 | self.ws.Stop() |
53 | 55 | |
... | ... | @@ -96,6 +98,28 @@ class Session(object): |
96 | 98 | path = os.path.join(dirpath, file) |
97 | 99 | os.remove(path) |
98 | 100 | self.temp_item = False |
101 | + | |
102 | + def CreateSessionFile(self): | |
103 | + | |
104 | + config = ConfigParser.RawConfigParser() | |
105 | + | |
106 | + config.add_section('session') | |
107 | + config.set('session', 'mode', self.mode) | |
108 | + config.set('session', 'status', self.project_status) | |
109 | + config.set('session','debug', self.debug) | |
110 | + config.set('session', 'language', self.language) | |
111 | + | |
112 | + config.add_section('project') | |
113 | + config.set('project', 'recent_projects', self.recent_projects) | |
114 | + | |
115 | + config.add_section('paths') | |
116 | + config.set('paths','homedir',self.homedir) | |
117 | + config.set('paths','tempdir',self.tempdir) | |
118 | + path = os.path.join(self.homedir , | |
119 | + '.invesalius', 'config.cfg') | |
120 | + configfile = open(path, 'wb') | |
121 | + config.write(configfile) | |
122 | + configfile.close() | |
99 | 123 | |
100 | 124 | |
101 | 125 | def __add_to_list(self, item): |
... | ... | @@ -133,6 +157,17 @@ class Session(object): |
133 | 157 | def SetLanguage(self, language): |
134 | 158 | self.language = language |
135 | 159 | |
160 | + def ReadLanguage(self): | |
161 | + config = ConfigParser.ConfigParser() | |
162 | + home_path = os.path.expanduser('~') | |
163 | + path = os.path.join(home_path ,'.invesalius', 'config.cfg') | |
164 | + try: | |
165 | + config.read(path) | |
166 | + self.language = config.get('session','language') | |
167 | + return self.language | |
168 | + except(ConfigParser.NoSectionError, ConfigParser.NoOptionError): | |
169 | + return False | |
170 | + | |
136 | 171 | def ReadSession(self): |
137 | 172 | |
138 | 173 | config = ConfigParser.ConfigParser() |
... | ... | @@ -151,6 +186,7 @@ class Session(object): |
151 | 186 | except(ConfigParser.NoSectionError, ConfigParser.NoOptionError): |
152 | 187 | return False |
153 | 188 | |
189 | + | |
154 | 190 | class WriteSession(Thread): |
155 | 191 | |
156 | 192 | def __init__ (self, session): | ... | ... |