From 01c3181f77a5b504d4920cf041a4a3ce7f269cbe Mon Sep 17 00:00:00 2001 From: Manuel Simon Hirsig Date: Wed, 4 Nov 2015 22:36:49 +0100 Subject: [PATCH] aux now fetches uncached items slowly in the background --- info.lua | 2 +- item_search_frame.lua | 19 +++++++++++++------ static.lua | 2 +- 3 files changed, 15 insertions(+), 8 deletions(-) diff --git a/info.lua b/info.lua index 071f2bc..220c716 100644 --- a/info.lua +++ b/info.lua @@ -247,7 +247,7 @@ end function public.item(item_id, suffix_id, unique_id, enchant_id) local itemstring = 'item:'..(item_id or 0)..':'..(enchant_id or 0)..':'..(suffix_id or 0)..':'..(unique_id or 0) local name, itemstring, quality, level, class, subclass, max_stack, slot, texture = GetItemInfo(itemstring) - return { + return name and { itemstring = itemstring, name = name, texture = texture, diff --git a/item_search_frame.lua b/item_search_frame.lua index 224861d..9daf80f 100644 --- a/item_search_frame.lua +++ b/item_search_frame.lua @@ -65,10 +65,16 @@ public.recently_searched_config = { end, cell_setter = function(cell, datum) local item_info = Aux.info.item(datum.item_id) - cell.icon.icon_texture:SetTexture(item_info.texture) - cell.text:SetText('['..item_info.name..']') - local color = ITEM_QUALITY_COLORS[item_info.quality] - cell.text:SetTextColor(color.r, color.g, color.b) + if item_info then + cell.icon.icon_texture:SetTexture(item_info.texture) + cell.text:SetText('['..item_info.name..']') + local color = ITEM_QUALITY_COLORS[item_info.quality] + cell.text:SetTextColor(color.r, color.g, color.b) + else + cell.icon.icon_texture:SetTexture() + cell.text:SetText('N/A') + cell.text:SetTextColor(1,1,1) + end end, }, }, @@ -473,7 +479,7 @@ function private.update_recently_searched() end function public.set_item(item_id) - if item_id ~= private.item_id then + if item_id ~= private.item_id and GetItemInfo(item_id) then AuxItemSearchFrameItemRefreshButton:Enable() private.item_id = item_id public.update_item() @@ -483,6 +489,8 @@ function public.set_item(item_id) end private.update_recently_searched() public.start_search() + elseif not private.item_id then + AuxItemSearchFrameItemItemInputBox:Show() end end @@ -494,7 +502,6 @@ function public.update_item() local color = ITEM_QUALITY_COLORS[info[3]] AuxItemSearchFrameItemItemName:SetTextColor(color.r, color.g, color.b) AuxItemSearchFrameItemItem:Show() - AuxItemSearchFrameItemItemInputBox:Hide() else AuxItemSearchFrameItemItem:Hide() end diff --git a/static.lua b/static.lua index 350bee9..078727d 100644 --- a/static.lua +++ b/static.lua @@ -39,7 +39,7 @@ function public.on_update() local now = time() if now - private.last_query_time > 1 then private.last_query_time = now - Aux.log('querying data for item id '..private.uncached_item_ids[1]) +-- Aux.log('querying data for item id '..private.uncached_item_ids[1]) AuxStaticTooltip:SetHyperlink('item:'..private.uncached_item_ids[1]) end end