Add search lookup method for shipbrowser

This commit is contained in:
cncfanatics
2010-10-27 16:02:56 +02:00
parent ce3ae7ecb9
commit e0a92d0a68
3 changed files with 26 additions and 8 deletions

View File

@@ -140,6 +140,24 @@ class ShipBrowser(wx.Panel):
self.lpane.RefreshList()
self.Show()
def searchStage(self, event):
sMarket = service.Market.getInstance()
sFit = service.Market.getInstance()
query = event.text
self.lpane.RemoveAllChildren()
shipList = sMarket.searchShips(query)
fitList = sFit.searchFits(query)
for ID, name, race in shipList:
self.lpane.AddWidget(ShipItem(self.lpane, ID, (name, len(sFit.getFitsWithShip(ID))), race))
for ID, name, shipID, shipName in fitList:
self.lpane.AddWidget(FitItem(self.lpane, ID, (shipName, name), shipID))
self.lpane.RefreshList()
self.Show()
class PFGenBitmapButton(GenBitmapButton):
def __init__(self, parent, id, bitmap, pos, size, style):
GenBitmapButton.__init__(self, parent, id, bitmap, pos, size, style)

View File

@@ -87,6 +87,14 @@ class Fit(object):
fit.calculateModifiedAttributes()
return fit
def searchFits(self, name):
results = eos.db.searchFits(name)
fits = []
for fit in results:
fits.append((fit.ID, fit.name, fit.ship.item.ID, fit.ship.item.name))
return fits
def addImplant(self, fitID, itemID):
if fitID is None:
return False

View File

@@ -162,14 +162,6 @@ class Market():
def searchItems(self, name, callback):
self.searchWorkerThread.scheduleSearch(name, callback)
def searchFits(self, name):
results = eos.db.searchFits(name)
fits = []
for fit in results:
fits.append((fit.ID, fit.name, fit.ship.item.name))
return fits
def getImplantTree(self):
return self.getChildren(27)