adam@0
|
1 local _, AskMrRobot = ...
|
adam@0
|
2
|
adam@0
|
3 AskMrRobot.ItemLinkText = AskMrRobot.inheritsFrom(AskMrRobot.ItemTooltipFrame)
|
adam@0
|
4
|
adam@0
|
5 function AskMrRobot.ItemLinkText:new(name, parent)
|
adam@0
|
6 local o = AskMrRobot.ItemTooltipFrame:new(name, parent)
|
adam@0
|
7
|
adam@0
|
8 -- use the ItemLinkText class
|
adam@0
|
9 setmetatable(o, { __index = AskMrRobot.ItemLinkText })
|
adam@0
|
10
|
adam@0
|
11 -- the item text
|
adam@0
|
12 o.itemText = AskMrRobot.FontString:new(o, nil, "ARTWORK", "GameFontWhite")
|
adam@0
|
13 o.itemText:SetPoint("TOPLEFT")
|
adam@0
|
14 o.itemText:SetPoint("BOTTOMRIGHT")
|
adam@0
|
15 o.itemText:SetJustifyH("LEFT")
|
adam@0
|
16
|
adam@0
|
17 return o
|
adam@0
|
18 end
|
adam@0
|
19
|
adam@0
|
20 function AskMrRobot.ItemLinkText:SetFormat(formatText)
|
adam@0
|
21 self.formatText = formatText
|
adam@0
|
22 end
|
adam@0
|
23
|
adam@0
|
24 function AskMrRobot.ItemLinkText:SetItemId(itemId, upgradeId, suffixId)
|
adam@0
|
25 AskMrRobot.ItemTooltipFrame.SetItemLink(self, link)
|
adam@0
|
26 self.itemName = nil
|
adam@0
|
27 if itemId > 0 then
|
adam@0
|
28 local linkTemplate = "item:%d:0:0:0:0:0:%d:0:%d:0:%d"
|
adam@0
|
29 local itemName, itemLink = GetItemInfo(linkTemplate:format(itemId, suffixId, UnitLevel("player"), upgradeId))
|
adam@0
|
30 self:SetItemLink(itemLink)
|
adam@0
|
31 if itemLink then
|
adam@0
|
32 self.itemName = itemName
|
adam@0
|
33 if self.formatText then
|
adam@0
|
34 self.itemText:SetFormattedText(self.formatText, itemLink:gsub("%[", ""):gsub("%]", ""))
|
adam@0
|
35 else
|
adam@0
|
36 self.itemText:SetText(itemLink:gsub("%[", ""):gsub("%]", ""))
|
adam@0
|
37 end
|
adam@0
|
38 else
|
adam@0
|
39 self.itemText:SetFormattedText("unknown (%d)", itemId)
|
adam@0
|
40 self.itemText:SetTextColor(1,1,1)
|
adam@0
|
41 AskMrRobot.RegisterItemInfoCallback(itemId, function(name, itemLink2)
|
adam@0
|
42 if self.formatText then
|
adam@0
|
43 self.itemText:SetFormattedText(self.formatText, itemLink2:gsub("%[", ""):gsub("%]", ""))
|
adam@0
|
44 else
|
adam@0
|
45 self.itemText:SetText(itemLink2:gsub("%[", ""):gsub("%]", ""))
|
adam@0
|
46 end
|
adam@0
|
47 self:SetItemLink(itemLink2)
|
adam@0
|
48 self.itemName = name
|
adam@0
|
49 end)
|
adam@0
|
50 end
|
adam@0
|
51 else
|
adam@0
|
52 self.itemText:SetText("empty")
|
adam@0
|
53 self.itemText:SetTextColor(0.5,0.5,0.5)
|
adam@0
|
54 self:SetItemLink(nil)
|
adam@0
|
55 end
|
adam@0
|
56 end
|
adam@0
|
57
|
adam@0
|
58 function AskMrRobot.ItemLinkText:SetFontSize(fontSize)
|
adam@0
|
59 self.itemText:SetFontSize(fontSize)
|
adam@0
|
60 end |