diff --git a/invesalius/control.py b/invesalius/control.py index b7bfcb8..1459c0e 100755 --- a/invesalius/control.py +++ b/invesalius/control.py @@ -29,7 +29,7 @@ import project as prj import data.imagedata_utils as utils import data.surface as surface import data.volume as volume -import reader.dicom_grouper +import reader.dicom_grouper as dg import gui.dialogs as dialog import reader.dicom_reader as dcm import reader.analyze_reader as analyze @@ -59,22 +59,20 @@ class Controller(): ps.Publisher().subscribe(self.Progress, "Update dicom load") ps.Publisher().subscribe(self.OnLoadImportPanel, "End dicom load") ps.Publisher().subscribe(self.OnCancelImport, 'Cancel DICOM load') - ps.Publisher().subscribe(self.OnLoadImportPanel, "Show import panel in frame") + def OnCancelImport(self, pubsub_evt): - self.cancel_import = True + #self.cancel_import = True + ps.Publisher().sendMessage('Hide import panel') def StartImportPanel(self, pubsub_evt): # path to directory path = pubsub_evt.data - # retrieve DICOM files splited into groups - + + # retrieve DICOM files splited into groups reader = dcm.ProgressDicomReader() reader.SetWindowEvent(self.frame) reader.SetDirectoryPath(path) - - #self.frame.Bind(reader.evt_update_progress, self.Progress) - #self.frame.Bind(reader.evt_end_load_file, self.LoadPanel) def Progress(self, evt): data = evt.data @@ -97,16 +95,13 @@ class Controller(): def OnLoadImportPanel(self, evt): patient_series = evt.data - if not self.cancel_import: - self.LoadImportPanel(patient_series) - ps.Publisher().sendMessage('Show import panel') - else: - print "----- hide" - self.cancel_import = False - ps.Publisher().sendMessage('Hide import panel') + self.LoadImportPanel(patient_series) + ps.Publisher().sendMessage('Show import panel') + ps.Publisher().sendMessage("Show import panel in frame") + def LoadImportPanel(self, patient_series): - if patient_series: + if isinstance(patient_series, list): ps.Publisher().sendMessage("Load import panel", patient_series) first_patient = patient_series[0] ps.Publisher().sendMessage("Load dicom preview", first_patient) diff --git a/invesalius/gui/frame.py b/invesalius/gui/frame.py index 2c575fb..2791aea 100755 --- a/invesalius/gui/frame.py +++ b/invesalius/gui/frame.py @@ -167,8 +167,7 @@ class Frame(wx.Frame): self.aui_manager = aui_manager def ShowImportPanel(self, evt_pubsub): - path = evt_pubsub.data - ps.Publisher().sendMessage("Load data to import panel", path) + #ps.Publisher().sendMessage("Load data to import panel", path) aui_manager = self.aui_manager aui_manager.GetPane("Import").Show(1) @@ -178,8 +177,6 @@ class Frame(wx.Frame): def HideImportPanel(self, evt_pubsub): print "HideImportPanel" - path = evt_pubsub.data - #ps.Publisher().sendMessage("Load data to import panel", path) aui_manager = self.aui_manager aui_manager.GetPane("Import").Show(0) diff --git a/invesalius/gui/task_importer.py b/invesalius/gui/task_importer.py index 1cd288b..5b1476e 100644 --- a/invesalius/gui/task_importer.py +++ b/invesalius/gui/task_importer.py @@ -149,7 +149,7 @@ class InnerTaskPanel(wx.Panel): if dlg.ShowModal() == wx.ID_OK: path = dlg.GetPath() - ps.Publisher().sendMessage("Show import panel in frame", path) + ps.Publisher().sendMessage("Load data to import panel", path) # Only destroy a dialog after you're done with it. dlg.Destroy() diff --git a/invesalius/reader/dicom_reader.py b/invesalius/reader/dicom_reader.py index 54e3d41..fe467ab 100644 --- a/invesalius/reader/dicom_reader.py +++ b/invesalius/reader/dicom_reader.py @@ -141,8 +141,8 @@ class ProgressDicomReader: def UpdateLoadFileProgress(self,cont_progress): ps.Publisher().sendMessage("Update dicom load", cont_progress) - def EndLoadFile(self, grouper): - ps.Publisher().sendMessage("End dicom load", grouper) + def EndLoadFile(self, patient_list): + ps.Publisher().sendMessage("End dicom load", patient_list) def GetDicomGroups(self, path, recursive): -- libgit2 0.21.2