Commit d0e768b2121db6e6fb80e8b1f02a93ece91e4df6
1 parent
79e73e8e
Exists in
master
and in
68 other branches
ENH: Display save dialog in the close project not saved, fixed cancel button
Showing
3 changed files
with
6 additions
and
12 deletions
Show diff stats
invesalius/control.py
... | ... | @@ -163,12 +163,12 @@ class Controller(): |
163 | 163 | if (filename): |
164 | 164 | if (st == const.PROJ_NEW) or (st == const.PROJ_CHANGE): |
165 | 165 | answer = dialog.SaveChangesDialog(filename, self.frame) |
166 | - | |
167 | 166 | if not answer: |
168 | 167 | debug("Close without changes") |
169 | 168 | self.CloseProject() |
170 | 169 | ps.Publisher().sendMessage("Enable state project", False) |
171 | 170 | ps.Publisher().sendMessage('Set project name') |
171 | + ps.Publisher().sendMessage("Stop Config Recording") | |
172 | 172 | ps.Publisher().sendMessage('Close Window') |
173 | 173 | elif answer == 1: |
174 | 174 | self.ShowDialogSaveProject() |
... | ... | @@ -176,13 +176,16 @@ class Controller(): |
176 | 176 | self.CloseProject() |
177 | 177 | ps.Publisher().sendMessage("Enable state project", False) |
178 | 178 | ps.Publisher().sendMessage('Set project name') |
179 | + ps.Publisher().sendMessage("Stop Config Recording") | |
179 | 180 | ps.Publisher().sendMessage('Close Window') |
181 | + | |
180 | 182 | elif answer == -1: |
181 | 183 | debug("Cancel") |
182 | 184 | else: |
183 | 185 | self.CloseProject() |
184 | 186 | ps.Publisher().sendMessage("Enable state project", False) |
185 | 187 | ps.Publisher().sendMessage('Set project name') |
188 | + ps.Publisher().sendMessage("Stop Config Recording") | |
186 | 189 | ps.Publisher().sendMessage('Close Window') |
187 | 190 | |
188 | 191 | else: | ... | ... |
invesalius/gui/dialogs.py
... | ... | @@ -376,14 +376,11 @@ def SaveChangesDialog(filename, parent): |
376 | 376 | dlg = wx.MessageDialog(None, msg, "InVesalius 3", |
377 | 377 | wx.ICON_QUESTION | wx.YES_NO | wx.CANCEL) |
378 | 378 | |
379 | - dlg.Bind(wx.EVT_LEFT_UP, teste) | |
380 | - | |
381 | 379 | try: |
382 | 380 | answer = dlg.ShowModal() |
383 | 381 | except(wx._core.PyAssertionError): #TODO: FIX win64 |
384 | 382 | answer = wx.ID_YES |
385 | 383 | |
386 | - | |
387 | 384 | dlg.Destroy() |
388 | 385 | os.chdir(current_dir) |
389 | 386 | |
... | ... | @@ -394,10 +391,6 @@ def SaveChangesDialog(filename, parent): |
394 | 391 | else: |
395 | 392 | return -1 |
396 | 393 | |
397 | -def teste(evt): | |
398 | - print evt | |
399 | - print "ENTROUUUUUUUUUUUUUUUUUUUUUUUUUUU" | |
400 | - | |
401 | 394 | def SaveChangesDialog2(filename): |
402 | 395 | current_dir = os.path.abspath(".") |
403 | 396 | msg = _("The project %s has been modified.\nSave changes?")%filename | ... | ... |
invesalius/gui/frame.py
... | ... | @@ -120,13 +120,11 @@ class Frame(wx.Frame): |
120 | 120 | def __bind_events_wx(self): |
121 | 121 | self.Bind(wx.EVT_SIZE, self.OnSize) |
122 | 122 | self.Bind(wx.EVT_MENU, self.OnMenuClick) |
123 | - self.Bind(wx.EVT_CLOSE, self.CloseWindow) | |
123 | + self.Bind(wx.EVT_CLOSE, self.OnClose) | |
124 | 124 | #self.Bind(wx.EVT_CLOSE, self.OnExit) |
125 | 125 | |
126 | - def CloseWindow(self, evt): | |
126 | + def OnClose(self, evt): | |
127 | 127 | ps.Publisher().sendMessage('Close Project') |
128 | - ps.Publisher().sendMessage("Stop Config Recording") | |
129 | - self.Destroy() | |
130 | 128 | |
131 | 129 | def __init_aui(self): |
132 | 130 | ... | ... |