Fix some bugs with notes view - exception happening due to lack of fit, and possibility of notes saving under the wrong fit

This commit is contained in:
blitzmann
2017-04-12 23:22:57 -04:00
parent 5aeb3a38c8
commit e28bf545e9
2 changed files with 13 additions and 4 deletions

View File

@@ -24,8 +24,14 @@ class NotesView(wx.Panel):
sFit = Fit.getInstance()
fit = sFit.getFit(event.fitID)
self.saveTimer.Stop() # cancel any pending timers
self.Parent.Parent.DisablePage(self, not fit or fit.isStructure)
# when switching fits, ensure that we save the notes for the previous fit
if self.lastFitId is not None:
sFit.editNotes(self.lastFitId, self.editNotes.GetValue())
if event.fitID is None and self.lastFitId is not None:
self.lastFitId = None
event.Skip()
@@ -41,7 +47,4 @@ class NotesView(wx.Panel):
def delayedSave(self, event):
sFit = Fit.getInstance()
fit = sFit.getFit(self.lastFitId)
newNotes = self.editNotes.GetValue()
fit.notes = newNotes
wx.PostEvent(self.mainFrame, GE.FitChanged(fitID=fit.ID))
sFit.editNotes(self.lastFitId, self.editNotes.GetValue())

View File

@@ -180,6 +180,12 @@ class Fit(object):
fit.clear()
return fit
@staticmethod
def editNotes(fitID, notes):
fit = eos.db.getFit(fitID)
fit.notes = notes
eos.db.commit()
def toggleFactorReload(self, fitID):
pyfalog.debug("Toggling factor reload for fit ID: {0}", fitID)
if fitID is None: