diff --git a/buy.lua b/buy.lua index c90cc82..f2ee367 100644 --- a/buy.lua +++ b/buy.lua @@ -22,7 +22,7 @@ function AuxBuySearchButton_OnClick() Aux_Buy_ScrollbarUpdate() searchQuery = Aux.scan.create_query{ name = AuxBuySearchBox:GetText(), - exactMatch = true + exactMatch = true, } Aux.buy.set_message('Scanning auctions ...') Aux.scan.start{ @@ -33,7 +33,9 @@ function AuxBuySearchButton_OnClick() on_read_auction = function(i) local auction_item = Aux.info.auction_item(i) local stack_size = auction_item.charges or auction_item.count - record_auction(auction_item.name, stack_size, auction_item.buyout_price, auction_item.quality, auction_item.owner, auction_item.itemlink) + if auction_item.name == searchQuery.name then + record_auction(auction_item.name, stack_size, auction_item.buyout_price, auction_item.quality, auction_item.owner, auction_item.itemlink) + end end, on_complete = function() entries = entries or {} @@ -109,7 +111,9 @@ function AuxBuyBuySelectedButton_OnClick() end else local stack_size = auction_item.charges or auction_item.count - record_auction(auction_item.name, stack_size, auction_item.charges, auction_item.buyout_price, auction_item.quality, auction_item.owner, auction_item.itemlink) + if auction_item.name == searchQuery.name then + record_auction(auction_item.name, stack_size, auction_item.charges, auction_item.buyout_price, auction_item.quality, auction_item.owner, auction_item.itemlink) + end end end end, diff --git a/buy.xml b/buy.xml index ec49abb..2528bc6 100644 --- a/buy.xml +++ b/buy.xml @@ -145,6 +145,9 @@ + + Aux.util.item_name_autocomplete() + this:ClearFocus() AuxBuySearchButton_OnClick() diff --git a/core.lua b/core.lua index 594e81e..7c2da3f 100644 --- a/core.lua +++ b/core.lua @@ -1,4 +1,4 @@ -AuxVersion = "1.2.0" +AuxVersion = "1.3.0" AuxAuthors = "shirsig; Zerf; Zirco (Auctionator); Nimeral (Auctionator backport)" local lastRightClickAction = GetTime() @@ -111,6 +111,7 @@ end function Aux_SetupHookFunctions() + BrowseName:SetScript('OnChar', Aux.util.item_name_autocomplete) Aux.orig.AuctionFrameAuctions_OnShow = AuctionFrameAuctions_OnShow AuctionFrameAuctions_OnShow = Aux_Sell_AuctionFrameAuctions_OnShow diff --git a/util.lua b/util.lua index 32fc559..f137e36 100644 --- a/util.lua +++ b/util.lua @@ -8,5 +8,16 @@ function Aux.util.iter(array) end end -function Aux.util.dummy() +function Aux.util.item_name_autocomplete() + local text = this:GetText() + local textlen = strlen(text) + local name + for item_id=1,40000 do + name = GetItemInfo(item_id) + if name and strfind(strupper(name), '^' .. strupper(text)) then + this:SetText(name) + this:HighlightText(textlen, -1) + return + end + end end \ No newline at end of file