Commit 8e5e0d4f4aeaa7d141feb1a6f26908dbd736ffa9

Authored by tatiana
1 parent 14306460

FIX: Import / cancel problem

invesalius/control.py
... ... @@ -29,7 +29,7 @@ import project as prj
29 29 import data.imagedata_utils as utils
30 30 import data.surface as surface
31 31 import data.volume as volume
32   -import reader.dicom_grouper
  32 +import reader.dicom_grouper as dg
33 33 import gui.dialogs as dialog
34 34 import reader.dicom_reader as dcm
35 35 import reader.analyze_reader as analyze
... ... @@ -59,22 +59,20 @@ class Controller():
59 59 ps.Publisher().subscribe(self.Progress, "Update dicom load")
60 60 ps.Publisher().subscribe(self.OnLoadImportPanel, "End dicom load")
61 61 ps.Publisher().subscribe(self.OnCancelImport, 'Cancel DICOM load')
62   - ps.Publisher().subscribe(self.OnLoadImportPanel, "Show import panel in frame")
  62 +
63 63  
64 64 def OnCancelImport(self, pubsub_evt):
65   - self.cancel_import = True
  65 + #self.cancel_import = True
  66 + ps.Publisher().sendMessage('Hide import panel')
66 67  
67 68 def StartImportPanel(self, pubsub_evt):
68 69 # path to directory
69 70 path = pubsub_evt.data
70   - # retrieve DICOM files splited into groups
71   -
  71 +
  72 + # retrieve DICOM files splited into groups
72 73 reader = dcm.ProgressDicomReader()
73 74 reader.SetWindowEvent(self.frame)
74 75 reader.SetDirectoryPath(path)
75   -
76   - #self.frame.Bind(reader.evt_update_progress, self.Progress)
77   - #self.frame.Bind(reader.evt_end_load_file, self.LoadPanel)
78 76  
79 77 def Progress(self, evt):
80 78 data = evt.data
... ... @@ -97,16 +95,13 @@ class Controller():
97 95  
98 96 def OnLoadImportPanel(self, evt):
99 97 patient_series = evt.data
100   - if not self.cancel_import:
101   - self.LoadImportPanel(patient_series)
102   - ps.Publisher().sendMessage('Show import panel')
103   - else:
104   - print "----- hide"
105   - self.cancel_import = False
106   - ps.Publisher().sendMessage('Hide import panel')
  98 + self.LoadImportPanel(patient_series)
  99 + ps.Publisher().sendMessage('Show import panel')
  100 + ps.Publisher().sendMessage("Show import panel in frame")
  101 +
107 102  
108 103 def LoadImportPanel(self, patient_series):
109   - if patient_series:
  104 + if isinstance(patient_series, list):
110 105 ps.Publisher().sendMessage("Load import panel", patient_series)
111 106 first_patient = patient_series[0]
112 107 ps.Publisher().sendMessage("Load dicom preview", first_patient)
... ...
invesalius/gui/frame.py
... ... @@ -167,8 +167,7 @@ class Frame(wx.Frame):
167 167 self.aui_manager = aui_manager
168 168  
169 169 def ShowImportPanel(self, evt_pubsub):
170   - path = evt_pubsub.data
171   - ps.Publisher().sendMessage("Load data to import panel", path)
  170 + #ps.Publisher().sendMessage("Load data to import panel", path)
172 171  
173 172 aui_manager = self.aui_manager
174 173 aui_manager.GetPane("Import").Show(1)
... ... @@ -178,8 +177,6 @@ class Frame(wx.Frame):
178 177  
179 178 def HideImportPanel(self, evt_pubsub):
180 179 print "HideImportPanel"
181   - path = evt_pubsub.data
182   - #ps.Publisher().sendMessage("Load data to import panel", path)
183 180  
184 181 aui_manager = self.aui_manager
185 182 aui_manager.GetPane("Import").Show(0)
... ...
invesalius/gui/task_importer.py
... ... @@ -149,7 +149,7 @@ class InnerTaskPanel(wx.Panel):
149 149  
150 150 if dlg.ShowModal() == wx.ID_OK:
151 151 path = dlg.GetPath()
152   - ps.Publisher().sendMessage("Show import panel in frame", path)
  152 + ps.Publisher().sendMessage("Load data to import panel", path)
153 153  
154 154 # Only destroy a dialog after you're done with it.
155 155 dlg.Destroy()
... ...
invesalius/reader/dicom_reader.py
... ... @@ -141,8 +141,8 @@ class ProgressDicomReader:
141 141 def UpdateLoadFileProgress(self,cont_progress):
142 142 ps.Publisher().sendMessage("Update dicom load", cont_progress)
143 143  
144   - def EndLoadFile(self, grouper):
145   - ps.Publisher().sendMessage("End dicom load", grouper)
  144 + def EndLoadFile(self, patient_list):
  145 + ps.Publisher().sendMessage("End dicom load", patient_list)
146 146  
147 147 def GetDicomGroups(self, path, recursive):
148 148  
... ...