Compare commits

...

18 Commits

Author SHA1 Message Date
42fab8e4a4 Fix 11.1.5 issue, update retail TOC 2025-04-26 16:45:39 -05:00
b368558959 Update TOCs 2025-04-02 07:27:36 -05:00
78cb950a80 Update TOCs 2025-02-23 14:00:22 -06:00
06dcc7ce99 Fix imported profiles not saving across reloads 2024-12-28 11:37:49 -06:00
2c00b23bf5 Remove debug print 2024-12-28 11:36:58 -06:00
590638a156 Update TOCs 2024-12-20 22:17:35 -06:00
e6bd39352c Fix max chi power not always updating correctly 2024-11-27 14:40:54 -06:00
a4060dff6f Update smaller changelog 2024-11-13 09:00:20 -06:00
268a6c6fbc Update TOCs 2024-11-13 08:58:17 -06:00
b75112db79 Fix error in CD module set to WhenReady mode 2024-08-30 21:54:08 -05:00
42e76dde72 Fix cooldown display for overridden spells
When a spell is overridden by another, our cooldown bar stops being able to track it. Normally this is fine if the spell completely changes as you probably don't expect a cd bar for Backstab to track Gloomblade.

But when the overridden spell shares the same name as the base spell, such as Fire Breath for Evokers with the Font of Magic talent, you very much would expect the bar to track both.

With this fix, tracking the base spell will show the cd for the overridden version as well.
2024-08-26 17:18:39 -05:00
43aa303887 Bump for new dependency versions 2024-08-25 22:46:07 -05:00
30ec3750c1 Fix error when using an invalid spell with a custom bar on 11.x 2024-08-14 11:34:54 -05:00
73891bca4b Update TOC for TWW 2024-08-14 10:20:29 -05:00
66f4492fa7 Fix spell cooldown bars in 11.x
GetSpellCooldown used to return 1 for "has duration", but the new native version returns true. Fun.

Additionally, it looks like the events triggering UpdateCustomBarEvent() are passing a nil argument that the mod thought was supposed to be the affected unit. So I also fixed that, though I don't know if that's an 11.x thing or not.

https://www.wowace.com/projects/ice-hud/issues/363
2024-07-27 15:42:31 -05:00
6c1c68a0c3 Update classic-era TOC 2024-07-25 22:34:32 -05:00
b17582afab Remove all the old right-click menu hackery
Evidently this isn't needed anymore on any current client, 11.x, Classic-era, et al.
2024-07-25 22:32:29 -05:00
e94138d201 Restore context menus for Health and Info modules
Apparently we don't have to do any of this anymore (and might not have had to do it for a long time, but I missed the memo) so if we can, just use the built-in menuing stuff. Setting focus doesn't trigger taint with this.
2024-07-25 22:25:55 -05:00
16 changed files with 222 additions and 275 deletions

View File

