Commit 2348f76ba6e35166af8b19f474013d320376d16c

Authored by Paulo Henrique Junqueira Amorim
1 parent 5879ee96

ADD: add "_" before string terms, reffer ticket fix #52

invesalius/gui/data_notebook.py
@@ -39,10 +39,10 @@ class NotebookPanel(wx.Panel): @@ -39,10 +39,10 @@ class NotebookPanel(wx.Panel):
39 if sys.platform != 'win32': 39 if sys.platform != 'win32':
40 book.SetWindowVariant(wx.WINDOW_VARIANT_SMALL) 40 book.SetWindowVariant(wx.WINDOW_VARIANT_SMALL)
41 41
42 - book.AddPage(MasksListCtrlPanel(book), "Masks")  
43 - book.AddPage(SurfacesListCtrlPanel(book), "Surfaces")  
44 - book.AddPage(MeasuresListCtrlPanel(book), "Measures")  
45 - book.AddPage(AnnotationsListCtrlPanel(book), "Annotations") 42 + book.AddPage(MasksListCtrlPanel(book), _("Masks"))
  43 + book.AddPage(SurfacesListCtrlPanel(book), _("Surfaces"))
  44 + book.AddPage(MeasuresListCtrlPanel(book), _("Measures"))
  45 + book.AddPage(AnnotationsListCtrlPanel(book), _("Annotations"))
46 46
47 book.SetSelection(0) 47 book.SetSelection(0)
48 48
@@ -102,8 +102,8 @@ class MasksListCtrlPanel(wx.ListCtrl, listmix.TextEditMixin): @@ -102,8 +102,8 @@ class MasksListCtrlPanel(wx.ListCtrl, listmix.TextEditMixin):
102 def __init_columns(self): 102 def __init_columns(self):
103 103
104 self.InsertColumn(0, "", wx.LIST_FORMAT_CENTER) 104 self.InsertColumn(0, "", wx.LIST_FORMAT_CENTER)
105 - self.InsertColumn(1, "Name")  
106 - self.InsertColumn(2, "Threshold", wx.LIST_FORMAT_RIGHT) 105 + self.InsertColumn(1, _("Name"))
  106 + self.InsertColumn(2, _("Threshold"), wx.LIST_FORMAT_RIGHT)
