diff --git a/gui/builtinMarketBrowser/itemView.py b/gui/builtinMarketBrowser/itemView.py index 00f76b6fa..67253c28f 100644 --- a/gui/builtinMarketBrowser/itemView.py +++ b/gui/builtinMarketBrowser/itemView.py @@ -1,15 +1,15 @@ import wx from logbook import Logger -from eos.saveddata.module import Module import gui.builtinMarketBrowser.pfSearchBox as SBox +from config import slotColourMap +from eos.saveddata.module import Module from gui.builtinMarketBrowser.events import ItemSelected, RECENTLY_USED_MODULES from gui.contextMenu import ContextMenu from gui.display import Display from gui.utils.staticHelpers import DragDropHelper -from service.attribute import Attribute from service.fit import Fit -from config import slotColourMap + pyfalog = Logger(__name__) diff --git a/gui/propertyEditor.py b/gui/propertyEditor.py index 18bb4e6fc..6847bb86c 100644 --- a/gui/propertyEditor.py +++ b/gui/propertyEditor.py @@ -13,6 +13,7 @@ from eos.db.gamedata.queries import getAttributeInfo, getItem from gui.auxFrame import AuxiliaryFrame from gui.bitmap_loader import BitmapLoader from gui.marketBrowser import SearchBox +from service.fit import Fit from service.market import Market @@ -170,12 +171,15 @@ class ItemView(d.Display): d.Display.__init__(self, parent) self.activeItems = [] + self.searchTimer = wx.Timer(self) + self.Bind(wx.EVT_TIMER, self.scheduleSearch, self.searchTimer) + self.searchBox = parent.Parent.Parent.searchBox # Bind search actions self.searchBox.Bind(SBox.EVT_TEXT_ENTER, self.scheduleSearch) self.searchBox.Bind(SBox.EVT_SEARCH_BTN, self.scheduleSearch) self.searchBox.Bind(SBox.EVT_CANCEL_BTN, self.clearSearch) - self.searchBox.Bind(SBox.EVT_TEXT, self.scheduleSearch) + self.searchBox.Bind(SBox.EVT_TEXT, self.delaySearch) self.update(Market.getInstance().getItemsWithOverrides()) @@ -188,6 +192,11 @@ class ItemView(d.Display): if updateDisplay: self.update(Market.getInstance().getItemsWithOverrides()) + def delaySearch(self, evt): + sFit = Fit.getInstance() + self.searchTimer.Stop() + self.searchTimer.Start(sFit.serviceFittingOptions["marketSearchDelay"], True) + def scheduleSearch(self, event=None): sMkt = Market.getInstance()