From d0e768b2121db6e6fb80e8b1f02a93ece91e4df6 Mon Sep 17 00:00:00 2001 From: paulojamorim Date: Thu, 4 Feb 2010 11:12:50 +0000 Subject: [PATCH] ENH: Display save dialog in the close project not saved, fixed cancel button --- invesalius/control.py | 5 ++++- invesalius/gui/dialogs.py | 7 ------- invesalius/gui/frame.py | 6 ++---- 3 files changed, 6 insertions(+), 12 deletions(-) diff --git a/invesalius/control.py b/invesalius/control.py index f0184fc..7b44f69 100755 --- a/invesalius/control.py +++ b/invesalius/control.py @@ -163,12 +163,12 @@ class Controller(): if (filename): if (st == const.PROJ_NEW) or (st == const.PROJ_CHANGE): answer = dialog.SaveChangesDialog(filename, self.frame) - if not answer: debug("Close without changes") self.CloseProject() ps.Publisher().sendMessage("Enable state project", False) ps.Publisher().sendMessage('Set project name') + ps.Publisher().sendMessage("Stop Config Recording") ps.Publisher().sendMessage('Close Window') elif answer == 1: self.ShowDialogSaveProject() @@ -176,13 +176,16 @@ class Controller(): self.CloseProject() ps.Publisher().sendMessage("Enable state project", False) ps.Publisher().sendMessage('Set project name') + ps.Publisher().sendMessage("Stop Config Recording") ps.Publisher().sendMessage('Close Window') + elif answer == -1: debug("Cancel") else: self.CloseProject() ps.Publisher().sendMessage("Enable state project", False) ps.Publisher().sendMessage('Set project name') + ps.Publisher().sendMessage("Stop Config Recording") ps.Publisher().sendMessage('Close Window') else: diff --git a/invesalius/gui/dialogs.py b/invesalius/gui/dialogs.py index 14964b4..c70edf2 100644 --- a/invesalius/gui/dialogs.py +++ b/invesalius/gui/dialogs.py @@ -376,14 +376,11 @@ def SaveChangesDialog(filename, parent): dlg = wx.MessageDialog(None, msg, "InVesalius 3", wx.ICON_QUESTION | wx.YES_NO | wx.CANCEL) - dlg.Bind(wx.EVT_LEFT_UP, teste) - try: answer = dlg.ShowModal() except(wx._core.PyAssertionError): #TODO: FIX win64 answer = wx.ID_YES - dlg.Destroy() os.chdir(current_dir) @@ -394,10 +391,6 @@ def SaveChangesDialog(filename, parent): else: return -1 -def teste(evt): - print evt - print "ENTROUUUUUUUUUUUUUUUUUUUUUUUUUUU" - def SaveChangesDialog2(filename): current_dir = os.path.abspath(".") msg = _("The project %s has been modified.\nSave changes?")%filename diff --git a/invesalius/gui/frame.py b/invesalius/gui/frame.py index 123daee..58b2381 100755 --- a/invesalius/gui/frame.py +++ b/invesalius/gui/frame.py @@ -120,13 +120,11 @@ class Frame(wx.Frame): def __bind_events_wx(self): self.Bind(wx.EVT_SIZE, self.OnSize) self.Bind(wx.EVT_MENU, self.OnMenuClick) - self.Bind(wx.EVT_CLOSE, self.CloseWindow) + self.Bind(wx.EVT_CLOSE, self.OnClose) #self.Bind(wx.EVT_CLOSE, self.OnExit) - def CloseWindow(self, evt): + def OnClose(self, evt): ps.Publisher().sendMessage('Close Project') - ps.Publisher().sendMessage("Stop Config Recording") - self.Destroy() def __init_aui(self): -- libgit2 0.21.2