From b558f33546546d3ecaf1e79e941b105c057083d6 Mon Sep 17 00:00:00 2001 From: Steven Jackson Date: Sun, 13 Jul 2014 01:36:00 -0500 Subject: [PATCH] unit names fixed --- Interface/AddOns/SVUI/packages/unit/SVUnit.lua | 18 +++--- .../AddOns/SVUI/packages/unit/frames/all_units.lua | 65 +++++++++++++++++++- .../AddOns/SVUI/packages/unit/frames/raid.lua | 6 +- 3 files changed, 76 insertions(+), 13 deletions(-) diff --git a/Interface/AddOns/SVUI/packages/unit/SVUnit.lua b/Interface/AddOns/SVUI/packages/unit/SVUnit.lua index 654add2..1d94bfa 100644 --- a/Interface/AddOns/SVUI/packages/unit/SVUnit.lua +++ b/Interface/AddOns/SVUI/packages/unit/SVUnit.lua @@ -265,8 +265,9 @@ function MOD:RefreshUnitColors() oUF_SuperVillain.colors.smooth = {1, 0, 0, 1, 1, 0, r, g, b} end -local RefreshUnitMedia = function(self) +local RefreshUnitMedia = function(self, unitName) local db = MOD.db + local key = unitName or self.___key if(not (db and db.enable) or not self) then return end local CURRENT_BAR_TEXTURE = SuperVillain.Shared:Fetch("statusbar", db.statusbar) local CURRENT_AURABAR_TEXTURE = SuperVillain.Shared:Fetch("statusbar", db.auraBarStatusbar); @@ -274,7 +275,7 @@ local RefreshUnitMedia = function(self) local CURRENT_AURABAR_FONT = SuperVillain.Shared:Fetch("font", db.auraFont); local CURRENT_AURABAR_FONTSIZE = db.auraFontSize local CURRENT_AURABAR_FONTOUTLINE = db.auraFontOutline - local unitDB = db[self.___key] + local unitDB = db[key] if(unitDB and unitDB.enable) then local panel = self.InfoPanel if(panel) then @@ -316,12 +317,10 @@ local RefreshUnitMedia = function(self) debuffs.textSize = db.auraFontSize debuffs.textOutline = db.auraFontOutline end - if(self.RaidDebuffs) then + if(self.RaidDebuffs and (unitDB.rdebuffs and unitDB.rdebuffs.enable)) then local rdebuffs = self.RaidDebuffs; - if unitDB.rdebuffs.enable then - rdebuffs.count:SetFontTemplate(CURRENT_AURABAR_FONT, db.auraFontSize, db.auraFontOutline) - rdebuffs.time:SetFontTemplate(CURRENT_AURABAR_FONT, db.auraFontSize, db.auraFontOutline) - end + rdebuffs.count:SetFont(CURRENT_AURABAR_FONT, db.auraFontSize, db.auraFontOutline) + rdebuffs.time:SetFont(CURRENT_AURABAR_FONT, db.auraFontSize, db.auraFontOutline) end end end @@ -517,10 +516,11 @@ do end local SecureHeaderMediaUpdate = function(self) + local key = self.___key local index = 1; local childFrame = self:GetAttribute("child"..index) while childFrame do - RefreshUnitMedia(childFrame) + RefreshUnitMedia(childFrame, key) index = index + 1; childFrame = self:GetAttribute("child"..index) end @@ -564,8 +564,8 @@ do groupUnit.___key = headerName; groupUnit:SetParent(parentFrame) groupUnit:Show() - groupUnit.Update = self.HeaderUpdate[headerName] groupUnit.MediaUpdate = SecureHeaderMediaUpdate + groupUnit.Update = self.HeaderUpdate[headerName] groupUnit.ClearAllAttributes = SecureHeaderClear return groupUnit end diff --git a/Interface/AddOns/SVUI/packages/unit/frames/all_units.lua b/Interface/AddOns/SVUI/packages/unit/frames/all_units.lua index 8c3d09b..2e4e426 100644 --- a/Interface/AddOns/SVUI/packages/unit/frames/all_units.lua +++ b/Interface/AddOns/SVUI/packages/unit/frames/all_units.lua @@ -103,6 +103,67 @@ do end end end + +local RefreshUnitMedia = function(self, unitName) + local db = MOD.db + local key = unitName or self.___key + if(not (db and db.enable) or not self) then return end + local CURRENT_BAR_TEXTURE = SuperVillain.Shared:Fetch("statusbar", db.statusbar) + local CURRENT_AURABAR_TEXTURE = SuperVillain.Shared:Fetch("statusbar", db.auraBarStatusbar); + local CURRENT_FONT = SuperVillain.Shared:Fetch("font", db.font) + local CURRENT_AURABAR_FONT = SuperVillain.Shared:Fetch("font", db.auraFont); + local CURRENT_AURABAR_FONTSIZE = db.auraFontSize + local CURRENT_AURABAR_FONTOUTLINE = db.auraFontOutline + local unitDB = db[key] + if(unitDB and unitDB.enable) then + local panel = self.InfoPanel + if(panel) then + if(panel.Name and unitDB.name) then + panel.Name:SetFont(SuperVillain.Shared:Fetch("font", unitDB.name.font), unitDB.name.fontSize, unitDB.name.fontOutline) + end + if(panel.Health) then + panel.Health:SetFont(CURRENT_FONT, db.fontSize, db.fontOutline) + end + if(panel.Power) then + panel.Power:SetFont(CURRENT_FONT, db.fontSize, db.fontOutline) + end + if(panel.Misc) then + panel.Misc:SetFont(CURRENT_FONT, db.fontSize, db.fontOutline) + end + end + if(self.Health and (unitDB.health and unitDB.health.enable)) then + self.Health:SetStatusBarTexture(CURRENT_BAR_TEXTURE) + end + if(self.Power and (unitDB.power and unitDB.power.enable)) then + self.Power:SetStatusBarTexture(CURRENT_BAR_TEXTURE) + end + if(self.AuraBars and (unitDB.aurabar and unitDB.aurabar.enable)) then + local ab = self.AuraBars + ab.auraBarTexture = CURRENT_AURABAR_TEXTURE + ab.textFont = CURRENT_AURABAR_FONT + ab.textSize = db.auraFontSize + ab.textOutline = db.auraFontOutline + end + if(self.Buffs and (unitDB.buffs and unitDB.buffs.enable)) then + local buffs = self.Buffs + buffs.textFont = CURRENT_AURABAR_FONT + buffs.textSize = db.auraFontSize + buffs.textOutline = db.auraFontOutline + end + if(self.Debuffs and (unitDB.debuffs and unitDB.debuffs.enable)) then + local debuffs = self.Debuffs + debuffs.textFont = CURRENT_AURABAR_FONT + debuffs.textSize = db.auraFontSize + debuffs.textOutline = db.auraFontOutline + end + if(self.RaidDebuffs and (unitDB.rdebuffs and unitDB.rdebuffs.enable)) then + local rdebuffs = self.RaidDebuffs; + rdebuffs.count:SetFont(CURRENT_AURABAR_FONT, db.auraFontSize, db.auraFontOutline) + rdebuffs.time:SetFont(CURRENT_AURABAR_FONT, db.auraFontSize, db.auraFontOutline) + end + end +end + local function FindAnchorFrame(frame, anchor, badPoint) if badPoint or anchor == 'FRAME' then return frame @@ -156,7 +217,9 @@ function MOD:RefreshUnitLayout(frame, template) end if(frame.MediaUpdate) then - frame:MediaUpdate() + frame:MediaUpdate(template) + else + RefreshUnitMedia(frame, template) end if(db.portrait and db.portrait.enable) then diff --git a/Interface/AddOns/SVUI/packages/unit/frames/raid.lua b/Interface/AddOns/SVUI/packages/unit/frames/raid.lua index 682f5b9..26a2b8a 100644 --- a/Interface/AddOns/SVUI/packages/unit/frames/raid.lua +++ b/Interface/AddOns/SVUI/packages/unit/frames/raid.lua @@ -142,9 +142,8 @@ end local UpdateRaidFrame = function(self, header) local db = MOD.db[header] self.colors = oUF_SuperVillain.colors; - self:RegisterForClicks(MOD.db.fastClickTarget and"AnyDown"or"AnyUp") - if not InCombatLockdown() then self:Size(db.width, db.height)end - MOD:RefreshUnitLayout(self, header) + self:RegisterForClicks(MOD.db.fastClickTarget and "AnyDown" or "AnyUp") + if not InCombatLockdown() then self:Size(db.width, db.height) end do local rdBuffs = self.RaidDebuffs; if db.rdebuffs.enable then @@ -157,6 +156,7 @@ local UpdateRaidFrame = function(self, header) end end MOD:UpdateAuraWatch(self) + MOD:RefreshUnitLayout(self, header) self:EnableElement("ReadyCheck") self:UpdateAllElements() end -- 1.7.9.5