@ -107,8 +107,6 @@ IceHUD.validBarList = { "Bar", "HiBar", "RoundBar", "ColorBar", "RivetBar", "Riv
"BloodGlaives", "ArcHUD", "FangRune", "DHUD", "CleanCurvesOut", "CleanTank", "PillTank", "GemTank" }
IceHUD.validCustomModules = {Bar="Buff/Debuff watcher", Counter="Buff/Debuff stack counter", CD="Cooldown bar", Health="Health bar", Mana="Mana bar", CounterBar="Stack count bar"}
IceHUD_UnitFrame_DropDown = CreateFrame("Frame", "IceHUD_UnitFrame_DropDown", UIParent, "UIDropDownMenuTemplate")
--@debug@
IceHUD.optionsLoaded = true
--@end-debug@
@ -801,230 +799,6 @@ function IceHUD:GetIsInLFGGroup()
return IsInLFGGroup
end
local BLACKLISTED_UNIT_MENU_OPTIONS = {}
if UnitPopupButtons then
BLACKLISTED_UNIT_MENU_OPTIONS = {
SET_FOCUS = "ICEHUD_SET_FOCUS",
CLEAR_FOCUS = "ICEHUD_CLEAR_FOCUS",
LOCK_FOCUS_FRAME = true,
UNLOCK_FOCUS_FRAME = true,
}
if select(2, UnitClass("player")) ~= "WARLOCK" then
BLACKLISTED_UNIT_MENU_OPTIONS[PET_DISMISS] = "ICEHUD_PET_DISMISS"
end
UnitPopupButtons["ICEHUD_SET_FOCUS"] = {
text = L["Type %s to set focus"]:format(SLASH_FOCUS1),
tooltipText = L["Blizzard currently does not provide a proper way to right-click focus with custom unit frames."],
dist = 0,
}
UnitPopupButtons["ICEHUD_CLEAR_FOCUS"] = {
text = L["Type %s to clear focus"]:format(SLASH_CLEARFOCUS1),
tooltipText = L["Blizzard currently does not provide a proper way to right-click focus with custom unit frames."],
dist = 0,
}
UnitPopupButtons["ICEHUD_PET_DISMISS"] = {
text = L["Use your Dismiss Pet spell to dismiss a pet"],
tooltipText = L["Blizzard currently does not provide a proper way to right-click dismiss a pet with custom unit frames."],
dist = 0,
}
elseif UnitPopupSetFocusButtonMixin then
IceHUDUnitPopupSetFocusButtonMixin = CreateFromMixins(UnitPopupButtonBaseMixin)
function IceHUDUnitPopupSetFocusButtonMixin:GetText()
return L["Type %s to set focus"]:format(SLASH_FOCUS1)
end
function IceHUDUnitPopupSetFocusButtonMixin:OnClick()
end
IceHUDUnitPopupClearFocusButtonMixin = CreateFromMixins(UnitPopupButtonBaseMixin)
function IceHUDUnitPopupClearFocusButtonMixin:GetText()
return L["Type %s to clear focus"]:format(SLASH_CLEARFOCUS1)
end
function IceHUDUnitPopupClearFocusButtonMixin:OnClick()
end
IceHUDUnitPopupPetDismissButtonMixin = CreateFromMixins(UnitPopupButtonBaseMixin)
function IceHUDUnitPopupPetDismissButtonMixin:GetText()
return L["Use your Dismiss Pet spell to dismiss a pet"]
end
function IceHUDUnitPopupPetDismissButtonMixin:CanShow()
return UnitPopupPetDismissButtonMixin:CanShow()
end
function IceHUDUnitPopupPetDismissButtonMixin:OnClick()
end
BLACKLISTED_UNIT_MENU_OPTIONS[SET_FOCUS] = IceHUDUnitPopupSetFocusButtonMixin
BLACKLISTED_UNIT_MENU_OPTIONS[CLEAR_FOCUS] = IceHUDUnitPopupClearFocusButtonMixin
BLACKLISTED_UNIT_MENU_OPTIONS[LOCK_FOCUS_FRAME] = true
BLACKLISTED_UNIT_MENU_OPTIONS[UNLOCK_FOCUS_FRAME] = true
if select(2, UnitClass("player")) ~= "WARLOCK" then
BLACKLISTED_UNIT_MENU_OPTIONS[PET_DISMISS] = IceHUDUnitPopupPetDismissButtonMixin
end
end
local munged_unit_menus = {}
local function munge_unit_menu(menu)
local result = munged_unit_menus[menu]
if result then
return result
end
if not UnitPopupMenus then
munged_unit_menus[menu] = menu
return menu
end
local data = UnitPopupMenus[menu]
if not data then
munged_unit_menus[menu] = menu
return menu
end
local found = false
if data.GetMenuButtons then
local btns = data.GetMenuButtons()
for i=1, #btns do
if btns[i].IsMenu() then
local subbtns = btns[i].GetMenuButtons()
for j=1, #subbtns do
if BLACKLISTED_UNIT_MENU_OPTIONS[subbtns[j]:GetText()] then
found = true
break
end
end
else
if BLACKLISTED_UNIT_MENU_OPTIONS[btns[i]:GetText()] then
found = true
break
end
end
if found then
break
end
end
else
for _, v in ipairs(data) do
if BLACKLISTED_UNIT_MENU_OPTIONS[v] then
found = true
break
end
end
end
if not found then
-- nothing to remove or add, we're all fine here.
munged_unit_menus[menu] = menu
return menu
end
local new_data = {}
if data.GetMenuButtons then
local new_buttons_list = {}
local btns = data.GetMenuButtons()
for i=1, #btns do
if btns[i].IsMenu() then
local subbtns = btns[i].GetMenuButtons()
for j=1, #subbtns do
if subbtns[j] then
local blacklisted = BLACKLISTED_UNIT_MENU_OPTIONS[subbtns[j]:GetText()]
if not blacklisted then
new_buttons_list[#new_buttons_list+1] = subbtns[j]
elseif blacklisted ~= true then
new_buttons_list[#new_buttons_list+1] = blacklisted
end
end
end
else
local blacklisted = BLACKLISTED_UNIT_MENU_OPTIONS[btns[i]:GetText()]
if not blacklisted then
new_buttons_list[#new_buttons_list+1] = btns[i]
elseif blacklisted ~= true then
new_buttons_list[#new_buttons_list+1] = blacklisted
end
end
end
new_data = data
function new_data:GetMenuButtons()
return new_buttons_list
end
else
for _, v in ipairs(data) do
local blacklisted = BLACKLISTED_UNIT_MENU_OPTIONS[v]
if not blacklisted then
new_data[#new_data+1] = v
elseif blacklisted ~= true then
new_data[#new_data+1] = blacklisted
end
end
end
local new_menu_name = "ICEHUD_" .. menu
UnitPopupMenus[new_menu_name] = new_data
munged_unit_menus[menu] = new_menu_name
return new_menu_name
end
IceHUD.MungeUnitMenu = munge_unit_menu
local function figure_unit_menu(unit)
if unit == "focus" then
return "FOCUS"
end
if UnitIsUnit(unit, "player") then
return "SELF"
end
if UnitIsUnit(unit, "vehicle") then
-- NOTE: vehicle check must come before pet check for accuracy's sake because
-- a vehicle may also be considered your pet
return "VEHICLE"
end
if UnitIsUnit(unit, "pet") then
return "PET"
end
if not UnitIsPlayer(unit) then
return "TARGET"
end
local id = UnitInRaid(unit)
if id then
return "RAID_PLAYER", id
end
if UnitInParty(unit) then
return "PARTY"
end
return "PLAYER"
end
if UnitPopupFrames then
UnitPopupFrames[#UnitPopupFrames+1] = "IceHUD_UnitFrame_DropDown"
end
IceHUD.DropdownUnit = nil
-- todo: update for new UnitPopup_OpenMenu() API
if UnitPopup_ShowMenu then
UIDropDownMenu_Initialize(IceHUD_UnitFrame_DropDown, function()
if not IceHUD.DropdownUnit then
return
end
local menu, id = figure_unit_menu(IceHUD.DropdownUnit)
if menu then
menu = IceHUD.MungeUnitMenu(menu)
UnitPopup_ShowMenu(IceHUD_UnitFrame_DropDown, menu, IceHUD.DropdownUnit, nil, id)
end
end, "MENU", nil)
end
function IceHUD:OutOfCombatWrapper(func)
return function(...)
return IceHUD:RunOnLeaveCombat(func, ...)

View File

@ -1,9 +1,9 @@
## Interface: 110000
## Interface-Retail: 110000
## Interface-Classic: 11502
## Interface: 110105
## Interface-Retail: 110105
## Interface-Classic: 11507
## Interface-BCC: 20504
## Interface-Wrath: 30403
## Interface-Cata: 40400
## Interface-Cata: 40402
## Author: Parnic, originally created by Iceroth
## Name: IceHUD
## Title: IceHUD |cff7fff7f-Ace3-|r
@ -22,6 +22,18 @@
## X-Curse-Project-ID: 5394
## X-WoWI-ID: 8149
## X-Wago-ID: 5bGolJN0
## Category-enUS: Unit Frames
## Category-deDE: Einheitenfenster
## Category-esES: Marcos de unidades
## Category-esMX: Marcos de unidades
## Category-frFR: Portraits d'unités
## Category-itIT: Riquadri delle unità
## Category-koKR: 개체창
## Category-ptBR: Quadros de unidade
## Category-ruRU: Рамки юнитов
## Category-zhCN: 单位框体
## Category-zhTW: 單位框架
## Group: IceHUD
#@no-lib-strip@
# Libraries

View File

@ -1,9 +1,9 @@
## Interface: 110000
## Interface-Retail: 110000
## Interface-Classic: 11502
## Interface: 110105
## Interface-Retail: 110105
## Interface-Classic: 11507
## Interface-BCC: 20504
## Interface-Wrath: 30403
## Interface-Cata: 40400
## Interface-Cata: 40402
## Title: IceHUD |cff7fff7f-Options-|r
## Author: Parnic
## Version: @project-version@
@ -12,6 +12,18 @@
## Dependencies: IceHUD
## LoadOnDemand: 1
## IconTexture: Interface\Icons\Spell_Frost_Frost
## Category-enUS: Unit Frames
## Category-deDE: Einheitenfenster
## Category-esES: Marcos de unidades
## Category-esMX: Marcos de unidades
## Category-frFR: Portraits d'unités
## Category-itIT: Riquadri delle unità
## Category-koKR: 개체창
## Category-ptBR: Quadros de unidade
## Category-ruRU: Рамки юнитов
## Category-zhCN: 单位框体
## Category-zhTW: 單位框架
## Group: IceHUD
Json.lua
JsonDecode.lua

View File

@ -830,10 +830,11 @@ function IceHUD_Options:SetupProfileImportButtons()
if err ~= nil then
print("failed to import profile: "..err)
else
print("importing profile")
-- print("importing profile")
IceHUD:PreProfileChanged()
IceHUD:populateDefaults(newTable, IceHUD.IceCore.defaults.profile)
IceHUD.db.profile = IceHUD.deepcopy(newTable)
IceHUD.db.profiles[IceHUD.db:GetCurrentProfile()] = IceHUD.db.profile
IceHUD:PostProfileChanged()
end
AceGUI:Release(widget)

View File

@ -1,5 +1,62 @@
# Changelog
v1.15.14:
- Support WoW 11.1.5
- Update TWW TOC to 11.1.5
v1.15.13:
- Update TOCs
v1.15.12:
- Update TOCs
v1.15.11:
- Fix imported profiles not saving across reloads
v1.15.10:
- Fix Chi not updating properly when the player's maximum amount of Chi points changes (e.g. via Ascension talent).
- Update TOCs
v1.15.9:
- Update Cataclysm Classic TOC to 4.4.1
- Update Classic-era TOC to 1.15.4
- Update TWW TOC to 11.0.5
v1.15.8:
- Fix reported error with custom cooldown bars set to "when ready" mode due to deprecation in 11.x (wowace issue #368)
v1.15.7:
- Fix cooldown display for overridden spells (such as Evoker spells where Font of Magic replaces the base spell with an override with the same name).
v1.15.6:
- Package new version of LibDogTag-Unit to fix an error with some units on 11.0.2
v1.15.5:
- Fix error when using an invalid spell with a custom bar on 11.x
v1.15.4:
- Update TOC for TWW
v1.15.3:
- Fix custom cooldown bars not working in 11.x (wowace issue #363)
v1.15.2:
- Re-enable right-click context menus on 11.x.
- Update TOC for Classic-era
v1.15.1:
- Fix error opening options.
@ -96,7 +153,7 @@ v1.14.23:
v1.14.22:
- Fixed reported issue with a Lua error on Wrath Classic clients. https://www.wowace.com/projects/ice-hud/issues/344
- Fixed reported issue with a Lua error on Wrath Classic clients. <https://www.wowace.com/projects/ice-hud/issues/344>
- Fixed Vigor module not working when riding Grotto Netherwing Drake (and theoretically all future Dragonriding mount types).
- Updated TOC for Wrath-Classic.
@ -517,7 +574,7 @@ v1.10.13:
v1.10.12:
- Tweaked a few Druid CCs in the CC modules. If you've got a more up-to-date list of any of the CCs, please send them along to icehud@parnic.com
- Tweaked a few Druid CCs in the CC modules. If you've got a more up-to-date list of any of the CCs, please send them along to <icehud@parnic.com>
- Fixed a problem that could cause a custom counter to loop forever and cause framerate problems. (ticket #230)
- Updated default text values for Health and Mana modules to show values in shortened form so they're more readable. Anyone who has customized their text will not be affected by this change and the shortened form only kicks in once values reach 10,000.
@ -1534,7 +1591,7 @@ v1.3.17:
- fixed <http://www.wowace.com/projects/ice-hud/tickets/8-module-target-info-long-targetnames-overwrites-the/> : target name in the TargetInfo module no longer spills to the next line or gets cut off if it's too long
- made the threat module only display while the player is in combat or the player has some threat on his target
- added an option to only display the threat module while in a group. set by default
- adding HungerForBlood user-submitted module. I don't have an assassination rogue and don't plan on having one, so this is _untested_ by me. the author is responsible for fixing bugs in it
- adding HungerForBlood user-submitted module. I don't have an assassination rogue and don't plan on having one, so this is *untested* by me. the author is responsible for fixing bugs in it
- also updated a few settings in SliceAndDice to conform with the rest of the mod
- fix for malygos fight where the player uses combo points while in a vehicle
- made runes flash when they become active whether the cooldown or alpha setting is being used

View File

@ -20,8 +20,14 @@ end
local GetSpellInfo = GetSpellInfo
if not GetSpellInfo and C_Spell and C_Spell.GetSpellInfo then
GetSpellInfo = function(id)
if not id then
return nil
end
local info = C_Spell.GetSpellInfo(id)
return info.name, nil, info.iconID
if info then
return info.name, nil, info.iconID
end
end
end

View File

@ -30,8 +30,14 @@ end
local GetSpellInfo = GetSpellInfo
if not GetSpellInfo and C_Spell and C_Spell.GetSpellInfo then
GetSpellInfo = function(id)
if not id then
return nil
end
local info = C_Spell.GetSpellInfo(id)
return info.name, nil, info.iconID
if info then
return info.name, nil, info.iconID, info.spellID
end
end
end
@ -55,6 +61,11 @@ if not IsUsableSpell and C_Spell then
IsUsableSpell = C_Spell.IsSpellUsable
end
local SpellHasRange = SpellHasRange
if not SpellHasRange and C_Spell then
SpellHasRange = C_Spell.SpellHasRange
end
IceCustomCDBar.prototype.cooldownDuration = 0
IceCustomCDBar.prototype.cooldownEndTime = 0
IceCustomCDBar.prototype.coolingDown = false
@ -630,17 +641,27 @@ end
-- 'Protected' methods --------------------------------------------------------
function IceCustomCDBar.prototype:GetCooldownDurationOverride(spellID)
if spellID and FindSpellOverrideByID then
local override = FindSpellOverrideByID(spellID)
if override and override ~= spellID then
return self:GetCooldownDuration(override)
end
end
end
function IceCustomCDBar.prototype:GetCooldownDuration(buffName)
buffName = self:GetSpellNameOrId(buffName)
local spellID
buffName, spellID = self:GetSpellNameOrId(buffName)
local now = GetTime()
local localRemaining = nil
local localStart, localDuration, hasCooldown = GetSpellCooldown(buffName)
if (hasCooldown == 1) then
if hasCooldown then
-- the item has a potential cooldown
if (localDuration <= 1.5) then
return nil, nil
if localDuration <= 1.5 then
return self:GetCooldownDurationOverride(spellID)
end
localRemaining = localDuration + (localStart - now)
@ -651,7 +672,7 @@ function IceCustomCDBar.prototype:GetCooldownDuration(buffName)
return localDuration, localRemaining
else
return nil, nil
return self:GetCooldownDurationOverride(spellID)
end
end
@ -734,7 +755,7 @@ function IceCustomCDBar.prototype:UpdateItemUnitInventoryChanged(event, unit)
end
function IceCustomCDBar.prototype:UpdateCustomBarEvent(event, unit)
if unit ~= self.unit then
if unit and unit ~= self.unit then
return
end
if not self.moduleSettings.cooldownType or self.moduleSettings.cooldownType == COOLDOWN_TYPE_SPELL then
@ -862,7 +883,8 @@ function IceCustomCDBar.prototype:IsReady()
end
function IceCustomCDBar.prototype:GetSpellNameOrId(spellName)
return spellName
local id = select(4, GetSpellInfo(spellName))
return spellName, id
end
function IceCustomCDBar.prototype:Show(bShouldShow, bForceHide)

View File

@ -10,8 +10,14 @@ local DefaultAuraIcon = "Interface\\Icons\\Spell_Frost_Frost"
local GetSpellInfo = GetSpellInfo
if not GetSpellInfo and C_Spell and C_Spell.GetSpellInfo then
GetSpellInfo = function(id)
if not id then
return nil
end
local info = C_Spell.GetSpellInfo(id)
return info.name, nil, info.iconID
if info then
return info.name, nil, info.iconID
end
end
end

View File

@ -9,8 +9,14 @@ end
local GetSpellInfo = GetSpellInfo
if not GetSpellInfo and C_Spell and C_Spell.GetSpellInfo then
GetSpellInfo = function(id)
if not id then
return nil
end
local info = C_Spell.GetSpellInfo(id)
return info.name, nil, info.iconID, info.castTime
if info then
return info.name, nil, info.iconID, info.castTime
end
end
end

View File

@ -40,6 +40,13 @@ function HarmonyPower.prototype:Enable(core)
HarmonyPower.super.prototype.Enable(self, core)
self:RegisterEvent("UNIT_POWER_FREQUENT", "UpdateRunePower")
if IceHUD.EventExistsUnitMaxPower then
self:RegisterEvent("UNIT_MAXPOWER", "PlayerChiUpdate")
end
end
function HarmonyPower.prototype:PlayerChiUpdate()
self:Redraw()
end
function HarmonyPower.prototype:UpdateRunePower(event, arg1, arg2)

View File

@ -922,13 +922,6 @@ function PlayerHealth.prototype:CreateBackground(redraw)
end
end
if not self.frame.button.menu then
self.frame.button.menu = function(this, unit)
IceHUD.DropdownUnit = unit
ToggleDropDownMenu(1, nil, IceHUD_UnitFrame_DropDown, "cursor")
end
end
self:EnableClickTargeting(self.moduleSettings.allowMouseInteraction)
end
@ -962,7 +955,7 @@ function PlayerHealth.prototype:EnableClickTargeting(bEnable)
self.frame.button:EnableMouse(true)
self.frame.button:RegisterForClicks("AnyUp")
self.frame.button:SetAttribute("type1", "target")
self.frame.button:SetAttribute("type2", "menu")
self.frame.button:SetAttribute("type2", "togglemenu")
self.frame.button:SetAttribute("unit", self.unit)
-- set up click casting

View File

@ -477,7 +477,11 @@ function RollTheBones.prototype:GetItemIdFromItemLink(linkStr)
local _
if linkStr then
_, itemId, _, _, _, _, _, _, _ = strsplit(":", linkStr)
_, itemId, itemId2, _, _, _, _, _, _ = strsplit(":", linkStr)
end
if not tonumber(itemId) then
itemId = itemId2
end
return itemId or 0

View File

@ -532,7 +532,11 @@ function SliceAndDice.prototype:GetItemIdFromItemLink(linkStr)
local _
if linkStr then
_, itemId, _, _, _, _, _, _, _ = strsplit(":", linkStr)
_, itemId, itemId2, _, _, _, _, _, _ = strsplit(":", linkStr)
end
if not tonumber(itemId) then
itemId = itemId2
end
return itemId or 0

View File

@ -713,13 +713,6 @@ function IceTargetHealth.prototype:CreateBackground(redraw)
self.frame.button:SetPoint("BOTTOMRIGHT", self.frame, "BOTTOMRIGHT", -1 * self.frame:GetWidth() / 1.5, 0)
end
end
if not self.frame.button.menu then
self.frame.button.menu = function(this, unit)
IceHUD.DropdownUnit = unit
ToggleDropDownMenu(1, nil, IceHUD_UnitFrame_DropDown, "cursor")
end
end
end
end
@ -733,7 +726,7 @@ function IceTargetHealth.prototype:EnableClickTargeting(bEnable)
self.frame.button:EnableMouse(true)
self.frame.button:RegisterForClicks("AnyUp")
self.frame.button:SetAttribute("type1", "target")
self.frame.button:SetAttribute("type2", "menu")
self.frame.button:SetAttribute("type2", "togglemenu")
self.frame.button:SetAttribute("unit", self.unit)
-- set up click casting

View File

@ -1150,7 +1150,7 @@ do -- OVERRIDE: IceTargetInfo.prototype:CreateFrame(redraw)
self.frame:SetScript("OnLeave", function(frame) self:OnLeave(frame) end)
self.frame:SetAttribute("type1", "target")
self.frame:SetAttribute("type2", "menu")
self.frame:SetAttribute("type2", "togglemenu")
-- set up click casting
ClickCastFrames = ClickCastFrames or {}
@ -1173,13 +1173,6 @@ do -- OVERRIDE: IceTargetInfo.prototype:CreateFrame(redraw)
self.frame:SetAttribute("unit", self.unit)
if not self.frame.menu then
self.frame.menu = function(this, unit)
IceHUD.DropdownUnit = unit
ToggleDropDownMenu(1, nil, IceHUD_UnitFrame_DropDown, "cursor")
end
end
-- create a fancy highlight frame for mouse over
if (not self.frame.highLight) then

View File

@ -1,5 +1,62 @@
# Changelog
v1.15.14:
- Support WoW 11.1.5
- Update TWW TOC to 11.1.5
v1.15.13:
- Update TOCs
v1.15.12:
- Update TOCs
v1.15.11:
- Fix imported profiles not saving across reloads
v1.15.10:
- Fix Chi not updating properly when the player's maximum amount of Chi points changes (e.g. via Ascension talent).
- Update TOCs
v1.15.9:
- Update Cataclysm Classic TOC to 4.4.1
- Update Classic-era TOC to 1.15.4
- Update TWW TOC to 11.0.5
v1.15.8:
- Fix reported error with custom cooldown bars set to "when ready" mode due to deprecation in 11.x (wowace issue #368)
v1.15.7:
- Fix cooldown display for overridden spells (such as Evoker spells where Font of Magic replaces the base spell with an override with the same name).
v1.15.6:
- Package new version of LibDogTag-Unit to fix an error with some units on 11.0.2
v1.15.5:
- Fix error when using an invalid spell with a custom bar on 11.x
v1.15.4:
- Update TOC for TWW
v1.15.3:
- Fix custom cooldown bars not working in 11.x (wowace issue #363)
v1.15.2:
- Re-enable right-click context menus on 11.x.
- Update TOC for Classic-era
v1.15.1:
- Fix error opening options.