107 107
108 self.SetColumnWidth(0, 20) 108 self.SetColumnWidth(0, 20)
109 self.SetColumnWidth(1, 120) 109 self.SetColumnWidth(1, 120)
@@ -161,7 +161,7 @@ class MasksListCtrlPanel(wx.ListCtrl, listmix.TextEditMixin): @@ -161,7 +161,7 @@ class MasksListCtrlPanel(wx.ListCtrl, listmix.TextEditMixin):
161 wx_image.SetData(new_image.tostring()) 161 wx_image.SetData(new_image.tostring())
162 return wx.BitmapFromImage(wx_image.Scale(16, 16)) 162 return wx.BitmapFromImage(wx_image.Scale(16, 16))
163 163
164 - def InsertNewItem(self, index=0, label="Mask 1", threshold="(1000, 4500)", 164 + def InsertNewItem(self, index=0, label=_("Mask 1"), threshold="(1000, 4500)",
165 colour=None): 165 colour=None):
166 self.InsertStringItem(index, "") 166 self.InsertStringItem(index, "")
167 self.SetStringItem(index, 1, label, 167 self.SetStringItem(index, 1, label,
@@ -231,9 +231,9 @@ class SurfacesListCtrlPanel(wx.ListCtrl, listmix.TextEditMixin): @@ -231,9 +231,9 @@ class SurfacesListCtrlPanel(wx.ListCtrl, listmix.TextEditMixin):
231 def __init_columns(self): 231 def __init_columns(self):
232 232
233 self.InsertColumn(0, "", wx.LIST_FORMAT_CENTER) 233 self.InsertColumn(0, "", wx.LIST_FORMAT_CENTER)
234 - self.InsertColumn(1, "Name")  
235 - self.InsertColumn(2, "Volume (mm3)")  
236 - self.InsertColumn(3, "Transparency", wx.LIST_FORMAT_RIGHT) 234 + self.InsertColumn(1, _("Name"))
  235 + self.InsertColumn(2, _("Volume (mm3)"))
  236 + self.InsertColumn(3, _("Transparency"), wx.LIST_FORMAT_RIGHT)
237 237
238 self.SetColumnWidth(0, 20) 238 self.SetColumnWidth(0, 20)
239 self.SetColumnWidth(1, 85) 239 self.SetColumnWidth(1, 85)
@@ -435,9 +435,9 @@ class AnnotationsListCtrlPanel(wx.ListCtrl, listmix.TextEditMixin): @@ -435,9 +435,9 @@ class AnnotationsListCtrlPanel(wx.ListCtrl, listmix.TextEditMixin):
435 def __init_columns(self): 435 def __init_columns(self):
436 436
437 self.InsertColumn(0, "", wx.LIST_FORMAT_CENTER) 437 self.InsertColumn(0, "", wx.LIST_FORMAT_CENTER)
438 - self.InsertColumn(1, "Name")  
439 - self.InsertColumn(2, "Type", wx.LIST_FORMAT_CENTER)  
440 - self.InsertColumn(3, "Value") 438 + self.InsertColumn(1, _("Name"))
  439 + self.InsertColumn(2, _("Type"), wx.LIST_FORMAT_CENTER)
  440 + self.InsertColumn(3, _("Value"))
441 441
442 self.SetColumnWidth(0, 20) 442 self.SetColumnWidth(0, 20)
443 self.SetColumnWidth(1, 90) 443 self.SetColumnWidth(1, 90)
invesalius/gui/default_tasks.py
@@ -166,7 +166,7 @@ class UpperTaskPanel(wx.Panel): @@ -166,7 +166,7 @@ class UpperTaskPanel(wx.Panel):
166 166
167 # Fold 1 - Import 167 # Fold 1 - Import
168 168
169 - item = fold_panel.AddFoldPanel("1. InVesalius start", collapsed=True, 169 + item = fold_panel.AddFoldPanel(_("1. InVesalius start"), collapsed=True,
170 foldIcons=image_list) 170 foldIcons=image_list)
171 style = fold_panel.GetCaptionStyle(item) 171 style = fold_panel.GetCaptionStyle(item)
172 col = style.GetFirstColour() 172 col = style.GetFirstColour()
@@ -179,7 +179,7 @@ class UpperTaskPanel(wx.Panel): @@ -179,7 +179,7 @@ class UpperTaskPanel(wx.Panel):
179 179
180 # Fold 2 - Mask for segmentation and edition 180 # Fold 2 - Mask for segmentation and edition
181 181
182 - item = fold_panel.AddFoldPanel("2. Select region of interest", 182 + item = fold_panel.AddFoldPanel(_("2. Select region of interest"),
183 collapsed=True, foldIcons=image_list) 183 collapsed=True, foldIcons=image_list)
184 style = fold_panel.GetCaptionStyle(item) 184 style = fold_panel.GetCaptionStyle(item)
185 col = style.GetFirstColour() 185 col = style.GetFirstColour()
@@ -196,7 +196,7 @@ class UpperTaskPanel(wx.Panel): @@ -196,7 +196,7 @@ class UpperTaskPanel(wx.Panel):
196 # apply button 196 # apply button
197 # Contour - slider 197 # Contour - slider
198 # enable / disable Fill holes 198 # enable / disable Fill holes
199 - item = fold_panel.AddFoldPanel("3. Configure 3D surface", collapsed=True, 199 + item = fold_panel.AddFoldPanel(_("3. Configure 3D surface"), collapsed=True,
200 foldIcons=image_list) 200 foldIcons=image_list)
201 style = fold_panel.GetCaptionStyle(item) 201 style = fold_panel.GetCaptionStyle(item)
202 col = style.GetFirstColour() 202 col = style.GetFirstColour()
@@ -207,7 +207,7 @@ class UpperTaskPanel(wx.Panel): @@ -207,7 +207,7 @@ class UpperTaskPanel(wx.Panel):
207 207
208 # Fold 4 208 # Fold 4
209 # Export volume 209 # Export volume
210 - item = fold_panel.AddFoldPanel("4. Export data", collapsed=True, 210 + item = fold_panel.AddFoldPanel(_("4. Export data"), collapsed=True,
211 foldIcons=image_list) 211 foldIcons=image_list)
212 style = fold_panel.GetCaptionStyle(item) 212 style = fold_panel.GetCaptionStyle(item)
213 col = style.GetFirstColour() 213 col = style.GetFirstColour()
invesalius/gui/default_viewers.py
@@ -76,23 +76,23 @@ class Panel(wx.Panel): @@ -76,23 +76,23 @@ class Panel(wx.Panel):
76 76
77 p1 = slice_viewer.Viewer(self, "AXIAL") 77 p1 = slice_viewer.Viewer(self, "AXIAL")
78 s1 = wx.aui.AuiPaneInfo().Centre().Row(0).\ 78 s1 = wx.aui.AuiPaneInfo().Centre().Row(0).\
79 - Name("Axial Slice").Caption("Axial slice").\ 79 + Name("Axial Slice").Caption(_("Axial slice")).\
80 MaximizeButton(True).CloseButton(False) 80 MaximizeButton(True).CloseButton(False)
81 81
82 p2 = slice_viewer.Viewer(self, "CORONAL") 82 p2 = slice_viewer.Viewer(self, "CORONAL")
83 s2 = wx.aui.AuiPaneInfo().Centre().Row(0).\ 83 s2 = wx.aui.AuiPaneInfo().Centre().Row(0).\
84 - Name("Coronal Slice").Caption("Coronal slice").\ 84 + Name("Coronal Slice").Caption(_("Coronal slice")).\
85 MaximizeButton(True).CloseButton(False) 85 MaximizeButton(True).CloseButton(False)
86 86
87 p3 = slice_viewer.Viewer(self, "SAGITAL") 87 p3 = slice_viewer.Viewer(self, "SAGITAL")
88 s3 = wx.aui.AuiPaneInfo().Centre().Row(1).\ 88 s3 = wx.aui.AuiPaneInfo().Centre().Row(1).\
89 - Name("Sagital Slice").Caption("Sagital slice").\ 89 + Name("Sagital Slice").Caption(_("Sagital slice")).\
90 MaximizeButton(True).CloseButton(False) 90 MaximizeButton(True).CloseButton(False)
91 91
92 p4 = VolumeViewerCover(self) 92 p4 = VolumeViewerCover(self)
93 #p4 = volume_viewer.Viewer(self) 93 #p4 = volume_viewer.Viewer(self)
94 s4 = wx.aui.AuiPaneInfo().Row(1).Name("Volume").\ 94 s4 = wx.aui.AuiPaneInfo().Row(1).Name("Volume").\
95 - Bottom().Centre().Caption("Volume").\ 95 + Bottom().Centre().Caption(_("Volume")).\
96 MaximizeButton(True).CloseButton(False) 96 MaximizeButton(True).CloseButton(False)
97 97
98 self.s4 = s4 98 self.s4 = s4
@@ -165,25 +165,25 @@ class Panel(wx.Panel): @@ -165,25 +165,25 @@ class Panel(wx.Panel):
165 p1 = slice_viewer.Viewer(self, "AXIAL") 165 p1 = slice_viewer.Viewer(self, "AXIAL")
166 aui_manager.AddPane(p1, 166 aui_manager.AddPane(p1,
167 wx.aui.AuiPaneInfo(). 167 wx.aui.AuiPaneInfo().
168 - Name("Axial Slice").Caption("Axial slice"). 168 + Name("Axial Slice").Caption(_("Axial slice")).
169 MaximizeButton(True).CloseButton(False)) 169 MaximizeButton(True).CloseButton(False))
170 170
171 p2 = slice_viewer.Viewer(self, "CORONAL") 171 p2 = slice_viewer.Viewer(self, "CORONAL")
172 aui_manager.AddPane(p2, 172 aui_manager.AddPane(p2,
173 wx.aui.AuiPaneInfo(). 173 wx.aui.AuiPaneInfo().
174 - Name("Coronal Slice").Caption("Coronal slice"). 174 + Name("Coronal Slice").Caption(_("Coronal slice")).
175 MaximizeButton(True).CloseButton(False)) 175 MaximizeButton(True).CloseButton(False))
176 176
177 p3 = slice_viewer.Viewer(self, "SAGITAL") 177 p3 = slice_viewer.Viewer(self, "SAGITAL")
178 aui_manager.AddPane(p3, 178 aui_manager.AddPane(p3,
179 wx.aui.AuiPaneInfo(). 179 wx.aui.AuiPaneInfo().
180 - Name("Sagittal Slice").Caption("Sagittal slice"). 180 + Name("Sagittal Slice").Caption(_("Sagittal slice")).
181 MaximizeButton(True).CloseButton(False)) 181 MaximizeButton(True).CloseButton(False))
182 182
183 #p4 = volume_viewer.Viewer(self) 183 #p4 = volume_viewer.Viewer(self)
184 aui_manager.AddPane(VolumeViewerCover, 184 aui_manager.AddPane(VolumeViewerCover,
185 wx.aui.AuiPaneInfo(). 185 wx.aui.AuiPaneInfo().
186 - Name("Volume").Caption("Volume"). 186 + Name("Volume").Caption(_("Volume")).
187 MaximizeButton(True).CloseButton(False)) 187 MaximizeButton(True).CloseButton(False))
188 188
189 splitter.AppendWindow(p1) 189 splitter.AppendWindow(p1)
@@ -406,7 +406,7 @@ class VolumeToolPanel(wx.Panel): @@ -406,7 +406,7 @@ class VolumeToolPanel(wx.Panel):
406 self.button_slice_plane.PopupMenu(self.slice_plane_menu) 406 self.button_slice_plane.PopupMenu(self.slice_plane_menu)
407 407
408 def OnSavePreset(self, evt): 408 def OnSavePreset(self, evt):
409 - d = wx.TextEntryDialog(self, "Preset name") 409 + d = wx.TextEntryDialog(self, _("Preset name"))
410 if d.ShowModal() == wx.ID_OK: 410 if d.ShowModal() == wx.ID_OK:
411 preset_name = d.GetValue() 411 preset_name = d.GetValue()
412 ps.Publisher().sendMessage('Save raycasting preset', 412 ps.Publisher().sendMessage('Save raycasting preset',
@@ -434,7 +434,7 @@ class VolumeToolPanel(wx.Panel): @@ -434,7 +434,7 @@ class VolumeToolPanel(wx.Panel):
434 ID_TO_TOOL_ITEM[id] = item 434 ID_TO_TOOL_ITEM[id] = item
435 TOOL_STATE[id] = False 435 TOOL_STATE[id] = False
436 self.submenu_raycasting_tools = submenu 436 self.submenu_raycasting_tools = submenu
437 - menu.AppendMenu(RAYCASTING_TOOLS, "Tools", submenu) 437 + menu.AppendMenu(RAYCASTING_TOOLS, _("Tools"), submenu)
438 menu.Enable(RAYCASTING_TOOLS, 0) 438 menu.Enable(RAYCASTING_TOOLS, 0)
439 439
440 self.menu_raycasting = menu 440 self.menu_raycasting = menu
invesalius/gui/dialogs.py
@@ -48,11 +48,11 @@ class NumberDialog(wx.Dialog): @@ -48,11 +48,11 @@ class NumberDialog(wx.Dialog):
48 48
49 # Buttons 49 # Buttons
50 btn_ok = wx.Button(self, wx.ID_OK) 50 btn_ok = wx.Button(self, wx.ID_OK)
51 - btn_ok.SetHelpText("Above value will be applied.") 51 + btn_ok.SetHelpText(_("Above value will be applied."))
52 btn_ok.SetDefault() 52 btn_ok.SetDefault()
53 53
54 btn_cancel = wx.Button(self, wx.ID_CANCEL) 54 btn_cancel = wx.Button(self, wx.ID_CANCEL)
55 - btn_cancel.SetHelpText("Value will not be applied.") 55 + btn_cancel.SetHelpText(_("Value will not be applied."))
56 56
57 btnsizer = wx.StdDialogButtonSizer() 57 btnsizer = wx.StdDialogButtonSizer()
58 btnsizer.AddButton(btn_ok) 58 btnsizer.AddButton(btn_ok)
@@ -90,7 +90,7 @@ def ShowNumberDialog(message, value=0): @@ -90,7 +90,7 @@ def ShowNumberDialog(message, value=0):
90 class ProgressDialog(object): 90 class ProgressDialog(object):
91 def __init__(self, maximum): 91 def __init__(self, maximum):
92 self.title = "InVesalius 3" 92 self.title = "InVesalius 3"
93 - self.msg = "Loading DICOM files" 93 + self.msg = _("Loading DICOM files")
94 self.maximum = maximum 94 self.maximum = maximum
95 self.current = 0 95 self.current = 0
96 self.style = wx.PD_CAN_ABORT | wx.PD_APP_MODAL 96 self.style = wx.PD_CAN_ABORT | wx.PD_APP_MODAL
@@ -138,7 +138,7 @@ WILDCARD_OPEN = "InVesalius 3 project (*.inv3)|*.inv3|"\ @@ -138,7 +138,7 @@ WILDCARD_OPEN = "InVesalius 3 project (*.inv3)|*.inv3|"\
138 def ShowOpenProjectDialog(): 138 def ShowOpenProjectDialog():
139 # Default system path 139 # Default system path
140 current_dir = os.path.abspath(".") 140 current_dir = os.path.abspath(".")
141 - dlg = wx.FileDialog(None, message="Open InVesalius 3 project...", 141 + dlg = wx.FileDialog(None, message=_("Open InVesalius 3 project..."),
142 defaultDir="", 142 defaultDir="",
143 defaultFile="", wildcard=WILDCARD_OPEN, 143 defaultFile="", wildcard=WILDCARD_OPEN,
144 style=wx.OPEN|wx.CHANGE_DIR) 144 style=wx.OPEN|wx.CHANGE_DIR)
@@ -161,7 +161,7 @@ def ShowOpenProjectDialog(): @@ -161,7 +161,7 @@ def ShowOpenProjectDialog():
161 161
162 def ShowImportDirDialog(): 162 def ShowImportDirDialog():
163 current_dir = os.path.abspath(".") 163 current_dir = os.path.abspath(".")
164 - dlg = wx.DirDialog(None, "Choose a DICOM folder:", "", 164 + dlg = wx.DirDialog(None, _("Choose a DICOM folder:"), "",
165 style=wx.DD_DEFAULT_STYLE 165 style=wx.DD_DEFAULT_STYLE
166 | wx.DD_DIR_MUST_EXIST 166 | wx.DD_DIR_MUST_EXIST
167 | wx.DD_CHANGE_DIR) 167 | wx.DD_CHANGE_DIR)
@@ -183,10 +183,10 @@ def ShowImportDirDialog(): @@ -183,10 +183,10 @@ def ShowImportDirDialog():
183 def ShowSaveAsProjectDialog(default_filename=None): 183 def ShowSaveAsProjectDialog(default_filename=None):
184 current_dir = os.path.abspath(".") 184 current_dir = os.path.abspath(".")
185 dlg = wx.FileDialog(None, 185 dlg = wx.FileDialog(None,
186 - "Save project as...", # title 186 + _("Save project as..."), # title
187 "", # last used directory 187 "", # last used directory
188 default_filename, 188 default_filename,
189 - "InVesalius project (*.inv3)|*.inv3", 189 + _("InVesalius project (*.inv3)|*.inv3"),
190 wx.SAVE|wx.OVERWRITE_PROMPT) 190 wx.SAVE|wx.OVERWRITE_PROMPT)
191 #dlg.SetFilterIndex(0) # default is VTI 191 #dlg.SetFilterIndex(0) # default is VTI
192 192
@@ -249,7 +249,7 @@ class MessageDialog(wx.Dialog): @@ -249,7 +249,7 @@ class MessageDialog(wx.Dialog):
249 self.Centre() 249 self.Centre()
250 250
251 def SaveChangesDialog__Old(filename): 251 def SaveChangesDialog__Old(filename):
252 - message = "Save changes to %s?"%filename 252 + message = _("Save changes to %s?")%filename
253 dlg = MessageDialog(message) 253 dlg = MessageDialog(message)
254 254
255 answer = dlg.ShowModal() 255 answer = dlg.ShowModal()
@@ -276,7 +276,7 @@ def ImportEmptyDirectory(dirpath): @@ -276,7 +276,7 @@ def ImportEmptyDirectory(dirpath):
276 dlg.Destroy() 276 dlg.Destroy()
277 277
278 def ImportInvalidFiles(): 278 def ImportInvalidFiles():
279 - msg = "There are no DICOM files on the selected directory." 279 + msg = _("There are no DICOM files on the selected directory.")
280 if sys.platform == 'darwin': 280 if sys.platform == 'darwin':
281 dlg = wx.MessageDialog(None, "", msg, 281 dlg = wx.MessageDialog(None, "", msg,
282 wx.ICON_INFORMATION | wx.OK) 282 wx.ICON_INFORMATION | wx.OK)
@@ -288,7 +288,7 @@ def ImportInvalidFiles(): @@ -288,7 +288,7 @@ def ImportInvalidFiles():
288 288
289 def SaveChangesDialog(filename): 289 def SaveChangesDialog(filename):
290 current_dir = os.path.abspath(".") 290 current_dir = os.path.abspath(".")
291 - msg = "Save changes to %s?"%filename 291 + msg = _("Save changes to %s?")%filename
292 if sys.platform == 'darwin': 292 if sys.platform == 'darwin':
293 dlg = wx.MessageDialog(None, "", msg, 293 dlg = wx.MessageDialog(None, "", msg,
294 wx.ICON_QUESTION | wx.YES_NO | wx.CANCEL) 294 wx.ICON_QUESTION | wx.YES_NO | wx.CANCEL)
@@ -310,7 +310,7 @@ def SaveChangesDialog(filename): @@ -310,7 +310,7 @@ def SaveChangesDialog(filename):
310 310
311 def SaveChangesDialog2(filename): 311 def SaveChangesDialog2(filename):
312 current_dir = os.path.abspath(".") 312 current_dir = os.path.abspath(".")
313 - msg = "Save changes to %s?"%filename 313 + msg = _("Save changes to %s?")%filename
314 if sys.platform == 'darwin': 314 if sys.platform == 'darwin':
315 dlg = wx.MessageDialog(None, "", msg, 315 dlg = wx.MessageDialog(None, "", msg,
316 wx.ICON_QUESTION | wx.YES_NO) 316 wx.ICON_QUESTION | wx.YES_NO)
@@ -334,16 +334,16 @@ def ShowAboutDialog(parent): @@ -334,16 +334,16 @@ def ShowAboutDialog(parent):
334 info = wx.AboutDialogInfo() 334 info = wx.AboutDialogInfo()
335 info.Name = "InVesalius" 335 info.Name = "InVesalius"
336 info.Version = "3.a.1 - RP" 336 info.Version = "3.a.1 - RP"
337 - info.Copyright = "(C) 2007 Renato Archer Research Centre" 337 + info.Copyright = _("(C) 2007 Renato Archer Research Centre")
338 info.Description = wordwrap( 338 info.Description = wordwrap(
339 - "InVesalius is a software for medical imaging 3D reconstruction. "+\  
340 - "Its input is a sequency of DICOM 2D image files acquired with CT or MR.\n\n"+\  
341 - "The software also allows generating correspondent STL files,"+\  
342 - "so the user can print 3D physical models of the patient's anatomy "+\  
343 - "using Rapid Prototyping.", 350, wx.ClientDC(parent)) 339 + _("InVesalius is a software for medical imaging 3D reconstruction. ")+\
  340 + _("Its input is a sequency of DICOM 2D image files acquired with CT or MR.\n\n")+\
  341 + _("The software also allows generating correspondent STL files,")+\
  342 + _("so the user can print 3D physical models of the patient's anatomy ")+\
  343 + _("using Rapid Prototyping."), 350, wx.ClientDC(parent))
344 info.WebSite = ("http://www.softwarepublico.gov.br/", 344 info.WebSite = ("http://www.softwarepublico.gov.br/",
345 "InVesalius Community") 345 "InVesalius Community")
346 - info.License = "GNU GPL (General Public License) version 2" 346 + info.License = _("GNU GPL (General Public License) version 2")
347 347
348 #info.Translators = "" 348 #info.Translators = ""
349 #info.Artists = 349 #info.Artists =
@@ -358,7 +358,7 @@ def ShowAboutDialog(parent): @@ -358,7 +358,7 @@ def ShowAboutDialog(parent):
358 358
359 def ShowSavePresetDialog(default_filename="raycasting"): 359 def ShowSavePresetDialog(default_filename="raycasting"):
360 dlg = wx.TextEntryDialog(None, 360 dlg = wx.TextEntryDialog(None,
361 - "Save raycasting preset as:", 361 + _("Save raycasting preset as:"),
362 "InVesalius 3") 362 "InVesalius 3")
363 #dlg.SetFilterIndex(0) # default is VTI 363 #dlg.SetFilterIndex(0) # default is VTI
364 filename = None 364 filename = None
invesalius/gui/dicom_preview_panel.py
@@ -39,11 +39,11 @@ NCOLS = 6 @@ -39,11 +39,11 @@ NCOLS = 6
39 MAX_VALUE = NCOLS*NROWS 39 MAX_VALUE = NCOLS*NROWS
40 40
41 41
42 -STR_SIZE = "Image size: %d x %d"  
43 -STR_SPC = "Spacing: %.2f"  
44 -STR_LOCAL = "Location: %.2f" 42 +STR_SIZE = _("Image size: %d x %d")
  43 +STR_SPC = _("Spacing: %.2f")
  44 +STR_LOCAL = _("Location: %.2f")
45 STR_PATIENT = "%s\n%s" 45 STR_PATIENT = "%s\n%s"
46 -STR_ACQ = "%s %s\nMade in InVesalius" 46 +STR_ACQ = _("%s %s\nMade in InVesalius")
47 47
48 class SingleImagePreview(wx.Panel): 48 class SingleImagePreview(wx.Panel):
49 def __init__(self, parent): 49 def __init__(self, parent):
@@ -63,7 +63,7 @@ class SingleImagePreview(wx.Panel): @@ -63,7 +63,7 @@ class SingleImagePreview(wx.Panel):
63 63
64 text_image_size = vtku.Text() 64 text_image_size = vtku.Text()
65 text_image_size.SetPosition(const.TEXT_POS_LEFT_UP) 65 text_image_size.SetPosition(const.TEXT_POS_LEFT_UP)
66 - text_image_size.SetValue("image size") 66 + text_image_size.SetValue(_("image size"))
67 self.text_image_size = text_image_size 67 self.text_image_size = text_image_size
68 68
69 text_image_location = vtku.Text() 69 text_image_location = vtku.Text()
@@ -72,14 +72,14 @@ class SingleImagePreview(wx.Panel): @@ -72,14 +72,14 @@ class SingleImagePreview(wx.Panel):
72 text_image_location.SetValue("localization") 72 text_image_location.SetValue("localization")
73 self.text_image_location = text_image_location 73 self.text_image_location = text_image_location
74 74
75 - value = "id\nprotocol" 75 + value = _("id\nprotocol")
76 text_patient = vtku.Text() 76 text_patient = vtku.Text()
77 text_patient.SetJustificationToRight() 77 text_patient.SetJustificationToRight()
78 text_patient.SetPosition(const.TEXT_POS_RIGHT_UP) 78 text_patient.SetPosition(const.TEXT_POS_RIGHT_UP)
79 text_patient.SetValue(value) 79 text_patient.SetValue(value)
80 self.text_patient = text_patient 80 self.text_patient = text_patient
81 81
82 - value = "date time\n Made in InVesalius" 82 + value = _("date time\n Made in InVesalius")
83 text_acquisition = vtku.Text() 83 text_acquisition = vtku.Text()
84 text_acquisition.SetJustificationToRight() 84 text_acquisition.SetJustificationToRight()
85 text_acquisition.SetVerticalJustificationToBottom() 85 text_acquisition.SetVerticalJustificationToBottom()
@@ -125,7 +125,7 @@ class SingleImagePreview(wx.Panel): @@ -125,7 +125,7 @@ class SingleImagePreview(wx.Panel):
125 slider.SetTickFreq(1, 1) 125 slider.SetTickFreq(1, 1)
126 self.slider = slider 126 self.slider = slider
127 127
128 - checkbox = wx.CheckBox(self, -1, "Auto-play") 128 + checkbox = wx.CheckBox(self, -1, _("Auto-play"))
129 self.checkbox = checkbox 129 self.checkbox = checkbox
130 130
131 in_sizer = wx.BoxSizer(wx.HORIZONTAL) 131 in_sizer = wx.BoxSizer(wx.HORIZONTAL)
@@ -279,10 +279,10 @@ class Preview(wx.Panel): @@ -279,10 +279,10 @@ class Preview(wx.Panel):
279 279
280 def _init_ui(self): 280 def _init_ui(self):
281 281
282 - self.title = wx.StaticText(self, -1, "Image", 282 + self.title = wx.StaticText(self, -1, _("Image"),
283 style=wx.ALIGN_CENTER) 283 style=wx.ALIGN_CENTER)
284 284
285 - self.subtitle = wx.StaticText(self, -1, "Image", 285 + self.subtitle = wx.StaticText(self, -1, _("Image"),
286 style=wx.ALIGN_CENTER) 286 style=wx.ALIGN_CENTER)
287 287
288 self.image_viewer = wx.StaticBitmap(self, -1) 288 self.image_viewer = wx.StaticBitmap(self, -1)
@@ -615,7 +615,7 @@ class DicomPreviewSeries(wx.Panel): @@ -615,7 +615,7 @@ class DicomPreviewSeries(wx.Panel):
615 float(group.dicom.image.window), 615 float(group.dicom.image.window),
616 float(group.dicom.image.level), 616 float(group.dicom.image.level),
617 group.title, 617 group.title,
618 - "%d Images" %(group.nslices), 618 + _("%d Images") %(group.nslices),
619 n, 619 n,
620 group_list, 620 group_list,
621 group.dicom) 621 group.dicom)
@@ -736,7 +736,7 @@ class DicomPreview(wx.Panel): @@ -736,7 +736,7 @@ class DicomPreview(wx.Panel):
736 info = (dicom.image.imagedata, 736 info = (dicom.image.imagedata,
737 dicom.image.window, 737 dicom.image.window,
738 dicom.image.level, 738 dicom.image.level,
739 - "Image %d" % (dicom.image.number), 739 + _("Image %d") % (dicom.image.number),
740 "%.2f" % (dicom.image.position[2]), 740 "%.2f" % (dicom.image.position[2]),
741 n, 741 n,
742 dicom) 742 dicom)
@@ -761,7 +761,7 @@ class DicomPreview(wx.Panel): @@ -761,7 +761,7 @@ class DicomPreview(wx.Panel):
761 info = (dicom.image, 761 info = (dicom.image,
762 dicom.image.window, 762 dicom.image.window,
763 dicom.image.level, 763 dicom.image.level,
764 - "Image %d" % (dicom.image.number), 764 + _("Image %d") % (dicom.image.number),
765 "%.2f" % (dicom.image.position[2]), 765 "%.2f" % (dicom.image.position[2]),
766 n, 766 n,
767 dicom) 767 dicom)
invesalius/gui/frame.py
@@ -80,8 +80,8 @@ class Frame(wx.Frame): @@ -80,8 +80,8 @@ class Frame(wx.Frame):
80 80
81 def __bind_events(self): 81 def __bind_events(self):
82 ps.Publisher().subscribe(self.ShowContentPanel, 'Show content panel') 82 ps.Publisher().subscribe(self.ShowContentPanel, 'Show content panel')
83 - ps.Publisher().subscribe(self.ShowImportPanel, "Show import panel in frame")  
84 - ps.Publisher().subscribe(self.UpdateAui, "Update AUI") 83 + ps.Publisher().subscribe(self.ShowImportPanel, 'Show import panel in frame')
  84 + ps.Publisher().subscribe(self.UpdateAui, 'Update AUI')
85 ps.Publisher().subscribe(self.ShowTask, 'Show task panel') 85 ps.Publisher().subscribe(self.ShowTask, 'Show task panel')
86 ps.Publisher().subscribe(self.HideTask, 'Hide task panel') 86 ps.Publisher().subscribe(self.HideTask, 'Hide task panel')
87 ps.Publisher().subscribe(self.SetProjectName, 'Set project name') 87 ps.Publisher().subscribe(self.SetProjectName, 'Set project name')
@@ -135,7 +135,7 @@ class Frame(wx.Frame): @@ -135,7 +135,7 @@ class Frame(wx.Frame):
135 135
136 136
137 aui_manager.AddPane(viewers.Panel(self), wx.aui.AuiPaneInfo(). 137 aui_manager.AddPane(viewers.Panel(self), wx.aui.AuiPaneInfo().
138 - Caption("Data panel").CaptionVisible(False). 138 + Caption(_("Data panel")).CaptionVisible(False).
139 Centre().CloseButton(False).Floatable(False). 139 Centre().CloseButton(False).Floatable(False).
140 Hide().Layer(1).MaximizeButton(True).Name("Data"). 140 Hide().Layer(1).MaximizeButton(True).Name("Data").
141 Position(1)) 141 Position(1))
@@ -144,7 +144,7 @@ class Frame(wx.Frame): @@ -144,7 +144,7 @@ class Frame(wx.Frame):
144 aui_manager.AddPane(imp.Panel(self), wx.aui.AuiPaneInfo(). 144 aui_manager.AddPane(imp.Panel(self), wx.aui.AuiPaneInfo().
145 Name("Import").Centre().Hide(). 145 Name("Import").Centre().Hide().
146 MaximizeButton(True).Floatable(True). 146 MaximizeButton(True).Floatable(True).
147 - Caption("Preview medical data to be reconstructed"). 147 + Caption(_("Preview medical data to be reconstructed")).
148 CaptionVisible(True)) 148 CaptionVisible(True))
149 149
150 150
@@ -303,11 +303,11 @@ class MenuBar(wx.MenuBar): @@ -303,11 +303,11 @@ class MenuBar(wx.MenuBar):
303 # FILE 303 # FILE
304 file_menu = wx.Menu() 304 file_menu = wx.Menu()
305 #file_menu.Append(const.ID_DICOM_LOAD_NET, "Import DICOM from Internet...") 305 #file_menu.Append(const.ID_DICOM_LOAD_NET, "Import DICOM from Internet...")
306 - file_menu.Append(const.ID_DICOM_IMPORT, "Import DICOM...\tCtrl+I")  
307 - file_menu.Append(const.ID_PROJECT_OPEN, "Open Project...\tCtrl+O")  
308 - file_menu.Append(const.ID_PROJECT_SAVE, "Save Project\tCtrl+S")  
309 - file_menu.Append(const.ID_PROJECT_SAVE_AS, "Save Project As...")  
310 - file_menu.Append(const.ID_PROJECT_CLOSE, "Close Project") 306 + file_menu.Append(const.ID_DICOM_IMPORT, _("Import DICOM...\tCtrl+I"))
  307 + file_menu.Append(const.ID_PROJECT_OPEN, _("Open Project...\tCtrl+O"))
  308 + file_menu.Append(const.ID_PROJECT_SAVE, _("Save Project\tCtrl+S"))
  309 + file_menu.Append(const.ID_PROJECT_SAVE_AS, _("Save Project As..."))
  310 + file_menu.Append(const.ID_PROJECT_CLOSE, _("Close Project"))
311 file_menu.AppendSeparator() 311 file_menu.AppendSeparator()
312 #file_menu.Append(const.ID_PROJECT_INFO, "Project Information...") 312 #file_menu.Append(const.ID_PROJECT_INFO, "Project Information...")
313 #file_menu.AppendSeparator() 313 #file_menu.AppendSeparator()
@@ -316,7 +316,7 @@ class MenuBar(wx.MenuBar): @@ -316,7 +316,7 @@ class MenuBar(wx.MenuBar):
316 #file_menu.AppendSeparator() 316 #file_menu.AppendSeparator()
317 #file_menu.Append(1, "C:\InvData\sample.inv") 317 #file_menu.Append(1, "C:\InvData\sample.inv")
318 #file_menu.AppendSeparator() 318 #file_menu.AppendSeparator()
319 - file_menu.Append(const.ID_EXIT, "Exit") 319 + file_menu.Append(const.ID_EXIT, _("Exit"))
320 320
321 # EDIT 321 # EDIT
322 #file_edit = wx.Menu() 322 #file_edit = wx.Menu()
@@ -355,10 +355,10 @@ class MenuBar(wx.MenuBar): @@ -355,10 +355,10 @@ class MenuBar(wx.MenuBar):
355 355
356 # HELP 356 # HELP
357 help_menu = wx.Menu() 357 help_menu = wx.Menu()
358 - help_menu.Append(105, "Getting Started...") 358 + help_menu.Append(105, _("Getting Started..."))
359 #help_menu.Append(108, "User Manual...") 359 #help_menu.Append(108, "User Manual...")
360 help_menu.AppendSeparator() 360 help_menu.AppendSeparator()
361 - help_menu.Append(const.ID_ABOUT, "About...") 361 + help_menu.Append(const.ID_ABOUT, _("About..."))
362 #help_menu.Append(107, "Check For Updates Now...") 362 #help_menu.Append(107, "Check For Updates Now...")
363 363
364 # TODO: Check what is necessary under MacOS to show Groo and not Python 364 # TODO: Check what is necessary under MacOS to show Groo and not Python
@@ -369,12 +369,12 @@ class MenuBar(wx.MenuBar): @@ -369,12 +369,12 @@ class MenuBar(wx.MenuBar):
369 #test_item = test_menu.Append(-1, '&About Groo', 'Groo RULES!!!') 369 #test_item = test_menu.Append(-1, '&About Groo', 'Groo RULES!!!')
370 #wx.App.SetMacAboutMenuItemId(test_item.GetId()) 370 #wx.App.SetMacAboutMenuItemId(test_item.GetId())
371 371
372 - self.Append(file_menu, "File") 372 + self.Append(file_menu, _("File"))
373 #self.Append(file_edit, "Edit") 373 #self.Append(file_edit, "Edit")
374 #self.Append(view_menu, "View") 374 #self.Append(view_menu, "View")
375 #self.Append(tools_menu, "Tools") 375 #self.Append(tools_menu, "Tools")
376 #self.Append(options_menu, "Options") 376 #self.Append(options_menu, "Options")
377 - self.Append(help_menu, "Help") 377 + self.Append(help_menu, _("Help"))
378 378
379 def __bind_events(self): 379 def __bind_events(self):
380 # TODO: in future, possibly when wxPython 2.9 is available, 380 # TODO: in future, possibly when wxPython 2.9 is available,
@@ -417,7 +417,7 @@ class StatusBar(wx.StatusBar): @@ -417,7 +417,7 @@ class StatusBar(wx.StatusBar):
417 wx.StatusBar.__init__(self, parent, -1) 417 wx.StatusBar.__init__(self, parent, -1)
418 self.SetFieldsCount(3) 418 self.SetFieldsCount(3)
419 self.SetStatusWidths([-2,-2,-1]) 419 self.SetStatusWidths([-2,-2,-1])
420 - self.SetStatusText("Ready", 0) 420 + self.SetStatusText(_("Ready"), 0)
421 self.SetStatusText("", 1) 421 self.SetStatusText("", 1)
422 self.SetStatusText("", 2) 422 self.SetStatusText("", 2)
423 423
@@ -525,13 +525,13 @@ class ProjectToolBar(wx.ToolBar): @@ -525,13 +525,13 @@ class ProjectToolBar(wx.ToolBar):
525 # "Load medical image...", 525 # "Load medical image...",
526 # BMP_NET) 526 # BMP_NET)
527 self.AddLabelTool(const.ID_DICOM_IMPORT, 527 self.AddLabelTool(const.ID_DICOM_IMPORT,
528 - "Import medical image...", 528 + _("Import medical image..."),
529 BMP_IMPORT) 529 BMP_IMPORT)
530 self.AddLabelTool(const.ID_PROJECT_OPEN, 530 self.AddLabelTool(const.ID_PROJECT_OPEN,
531 - "Open InVesalius 3 project...", 531 + _("Open InVesalius 3 project..."),
532 BMP_OPEN) 532 BMP_OPEN)
533 self.AddLabelTool(const.ID_PROJECT_SAVE, 533 self.AddLabelTool(const.ID_PROJECT_SAVE,
534 - "Save InVesalius project", 534 + _("Save InVesalius project"),
535 BMP_SAVE) 535 BMP_SAVE)
536 #self.AddLabelTool(const.ID_SAVE_SCREENSHOT, 536 #self.AddLabelTool(const.ID_SAVE_SCREENSHOT,
537 # "Take photo of screen", 537 # "Take photo of screen",
@@ -626,25 +626,25 @@ class ObjectToolBar(wx.ToolBar): @@ -626,25 +626,25 @@ class ObjectToolBar(wx.ToolBar):
626 wx.BITMAP_TYPE_PNG) 626 wx.BITMAP_TYPE_PNG)
627 627
628 self.AddLabelTool(const.STATE_ZOOM, 628 self.AddLabelTool(const.STATE_ZOOM,
629 - "Zoom", 629 + _("Zoom"),
630 BMP_ZOOM, 630 BMP_ZOOM,
631 kind = wx.ITEM_CHECK) 631 kind = wx.ITEM_CHECK)
632 632
633 self.AddLabelTool(const.STATE_ZOOM_SL, 633 self.AddLabelTool(const.STATE_ZOOM_SL,
634 - "Zoom based on selection", 634 + _("Zoom based on selection"),
635 BMP_ZOOM_SELECT, 635 BMP_ZOOM_SELECT,
636 kind = wx.ITEM_CHECK) 636 kind = wx.ITEM_CHECK)
637 637
638 self.AddLabelTool(const.STATE_SPIN, 638 self.AddLabelTool(const.STATE_SPIN,
639 - "Rotate", BMP_ROTATE, 639 + _("Rotate"), BMP_ROTATE,
640 kind = wx.ITEM_CHECK) 640 kind = wx.ITEM_CHECK)
641 641
642 self.AddLabelTool(const.STATE_PAN, 642 self.AddLabelTool(const.STATE_PAN,
643 - "Move", BMP_MOVE, 643 + _("Move"), BMP_MOVE,
644 kind = wx.ITEM_CHECK) 644 kind = wx.ITEM_CHECK)
645 645
646 self.AddLabelTool(const.STATE_WL, 646 self.AddLabelTool(const.STATE_WL,
647 - "Window and Level", BMP_CONTRAST, 647 + _("Window and Level"), BMP_CONTRAST,
648 kind = wx.ITEM_CHECK) 648 kind = wx.ITEM_CHECK)
649 self.Realize() 649 self.Realize()
650 650
invesalius/gui/import_data_wizard.py
@@ -184,8 +184,8 @@ class DirPage(BasePage): @@ -184,8 +184,8 @@ class DirPage(BasePage):
184 184
185 def __init_specific_gui(self): 185 def __init_specific_gui(self):
186 186
187 - line1 = wx.StaticText(self, -1,"Select the directory which "+\  
188 - "contains medical images of the study interest.") 187 + line1 = wx.StaticText(self, -1,_("Select the directory which ")+\
  188 + _("contains medical images of the study interest."))
