autocomplete of item names and exact match in buy tab
This commit is contained in:
@@ -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,
|
||||
|
||||
@@ -145,6 +145,9 @@
|
||||
<Size><AbsDimension x="240" y="20"/></Size>
|
||||
<Anchors><Anchor point="LEFT" relativeTo="AuxBuySearchBoxLabel" relativePoint="RIGHT"><Offset><AbsDimension x="10" y="0"/></Offset></Anchor></Anchors>
|
||||
<Scripts>
|
||||
<OnChar>
|
||||
Aux.util.item_name_autocomplete()
|
||||
</OnChar>
|
||||
<OnEnterPressed>
|
||||
this:ClearFocus()
|
||||
AuxBuySearchButton_OnClick()
|
||||
|
||||
@@ -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
|
||||
|
||||
|
||||
@@ -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
|
||||
Reference in New Issue
Block a user