Fix issue that caused fits that were supposed to open in the background to calculate. Unfortunately this fix breaks the tab snapshot, will have to figure that out later
This commit is contained in:
@@ -292,7 +292,7 @@ class FittingView(d.Display):
|
||||
|
||||
def updateTab(self):
|
||||
sFit = service.Fit.getInstance()
|
||||
fit = sFit.getFit(self.getActiveFit())
|
||||
fit = sFit.getFit(self.getActiveFit(), basic=True)
|
||||
|
||||
bitmap = BitmapLoader.getImage("race_%s_small" % fit.ship.item.race, "gui")
|
||||
text = "%s: %s" % (fit.ship.item.name, fit.name)
|
||||
@@ -592,7 +592,7 @@ class FittingView(d.Display):
|
||||
pass
|
||||
|
||||
def OnShow(self, event):
|
||||
if not event.GetShow():
|
||||
if event.GetShow():
|
||||
try:
|
||||
self.MakeSnapshot()
|
||||
except:
|
||||
|
||||
@@ -89,8 +89,9 @@ class OpenFitsThread(threading.Thread):
|
||||
# We use 1 for all fits except the last one where we use 2 so that we
|
||||
# have correct calculations displayed at startup
|
||||
for fitID in self.fits[:-1]:
|
||||
print "startup 1 for fit: %s"%(fitID)
|
||||
wx.PostEvent(self.mainFrame, FitSelected(fitID=fitID, startup=1))
|
||||
|
||||
print "startup 2 for ",self.fits[-1]
|
||||
wx.PostEvent(self.mainFrame, FitSelected(fitID=self.fits[-1], startup=2))
|
||||
wx.CallAfter(self.callback)
|
||||
|
||||
@@ -207,7 +208,7 @@ class MainFrame(wx.Frame):
|
||||
# Remove any fits that cause exception when fetching (non-existent fits)
|
||||
for id in fits[:]:
|
||||
try:
|
||||
sFit.getFit(id)
|
||||
sFit.getFit(id, basic=True)
|
||||
except:
|
||||
fits.remove(id)
|
||||
|
||||
|
||||
@@ -224,14 +224,19 @@ class Fit(object):
|
||||
eos.db.commit()
|
||||
self.recalc(fit, withBoosters=True)
|
||||
|
||||
def getFit(self, fitID, projected = False):
|
||||
def getFit(self, fitID, projected=False, basic=False):
|
||||
''' Gets fit from database, and populates fleet data.
|
||||
|
||||
Projected is a recursion flag that is set to reduce recursions into projected fits
|
||||
Basic is a flag to simply return the fit without any other processing
|
||||
'''
|
||||
if fitID is None:
|
||||
return None
|
||||
fit = eos.db.getFit(fitID)
|
||||
|
||||
if basic:
|
||||
return fit
|
||||
|
||||
inited = getattr(fit, "inited", None)
|
||||
|
||||
if inited is None or inited is False:
|
||||
|
||||
Reference in New Issue
Block a user