189 189
190 190
191 191
@@ -229,14 +229,14 @@ class DirPage(BasePage): @@ -229,14 +229,14 @@ class DirPage(BasePage):
229 style.SetSecondColour(wx.Colour(255,255,255)) 229 style.SetSecondColour(wx.Colour(255,255,255))
230 230
231 # Fold 1 - Surface properties 231 # Fold 1 - Surface properties
232 - item = fold_panel.AddFoldPanel("Advanced options", 232 + item = fold_panel.AddFoldPanel(_("Advanced options"),
233 collapsed=True) 233 collapsed=True)
234 fold_panel.ApplyCaptionStyle(item, style) 234 fold_panel.ApplyCaptionStyle(item, style)
235 fold_panel.AddFoldPanelWindow(item, 235 fold_panel.AddFoldPanelWindow(item,
236 - wx.CheckBox(item, wx.ID_ANY, "Use selected folder(s) as default"), 236 + wx.CheckBox(item, wx.ID_ANY, _("Use selected folder(s) as default")),
237 Spacing= 0, leftSpacing=0, rightSpacing=0) 237 Spacing= 0, leftSpacing=0, rightSpacing=0)
238 fold_panel.AddFoldPanelWindow(item, 238 fold_panel.AddFoldPanelWindow(item,
239 - wx.CheckBox(item, wx.ID_ANY, "Enable recursion in folder(s)"), 239 + wx.CheckBox(item, wx.ID_ANY, _("Enable recursion in folder(s)")),
240 Spacing= 0, leftSpacing=0, rightSpacing=0) 240 Spacing= 0, leftSpacing=0, rightSpacing=0)
241 241
242 242
@@ -252,18 +252,18 @@ class DirPage(BasePage): @@ -252,18 +252,18 @@ class DirPage(BasePage):
252 self.next.GetNext().DecreasePageNumber() 252 self.next.GetNext().DecreasePageNumber()
253 253
254 def OnAddDir(self, evt): 254 def OnAddDir(self, evt):
255 - dlg = wx.DirDialog(self, "Choose a directory:", 255 + dlg = wx.DirDialog(self, _("Choose a directory:"),
256 style=wx.DD_DIR_MUST_EXIST) 256 style=wx.DD_DIR_MUST_EXIST)
257 257
258 if dlg.ShowModal() == wx.ID_OK: 258 if dlg.ShowModal() == wx.ID_OK:
259 path = dlg.GetPath() 259 path = dlg.GetPath()
260 self.selected_dir.append(path) 260 self.selected_dir.append(path)
261 - self.link_add_new.SetLabel("Add another directory") 261 + self.link_add_new.SetLabel(_("Add another directory"))
262 self.AddNewDir(path) 262 self.AddNewDir(path)
263 dlg.Destroy() 263 dlg.Destroy()
264 264
265 def OnChangeDir(self, prev_dir, text): 265 def OnChangeDir(self, prev_dir, text):
266 - dlg = wx.DirDialog(self, "Choose a directory:", 266 + dlg = wx.DirDialog(self, _("Choose a directory:"),
267 style=wx.DD_DIR_MUST_EXIST) 267 style=wx.DD_DIR_MUST_EXIST)
268 dlg.SetPath(prev_dir) 268 dlg.SetPath(prev_dir)
269 269
@@ -282,8 +282,8 @@ class DirPage(BasePage): @@ -282,8 +282,8 @@ class DirPage(BasePage):
282 282
283 text_dir_path = wx.StaticText(self, -1, path) 283 text_dir_path = wx.StaticText(self, -1, path)
284 284
285 - tooltip = wx.ToolTip("Remove this directory from list")  
286 - link_remove = hl.HyperLinkCtrl(self, -1,"Remove") 285 + tooltip = wx.ToolTip(_("Remove this directory from list"))
  286 + link_remove = hl.HyperLinkCtrl(self, -1,_("Remove"))
287 link_remove.SetUnderlines(True, False, False) 287 link_remove.SetUnderlines(True, False, False)
288 link_remove.SetColours("BLUE", "BLUE", "BLUE") 288 link_remove.SetColours("BLUE", "BLUE", "BLUE")
289 link_remove.SetToolTip(tooltip) 289 link_remove.SetToolTip(tooltip)
@@ -308,7 +308,7 @@ class DirPage(BasePage): @@ -308,7 +308,7 @@ class DirPage(BasePage):
308 self.line3.Hide(sizer) 308 self.line3.Hide(sizer)
309 self.line3.RemoveSizer(sizer) 309 self.line3.RemoveSizer(sizer)
310 if not self.selected_dir: 310 if not self.selected_dir:
311 - self.link_add_new.SetLabel("Add another directory") 311 + self.link_add_new.SetLabel(_("Add another directory"))
312 self.Layout() 312 self.Layout()
313 self.Fit() 313 self.Fit()
314 314
@@ -337,15 +337,15 @@ class DirPage(BasePage): @@ -337,15 +337,15 @@ class DirPage(BasePage):
337 self.log.write('DirBrowseButton: %s\n' % evt.GetString()) 337 self.log.write('DirBrowseButton: %s\n' % evt.GetString())
338 338
339 def CreateWizard(parent): 339 def CreateWizard(parent):
340 - wizard = wiz.Wizard(parent, -1, "Import medical images", getWizTest1Bitmap()) 340 + wizard = wiz.Wizard(parent, -1, _("Import medical images"), getWizTest1Bitmap())
341 341
342 - page1 = DirPage(wizard, "Choose directory", 1)  
343 - page2 = RawDataPage(wizard, "Define RAW data", 2)  
344 - page3 = StudyPage(wizard, "Select study", 3) # 2 can be 3 342 + page1 = DirPage(wizard, _("Choose directory"), 1)
  343 + page2 = RawDataPage(wizard, _("Define RAW data"), 2)
  344 + page3 = StudyPage(wizard, _("Select study"), 3) # 2 can be 3
