Thread Tools Display Modes
Prev Previous Post   Next Post Next
04-01-19, 03:06 PM   #1
LudiusMaximus
A Rage Talon Dragon Guard
 
LudiusMaximus's Avatar
AddOn Author - Click to view addons
Join Date: Mar 2018
Posts: 320
GameTooltip SetBagItem() not working for bank slots

My Bagnon plugin relys on scanning item tooltips.

However, it seems that
SetBagItem(self:GetBag(), self:GetID())
does have no effect for items in bank slots (self:GetBag() == -1).

I am using this SetHyperlink() workaround, but is there really no proper way?

(Sorry for not providing a minimum working example that would run without Bagnon. Maybe someone can tell me how to hook OnEnter for item slots in general?)

Code:
-- Tooltip used for scanning.
local scannerTooltip = CreateFrame("GameTooltip", "BagnonRequiredLevelScannerTooltip", nil, "GameTooltipTemplate")
scannerTooltip:SetOwner(WorldFrame, "ANCHOR_NONE")

-- Function to set the tooltip to the current item.
local SetTooltip = function(self)
  
  -- Skip non-item slots.
  if(not self:GetItem()) then return end

  -- Set the tooltip to current item.
  if (self:GetBag() == -1) then
    scannerTooltip:SetHyperlink(self:GetItem())
  else
    scannerTooltip:SetBagItem(self:GetBag(), self:GetID())
  end

  -- Print the first tooltip line.
  print(time(), _G[scannerTooltip:GetName().."TextLeft1"]:GetText())
  
end

hooksecurefunc(Bagnon.ItemSlot, "OnEnter", SetTooltip)
Thanks!
  Reply With Quote
 

WoWInterface » Developer Discussions » Lua/XML Help » GameTooltip SetBagItem() not working for bank slots

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off