345 345
346 346
347 wizard.FitToPage(page1) 347 wizard.FitToPage(page1)
348 - page3.sizer.Add(wx.StaticText(page3, -1, "\nThis is the last page.")) 348 + page3.sizer.Add(wx.StaticText(page3, -1, _("\nThis is the last page.")))
349 349
350 # Set the initial order of the pages 350 # Set the initial order of the pages
351 page1.SetNext(page2) 351 page1.SetNext(page2)
invesalius/gui/import_panel.py
@@ -51,7 +51,7 @@ class InnerPanel(wx.Panel): @@ -51,7 +51,7 @@ class InnerPanel(wx.Panel):
51 self.splitter = splitter 51 self.splitter = splitter
52 52
53 panel = wx.Panel(self) 53 panel = wx.Panel(self)
54 - button = wx.Button(panel, -1, "Import medical images", (20, 20)) 54 + button = wx.Button(panel, -1, _("Import medical images"), (20, 20))
55 55
56 inner_sizer = wx.BoxSizer() 56 inner_sizer = wx.BoxSizer()
57 inner_sizer.Add(button, 0, wx.ALIGN_CENTER_HORIZONTAL, 40) 57 inner_sizer.Add(button, 0, wx.ALIGN_CENTER_HORIZONTAL, 40)
@@ -106,18 +106,18 @@ class TextPanel(wx.Panel): @@ -106,18 +106,18 @@ class TextPanel(wx.Panel):
106 ) 106 )
107 107
108 108
109 - tree.AddColumn("Patient name")  
110 - tree.AddColumn("Patient ID")  
111 - tree.AddColumn("Age")  
112 - tree.AddColumn("Gender")  
113 - tree.AddColumn("Study description")  
114 - tree.AddColumn("Modality")  
115 - tree.AddColumn("Date acquired")  
116 - tree.AddColumn("# Images")  
117 - tree.AddColumn("Institution")  
118 - tree.AddColumn("Date of birth")  
119 - tree.AddColumn("Accession Number")  
120 - tree.AddColumn("Referring physician") 109 + tree.AddColumn(_("Patient name"))
  110 + tree.AddColumn(_("Patient ID"))
  111 + tree.AddColumn(_("Age"))
  112 + tree.AddColumn(_("Gender"))
  113 + tree.AddColumn(_("Study description"))
  114 + tree.AddColumn(_("Modality"))
  115 + tree.AddColumn(_("Date acquired"))
  116 + tree.AddColumn(_("# Images"))
  117 + tree.AddColumn(_("Institution"))
  118 + tree.AddColumn(_("Date of birth"))
  119 + tree.AddColumn(_("Accession Number"))
  120 + tree.AddColumn(_("Referring physician"))
121 121
122 tree.SetMainColumn(0) # the one with the tree in it... 122 tree.SetMainColumn(0) # the one with the tree in it...
123 tree.SetColumnWidth(0, 280) # Patient name 123 tree.SetColumnWidth(0, 280) # Patient name
@@ -133,7 +133,7 @@ class TextPanel(wx.Panel): @@ -133,7 +133,7 @@ class TextPanel(wx.Panel):
133 tree.SetColumnWidth(10, 140) # Accession Number 133 tree.SetColumnWidth(10, 140) # Accession Number
134 tree.SetColumnWidth(11, 160) # Referring physician 134 tree.SetColumnWidth(11, 160) # Referring physician
135 135
136 - self.root = tree.AddRoot("InVesalius Database") 136 + self.root = tree.AddRoot(_("InVesalius Database"))
137 self.tree = tree 137 self.tree = tree
138 138
139 def SelectSeries(self, pubsub_evt): 139 def SelectSeries(self, pubsub_evt):
@@ -293,8 +293,7 @@ class SeriesPanel(wx.Panel): @@ -293,8 +293,7 @@ class SeriesPanel(wx.Panel):
293 293
294 self.dicom_preview.Show(0) 294 self.dicom_preview.Show(0)
295 self.serie_preview.Show(1) 295 self.serie_preview.Show(1)
296 -  
297 - 296 +
298 self.serie_preview.SetPatientGroups(patient) 297 self.serie_preview.SetPatientGroups(patient)
299 self.dicom_preview.SetPatientGroups(patient) 298 self.dicom_preview.SetPatientGroups(patient)
300 299
invesalius/gui/task_exporter.py
@@ -98,9 +98,9 @@ class InnerTaskPanel(wx.Panel): @@ -98,9 +98,9 @@ class InnerTaskPanel(wx.Panel):
98 # Counter for projects loaded in current GUI 98 # Counter for projects loaded in current GUI
99 99
100 # Fixed hyperlink items 100 # Fixed hyperlink items
101 - tooltip = wx.ToolTip("Export InVesalius screen to a image file") 101 + tooltip = wx.ToolTip(_("Export InVesalius screen to a image file"))
102 link_export_picture = hl.HyperLinkCtrl(self, -1, 102 link_export_picture = hl.HyperLinkCtrl(self, -1,
103 - "Export picture...") 103 + _("Export picture..."))
104 link_export_picture.SetUnderlines(False, False, False) 104 link_export_picture.SetUnderlines(False, False, False)
105 link_export_picture.SetColours("BLACK", "BLACK", "BLACK") 105 link_export_picture.SetColours("BLACK", "BLACK", "BLACK")
106 link_export_picture.SetToolTip(tooltip) 106 link_export_picture.SetToolTip(tooltip)
@@ -109,8 +109,8 @@ class InnerTaskPanel(wx.Panel): @@ -109,8 +109,8 @@ class InnerTaskPanel(wx.Panel):
109 link_export_picture.Bind(hl.EVT_HYPERLINK_LEFT, 109 link_export_picture.Bind(hl.EVT_HYPERLINK_LEFT,
110 self.OnLinkExportPicture) 110 self.OnLinkExportPicture)
111 111
112 - tooltip = wx.ToolTip("Export 3D surface")  
113 - link_export_surface = hl.HyperLinkCtrl(self, -1,"Export 3D surface...") 112 + tooltip = wx.ToolTip(_("Export 3D surface"))
  113 + link_export_surface = hl.HyperLinkCtrl(self, -1,_("Export 3D surface..."))
114 link_export_surface.SetUnderlines(False, False, False) 114 link_export_surface.SetUnderlines(False, False, False)
115 link_export_surface.SetColours("BLACK", "BLACK", "BLACK") 115 link_export_surface.SetColours("BLACK", "BLACK", "BLACK")
116 link_export_surface.SetToolTip(tooltip) 116 link_export_surface.SetToolTip(tooltip)
@@ -119,8 +119,8 @@ class InnerTaskPanel(wx.Panel): @@ -119,8 +119,8 @@ class InnerTaskPanel(wx.Panel):
119 link_export_surface.Bind(hl.EVT_HYPERLINK_LEFT, 119 link_export_surface.Bind(hl.EVT_HYPERLINK_LEFT,
120 self.OnLinkExportSurface) 120 self.OnLinkExportSurface)
121 121
122 - tooltip = wx.ToolTip("Export 3D mask (voxels)")  
123 - link_export_mask = hl.HyperLinkCtrl(self, -1,"Export mask...") 122 + tooltip = wx.ToolTip(_("Export 3D mask (voxels)"))
  123 + link_export_mask = hl.HyperLinkCtrl(self, -1,_("Export mask..."))
124 link_export_mask.SetUnderlines(False, False, False) 124 link_export_mask.SetUnderlines(False, False, False)
125 link_export_mask.SetColours("BLACK", "BLACK", "BLACK") 125 link_export_mask.SetColours("BLACK", "BLACK", "BLACK")
126 link_export_mask.SetToolTip(tooltip) 126 link_export_mask.SetToolTip(tooltip)
@@ -270,7 +270,7 @@ class InnerTaskPanel(wx.Panel): @@ -270,7 +270,7 @@ class InnerTaskPanel(wx.Panel):
270 270
271 271
272 dlg = wx.FileDialog(None, 272 dlg = wx.FileDialog(None,
273 - "Save 3D surface as...", # title 273 + _("Save 3D surface as..."), # title
274 "", # last used directory 274 "", # last used directory
275 project_name, # filename 275 project_name, # filename
276 WILDCARD_SAVE_3D, 276 WILDCARD_SAVE_3D,
@@ -289,9 +289,9 @@ class InnerTaskPanel(wx.Panel): @@ -289,9 +289,9 @@ class InnerTaskPanel(wx.Panel):
289 (filename, filetype)) 289 (filename, filetype))
290 else: 290 else:
291 dlg = wx.MessageDialog(None, 291 dlg = wx.MessageDialog(None,
292 - "You need to create a surface and make it "+  
293 - "visible before exporting it.",  
294 - 'InVesalius Information', 292 + _("You need to create a surface and make it ") +
  293 + _("visible before exporting it."),
  294 + _('InVesalius Information'),
295 wx.OK | wx.ICON_INFORMATION) 295 wx.OK | wx.ICON_INFORMATION)
296 try: 296 try:
297 dlg.ShowModal() 297 dlg.ShowModal()
invesalius/gui/task_importer.py
@@ -61,8 +61,8 @@ class InnerTaskPanel(wx.Panel): @@ -61,8 +61,8 @@ class InnerTaskPanel(wx.Panel):
61 self.float_hyper_list = [] 61 self.float_hyper_list = []
62 62
63 # Fixed hyperlink items 63 # Fixed hyperlink items
64 - tooltip = wx.ToolTip("Select DICOM or Analyze files to be reconstructed")  
65 - link_import_local = hl.HyperLinkCtrl(self, -1, "Import medical images...") 64 + tooltip = wx.ToolTip(_("Select DICOM or Analyze files to be reconstructed"))
  65 + link_import_local = hl.HyperLinkCtrl(self, -1, _("Import medical images..."))
66 link_import_local.SetUnderlines(False, False, False) 66 link_import_local.SetUnderlines(False, False, False)
67 link_import_local.SetColours("BLACK", "BLACK", "BLACK") 67 link_import_local.SetColours("BLACK", "BLACK", "BLACK")
68 link_import_local.SetToolTip(tooltip) 68 link_import_local.SetToolTip(tooltip)
@@ -79,8 +79,8 @@ class InnerTaskPanel(wx.Panel): @@ -79,8 +79,8 @@ class InnerTaskPanel(wx.Panel):
79 #link_import_pacs.UpdateLink() 79 #link_import_pacs.UpdateLink()
80 #link_import_pacs.Bind(hl.EVT_HYPERLINK_LEFT, self.OnLinkImportPACS) 80 #link_import_pacs.Bind(hl.EVT_HYPERLINK_LEFT, self.OnLinkImportPACS)
81 81
82 - tooltip = wx.ToolTip("Open an existing InVesalius project...")  
83 - link_open_proj = hl.HyperLinkCtrl(self,-1,"Open an existing project...") 82 + tooltip = wx.ToolTip(_("Open an existing InVesalius project..."))
  83 + link_open_proj = hl.HyperLinkCtrl(self,-1,_("Open an existing project..."))
84 link_open_proj.SetUnderlines(False, False, False) 84 link_open_proj.SetUnderlines(False, False, False)
85 link_open_proj.SetColours("BLACK", "BLACK", "BLACK") 85 link_open_proj.SetColours("BLACK", "BLACK", "BLACK")
86 link_open_proj.SetToolTip(tooltip) 86 link_open_proj.SetToolTip(tooltip)
invesalius/gui/task_slice.py
@@ -76,7 +76,7 @@ class InnerTaskPanel(wx.Panel): @@ -76,7 +76,7 @@ class InnerTaskPanel(wx.Panel):
76 76
77 77
78 # Fixed hyperlink items 78 # Fixed hyperlink items
79 - tooltip = wx.ToolTip("Create mask for slice segmentation and edition") 79 + tooltip = wx.ToolTip(_("Create mask for slice segmentation and edition"))
80 link_new_mask = hl.HyperLinkCtrl(self, -1, "Create new mask") 80 link_new_mask = hl.HyperLinkCtrl(self, -1, "Create new mask")
81 link_new_mask.SetUnderlines(False, False, False) 81 link_new_mask.SetUnderlines(False, False, False)
82 link_new_mask.SetColours("BLACK", "BLACK", "BLACK") 82 link_new_mask.SetColours("BLACK", "BLACK", "BLACK")
@@ -105,7 +105,7 @@ class InnerTaskPanel(wx.Panel): @@ -105,7 +105,7 @@ class InnerTaskPanel(wx.Panel):
105 self.fold_panel = fold_panel 105 self.fold_panel = fold_panel
106 106
107 # Button to fold to select region task 107 # Button to fold to select region task
108 - button_next = wx.Button(self, -1, "Create 3D surface") 108 + button_next = wx.Button(self, -1, _("Create 3D surface"))
109 if sys.platform != 'win32': 109 if sys.platform != 'win32':
110 button_next.SetWindowVariant(wx.WINDOW_VARIANT_SMALL) 110 button_next.SetWindowVariant(wx.WINDOW_VARIANT_SMALL)
111 button_next.Bind(wx.EVT_BUTTON, self.OnButtonNextTask) 111 button_next.Bind(wx.EVT_BUTTON, self.OnButtonNextTask)
@@ -134,8 +134,8 @@ class InnerTaskPanel(wx.Panel): @@ -134,8 +134,8 @@ class InnerTaskPanel(wx.Panel):
134 self.GetMaskSelected()) 134 self.GetMaskSelected())
135 135
136 def OnLinkNewMask(self, evt=None): 136 def OnLinkNewMask(self, evt=None):
137 - dlg = wx.TextEntryDialog(self, 'Name of new mask:',  
138 - 'InVesalius 3.0 - New mask') 137 + dlg = wx.TextEntryDialog(self, _('Name of new mask:'),
  138 + _('InVesalius 3.0 - New mask'))
139 dlg.CenterOnScreen() 139 dlg.CenterOnScreen()
140 default_mask_name = const.MASK_NAME_PATTERN %(mask.Mask.general_index+2) 140 default_mask_name = const.MASK_NAME_PATTERN %(mask.Mask.general_index+2)
141 dlg.SetValue(default_mask_name) 141 dlg.SetValue(default_mask_name)
@@ -193,7 +193,7 @@ class InnerFoldPanel(wx.Panel): @@ -193,7 +193,7 @@ class InnerFoldPanel(wx.Panel):
193 style.SetSecondColour(default_colour) 193 style.SetSecondColour(default_colour)
194 194
195 # Fold 1 - Mask properties 195 # Fold 1 - Mask properties
196 - item = fold_panel.AddFoldPanel("Mask properties", collapsed=True) 196 + item = fold_panel.AddFoldPanel(_("Mask properties"), collapsed=True)
197 self.mask_prop_panel = MaskProperties(item) 197 self.mask_prop_panel = MaskProperties(item)
198 fold_panel.ApplyCaptionStyle(item, style) 198 fold_panel.ApplyCaptionStyle(item, style)
199 fold_panel.AddFoldPanelWindow(item, self.mask_prop_panel, Spacing= 0, 199 fold_panel.AddFoldPanelWindow(item, self.mask_prop_panel, Spacing= 0,
@@ -201,7 +201,7 @@ class InnerFoldPanel(wx.Panel): @@ -201,7 +201,7 @@ class InnerFoldPanel(wx.Panel):
201 fold_panel.Expand(fold_panel.GetFoldPanel(0)) 201 fold_panel.Expand(fold_panel.GetFoldPanel(0))
202 202
203 # Fold 2 - Advanced edition tools 203 # Fold 2 - Advanced edition tools
204 - item = fold_panel.AddFoldPanel("Advanced edition tools", collapsed=True) 204 + item = fold_panel.AddFoldPanel(_("Advanced edition tools"), collapsed=True)
205 fold_panel.ApplyCaptionStyle(item, style) 205 fold_panel.ApplyCaptionStyle(item, style)
206 fold_panel.AddFoldPanelWindow(item, EditionTools(item), Spacing= 0, 206 fold_panel.AddFoldPanelWindow(item, EditionTools(item), Spacing= 0,
207 leftSpacing=0, rightSpacing=0) 207 leftSpacing=0, rightSpacing=0)
@@ -285,7 +285,7 @@ class MaskProperties(wx.Panel): @@ -285,7 +285,7 @@ class MaskProperties(wx.Panel):
285 285
286 ## LINE 2 286 ## LINE 2
287 text_thresh = wx.StaticText(self, -1, 287 text_thresh = wx.StaticText(self, -1,
288 - "Set predefined or manual threshold:") 288 + _("Set predefined or manual threshold:"))
289 289
290 ## LINE 3 290 ## LINE 3
291 combo_thresh = wx.ComboBox(self, -1, "", size=(15,-1), 291 combo_thresh = wx.ComboBox(self, -1, "", size=(15,-1),
@@ -437,17 +437,17 @@ class EditionTools(wx.Panel): @@ -437,17 +437,17 @@ class EditionTools(wx.Panel):
437 self.SetBackgroundColour(default_colour) 437 self.SetBackgroundColour(default_colour)
438 438
439 ## LINE 1 439 ## LINE 1
440 - text1 = wx.StaticText(self, -1, "Choose brush type, size or operation:") 440 + text1 = wx.StaticText(self, -1, _("Choose brush type, size or operation:"))
441 441
442 ## LINE 2 442 ## LINE 2
443 menu = wx.Menu() 443 menu = wx.Menu()
444 444
445 CIRCLE_BMP = wx.Bitmap("../icons/brush_circle.jpg", wx.BITMAP_TYPE_JPEG) 445 CIRCLE_BMP = wx.Bitmap("../icons/brush_circle.jpg", wx.BITMAP_TYPE_JPEG)
446 - item = wx.MenuItem(menu, MENU_BRUSH_CIRCLE, "Circle") 446 + item = wx.MenuItem(menu, MENU_BRUSH_CIRCLE, _("Circle"))
447 item.SetBitmap(CIRCLE_BMP) 447 item.SetBitmap(CIRCLE_BMP)
448 448
449 SQUARE_BMP = wx.Bitmap("../icons/brush_square.jpg", wx.BITMAP_TYPE_JPEG) 449 SQUARE_BMP = wx.Bitmap("../icons/brush_square.jpg", wx.BITMAP_TYPE_JPEG)
450 - item2 = wx.MenuItem(menu, MENU_BRUSH_SQUARE, "Square") 450 + item2 = wx.MenuItem(menu, MENU_BRUSH_SQUARE, _("Square"))
451 item2.SetBitmap(SQUARE_BMP) 451 item2.SetBitmap(SQUARE_BMP)
452 452
453 menu.AppendItem(item) 453 menu.AppendItem(item)
@@ -483,7 +483,7 @@ class EditionTools(wx.Panel): @@ -483,7 +483,7 @@ class EditionTools(wx.Panel):
483 line2.Add(combo_brush_op, 1, wx.EXPAND|wx.TOP|wx.RIGHT|wx.LEFT, 5) 483 line2.Add(combo_brush_op, 1, wx.EXPAND|wx.TOP|wx.RIGHT|wx.LEFT, 5)
484 484
485 ## LINE 3 485 ## LINE 3
486 - text_thresh = wx.StaticText(self, -1, "Brush threshold range:") 486 + text_thresh = wx.StaticText(self, -1, _("Brush threshold range:"))
487 487
488 ## LINE 4 488 ## LINE 4
489 gradient_thresh = grad.GradientSlider(self, -1, 0, 5000, 0, 5000, 489 gradient_thresh = grad.GradientSlider(self, -1, 0, 5000, 0, 5000,
invesalius/gui/task_surface.py
@@ -27,7 +27,7 @@ import wx.lib.pubsub as ps @@ -27,7 +27,7 @@ import wx.lib.pubsub as ps
27 import gui.widgets.foldpanelbar as fpb 27 import gui.widgets.foldpanelbar as fpb
28 28
29 #INTERPOLATION_MODE_LIST = ["Cubic", "Linear", "NearestNeighbor"] 29 #INTERPOLATION_MODE_LIST = ["Cubic", "Linear", "NearestNeighbor"]
30 -QUALITY_LIST = ["Low", "Medium", "High", "Optimal *", "Custom"] 30 +QUALITY_LIST = [_("Low"), _("Medium"), _("High"), _("Optimal *"), _("Custom")]
31 SURFACE_LIST = [] 31 SURFACE_LIST = []
32 MASK_LIST = ["Mask 1"] 32 MASK_LIST = ["Mask 1"]
33 MIN_TRANSPARENCY = 0 33 MIN_TRANSPARENCY = 0
@@ -38,7 +38,7 @@ BTN_NEW = wx.NewId() @@ -38,7 +38,7 @@ BTN_NEW = wx.NewId()
38 MENU_SQUARE = wx.NewId() 38 MENU_SQUARE = wx.NewId()
39 MENU_CIRCLE = wx.NewId() 39 MENU_CIRCLE = wx.NewId()
40 40
41 -OP_LIST = ["Draw", "Erase", "Threshold"] 41 +OP_LIST = [_("Draw"), _("Erase"), _("Threshold")]
42 42
43 43
44 class TaskPanel(wx.Panel): 44 class TaskPanel(wx.Panel):
@@ -80,7 +80,7 @@ class InnerTaskPanel(wx.Panel): @@ -80,7 +80,7 @@ class InnerTaskPanel(wx.Panel):
80 self.Bind(wx.EVT_BUTTON, self.OnButton) 80 self.Bind(wx.EVT_BUTTON, self.OnButton)
81 81
82 # Fixed hyperlink items 82 # Fixed hyperlink items
83 - tooltip = wx.ToolTip("Create 3D surface based on a mask") 83 + tooltip = wx.ToolTip(_("Create 3D surface based on a mask"))
84 link_new_surface = hl.HyperLinkCtrl(self, -1, "Create new 3D surface") 84 link_new_surface = hl.HyperLinkCtrl(self, -1, "Create new 3D surface")
85 link_new_surface.SetUnderlines(False, False, False) 85 link_new_surface.SetUnderlines(False, False, False)
86 link_new_surface.SetColours("BLACK", "BLACK", "BLACK") 86 link_new_surface.SetColours("BLACK", "BLACK", "BLACK")
@@ -99,7 +99,7 @@ class InnerTaskPanel(wx.Panel): @@ -99,7 +99,7 @@ class InnerTaskPanel(wx.Panel):
99 fold_panel.SetBackgroundColour(default_colour) 99 fold_panel.SetBackgroundColour(default_colour)
100 100
101 # Button to fold to select region task 101 # Button to fold to select region task
102 - button_next = wx.Button(self, -1, "Next step") 102 + button_next = wx.Button(self, -1, _("Next step"))
103 if sys.platform != 'win32': 103 if sys.platform != 'win32':
104 button_next.SetWindowVariant(wx.WINDOW_VARIANT_SMALL) 104 button_next.SetWindowVariant(wx.WINDOW_VARIANT_SMALL)
105 #button_next.Bind(wx.EVT_BUTTON, self.OnButtonNextTask) 105 #button_next.Bind(wx.EVT_BUTTON, self.OnButtonNextTask)
@@ -128,7 +128,7 @@ class InnerTaskPanel(wx.Panel): @@ -128,7 +128,7 @@ class InnerTaskPanel(wx.Panel):
128 evt.Skip() 128 evt.Skip()
129 129
130 def OnLinkNewSurface(self, evt=None): 130 def OnLinkNewSurface(self, evt=None):
131 - dlg = NewSurfaceDialog(self, -1, 'InVesalius 3.0 - New surface') 131 + dlg = NewSurfaceDialog(self, -1, _('InVesalius 3.0 - New surface'))
132 if dlg.ShowModal() == wx.ID_OK: 132 if dlg.ShowModal() == wx.ID_OK:
133 print "TODO: Send Signal - Create 3d surface %s \n" % dlg.GetValue() 133 print "TODO: Send Signal - Create 3d surface %s \n" % dlg.GetValue()
134 dlg.Destroy() 134 dlg.Destroy()
@@ -165,7 +165,7 @@ class NewSurfaceDialog(wx.Dialog): @@ -165,7 +165,7 @@ class NewSurfaceDialog(wx.Dialog):
165 # contents 165 # contents
166 166
167 # Label related to mask name 167 # Label related to mask name
168 - label_mask = wx.StaticText(self, -1, "Select mask to be used for creating 3D surface:") 168 + label_mask = wx.StaticText(self, -1, _("Select mask to be used for creating 3D surface:"))
169 169
170 # Combo related to mask name 170 # Combo related to mask name
171 combo_surface_name = wx.ComboBox(self, -1, "", choices= MASK_LIST, 171 combo_surface_name = wx.ComboBox(self, -1, "", choices= MASK_LIST,
@@ -176,11 +176,11 @@ class NewSurfaceDialog(wx.Dialog): @@ -176,11 +176,11 @@ class NewSurfaceDialog(wx.Dialog):
176 self.combo_surface_name = combo_surface_name 176 self.combo_surface_name = combo_surface_name
177 177
178 178
179 - label_surface = wx.StaticText(self, -1, "Set new surface name:") 179 + label_surface = wx.StaticText(self, -1, _("Set new surface name:"))
180 180
181 text = wx.TextCtrl(self, -1, "", size=(80,-1)) 181 text = wx.TextCtrl(self, -1, "", size=(80,-1))
182 - text.SetHelpText("Name the new surface to be created")  
183 - text.SetValue("Default 3D") 182 + text.SetHelpText(_("Name the new surface to be created"))
  183 + text.SetValue(_("Default 3D"))
184 self.text = text 184 self.text = text
185 185
186 sizer = wx.BoxSizer(wx.VERTICAL) 186 sizer = wx.BoxSizer(wx.VERTICAL)
@@ -209,7 +209,7 @@ class NewSurfaceDialog(wx.Dialog): @@ -209,7 +209,7 @@ class NewSurfaceDialog(wx.Dialog):
209 sizer.Fit(self) 209 sizer.Fit(self)
210 210
211 def GetValue(self): 211 def GetValue(self):
212 - return self.text.GetValue() +"| mask: "+ MASK_LIST[self.combo_surface_name.GetSelection()] 212 + return self.text.GetValue() + _("| mask: ") + MASK_LIST[self.combo_surface_name.GetSelection()]
213 213
214 class FoldPanel(wx.Panel): 214 class FoldPanel(wx.Panel):
215 def __init__(self, parent): 215 def __init__(self, parent):
@@ -248,14 +248,14 @@ class InnerFoldPanel(wx.Panel): @@ -248,14 +248,14 @@ class InnerFoldPanel(wx.Panel):
248 style.SetSecondColour(default_colour) 248 style.SetSecondColour(default_colour)
249 249
250 # Fold 1 - Surface properties 250 # Fold 1 - Surface properties
251 - item = fold_panel.AddFoldPanel("Surface properties", collapsed=True) 251 + item = fold_panel.AddFoldPanel(_("Surface properties"), collapsed=True)
252 fold_panel.ApplyCaptionStyle(item, style) 252 fold_panel.ApplyCaptionStyle(item, style)
253 fold_panel.AddFoldPanelWindow(item, SurfaceProperties(item), Spacing= 0, 253 fold_panel.AddFoldPanelWindow(item, SurfaceProperties(item), Spacing= 0,
254 leftSpacing=0, rightSpacing=0) 254 leftSpacing=0, rightSpacing=0)
255 fold_panel.Expand(fold_panel.GetFoldPanel(0)) 255 fold_panel.Expand(fold_panel.GetFoldPanel(0))
256 256
257 # Fold 2 - Surface quality 257 # Fold 2 - Surface quality
258 - item = fold_panel.AddFoldPanel("Surface quality", collapsed=True) 258 + item = fold_panel.AddFoldPanel(_("Surface quality"), collapsed=True)
259 fold_panel.ApplyCaptionStyle(item, style) 259 fold_panel.ApplyCaptionStyle(item, style)
260 fold_panel.AddFoldPanelWindow(item, QualityAdjustment(item), Spacing= 0, 260 fold_panel.AddFoldPanelWindow(item, QualityAdjustment(item), Spacing= 0,
261 leftSpacing=0, rightSpacing=0) 261 leftSpacing=0, rightSpacing=0)
@@ -300,7 +300,7 @@ class SurfaceProperties(wx.Panel): @@ -300,7 +300,7 @@ class SurfaceProperties(wx.Panel):
300 300
301 ## LINE 2 301 ## LINE 2
302 302
303 - text_transparency = wx.StaticText(self, -1, "Transparency:") 303 + text_transparency = wx.StaticText(self, -1, _("Transparency:"))
304 304
305 slider_transparency = wx.Slider(self, -1, 0, MIN_TRANSPARENCY, 305 slider_transparency = wx.Slider(self, -1, 0, MIN_TRANSPARENCY,
306 MAX_TRANSPARENCY, 306 MAX_TRANSPARENCY,
@@ -402,7 +402,7 @@ class QualityAdjustment(wx.Panel): @@ -402,7 +402,7 @@ class QualityAdjustment(wx.Panel):
402 # LINE 2 402 # LINE 2
403 check_decimate = wx.CheckBox(self, -1, "") 403 check_decimate = wx.CheckBox(self, -1, "")
404 404
405 - text_decimate = wx.StaticText(self, -1, "Decimate resolution:") 405 + text_decimate = wx.StaticText(self, -1, _("Decimate resolution:"))
406 406
407 spin_decimate = wx.SpinCtrl(self, -1, "", (30, 50)) 407 spin_decimate = wx.SpinCtrl(self, -1, "", (30, 50))
408 spin_decimate.SetRange(1,100) 408 spin_decimate.SetRange(1,100)
@@ -412,7 +412,7 @@ class QualityAdjustment(wx.Panel): @@ -412,7 +412,7 @@ class QualityAdjustment(wx.Panel):
412 # LINE 3 412 # LINE 3
413 check_smooth = wx.CheckBox(self, -1, "") 413 check_smooth = wx.CheckBox(self, -1, "")
414 414
415 - text_smooth = wx.StaticText(self, -1, "Smooth iterations:") 415 + text_smooth = wx.StaticText(self, -1, _("Smooth iterations:"))
416 416
417 spin_smooth = wx.SpinCtrl(self, -1, "", (30, 50)) 417 spin_smooth = wx.SpinCtrl(self, -1, "", (30, 50))
418 spin_smooth.SetRange(1,100) 418 spin_smooth.SetRange(1,100)
invesalius/gui/task_tools.py
@@ -54,12 +54,12 @@ class InnerTaskPanel(wx.Panel): @@ -54,12 +54,12 @@ class InnerTaskPanel(wx.Panel):
54 self.float_hyper_list = [] 54 self.float_hyper_list = []
55 55
56 # Fixed text and hyperlink items 56 # Fixed text and hyperlink items
57 - tooltip = wx.ToolTip("Measure distances")  
58 - txt_measure = wx.StaticText(self, -1, "Measure") 57 + tooltip = wx.ToolTip(_("Measure distances"))
  58 + txt_measure = wx.StaticText(self, -1, _("Measure"))
59 txt_measure.SetToolTip(tooltip) 59 txt_measure.SetToolTip(tooltip)
60 60
61 - tooltip = wx.ToolTip("Add text annotations")  
62 - txt_annotation = hl.HyperLinkCtrl(self, -1,"Add text annotations") 61 + tooltip = wx.ToolTip(_("Add text annotations"))
  62 + txt_annotation = hl.HyperLinkCtrl(self, -1,_("Add text annotations"))
63 txt_annotation.SetUnderlines(False, False, False) 63 txt_annotation.SetUnderlines(False, False, False)
64 txt_annotation.SetColours("BLACK", "BLACK", "BLACK") 64 txt_annotation.SetColours("BLACK", "BLACK", "BLACK")
65 txt_annotation.SetToolTip(tooltip) 65 txt_annotation.SetToolTip(tooltip)
invesalius/gui/widgets/slice_menu.py
@@ -36,19 +36,19 @@ class SliceMenu(wx.Menu): @@ -36,19 +36,19 @@ class SliceMenu(wx.Menu):
36 #Window and level from DICOM 36 #Window and level from DICOM
37 new_id = wx.NewId() 37 new_id = wx.NewId()
38 wl_item = wx.MenuItem(submenu_wl, new_id,\ 38 wl_item = wx.MenuItem(submenu_wl, new_id,\
39 - 'Default', kind=wx.ITEM_RADIO) 39 + _('Default'), kind=wx.ITEM_RADIO)
40 submenu_wl.AppendItem(wl_item) 40 submenu_wl.AppendItem(wl_item)
41 self.ID_TO_TOOL_ITEM[new_id] = wl_item 41 self.ID_TO_TOOL_ITEM[new_id] = wl_item
42 42
43 #Case the user change window and level 43 #Case the user change window and level
44 new_id = self.other_wl_id = wx.NewId() 44 new_id = self.other_wl_id = wx.NewId()
45 wl_item = wx.MenuItem(submenu_wl, new_id,\ 45 wl_item = wx.MenuItem(submenu_wl, new_id,\
46 - 'Manual', kind=wx.ITEM_RADIO) 46 + _('Manual'), kind=wx.ITEM_RADIO)
47 submenu_wl.AppendItem(wl_item) 47 submenu_wl.AppendItem(wl_item)
48 self.ID_TO_TOOL_ITEM[new_id] = wl_item 48 self.ID_TO_TOOL_ITEM[new_id] = wl_item
49 49
50 for name in sorted(const.WINDOW_LEVEL): 50 for name in sorted(const.WINDOW_LEVEL):
51 - if not(name == 'Default' or name == 'Manual'): 51 + if not(name == _('Default') or name == _('Manual')):
52 new_id = wx.NewId() 52 new_id = wx.NewId()
53 wl_item = wx.MenuItem(submenu_wl, new_id,\ 53 wl_item = wx.MenuItem(submenu_wl, new_id,\
54 name, kind=wx.ITEM_RADIO) 54 name, kind=wx.ITEM_RADIO)
@@ -58,8 +58,8 @@ class SliceMenu(wx.Menu): @@ -58,8 +58,8 @@ class SliceMenu(wx.Menu):
58 58
59 #----------- Sub menu of the save and load options --------- 59 #----------- Sub menu of the save and load options ---------
60 submenu_wl.AppendSeparator() 60 submenu_wl.AppendSeparator()
61 - options = ["Save current values",  
62 - "Save current values as...","Load values"] 61 + options = [_("Save current values"),
  62 + _("Save current values as..."),_("Load values")]
63 63
64 for name in options: 64 for name in options:
65 new_id = wx.NewId() 65 new_id = wx.NewId()
@@ -72,12 +72,12 @@ class SliceMenu(wx.Menu): @@ -72,12 +72,12 @@ class SliceMenu(wx.Menu):
72 submenu_pseudo_colours = wx.Menu() 72 submenu_pseudo_colours = wx.Menu()
73 new_id = wx.NewId() 73 new_id = wx.NewId()
74 color_item = wx.MenuItem(submenu_pseudo_colours, new_id,\ 74 color_item = wx.MenuItem(submenu_pseudo_colours, new_id,\
75 - 'Default ', kind=wx.ITEM_RADIO) 75 + _("Default "), kind=wx.ITEM_RADIO)
76 submenu_pseudo_colours.AppendItem(color_item) 76 submenu_pseudo_colours.AppendItem(color_item)
77 self.ID_TO_TOOL_ITEM[new_id] = color_item 77 self.ID_TO_TOOL_ITEM[new_id] = color_item
78 78
79 for name in sorted(const.SLICE_COLOR_TABLE): 79 for name in sorted(const.SLICE_COLOR_TABLE):
80 - if not(name == 'Default '): 80 + if not(name == _("Default ")):
81 new_id = wx.NewId() 81 new_id = wx.NewId()
82 color_item = wx.MenuItem(submenu_wl, new_id,\ 82 color_item = wx.MenuItem(submenu_wl, new_id,\
83 name, kind=wx.ITEM_RADIO) 83 name, kind=wx.ITEM_RADIO)
@@ -96,9 +96,9 @@ class SliceMenu(wx.Menu): @@ -96,9 +96,9 @@ class SliceMenu(wx.Menu):
96 96
97 97
98 # Add sub itens in the menu 98 # Add sub itens in the menu
99 - self.AppendMenu(-1, "Window Width and Level", submenu_wl)  
100 - self.AppendMenu(-1, "Pseudo Colour", submenu_pseudo_colours)  
101 - self.AppendMenu(-1, "Image Tiling", submenu_image_tiling) 99 + self.AppendMenu(-1, _("Window Width and Level"), submenu_wl)
  100 + self.AppendMenu(-1, _("Pseudo Colour"), submenu_pseudo_colours)
  101 + self.AppendMenu(-1, _("Image Tiling"), submenu_image_tiling)
102 102
103 # It doesn't work in Linux 103 # It doesn't work in Linux
104 self.Bind(wx.EVT_MENU, self.OnPopup) 104 self.Bind(wx.EVT_MENU, self.OnPopup)