From 4a0991adac63231c18b9920709a983409afec7cc Mon Sep 17 00:00:00 2001 From: iceroth Date: Tue, 19 Sep 2006 16:18:17 +0000 Subject: [PATCH] Little modifications to allow easier Sprocket usage --- IceBarElement.lua | 2 +- IceCore.lua | 4 ++-- IceElement.lua | 14 +++++++------- IceHUD.toc | 2 +- modules/TargetInfo.lua | 35 +++++++++++++++++++++++++++++++---- modules/TargetOfTarget.lua | 36 +++++++++++++++++++++++++++++------- 6 files changed, 71 insertions(+), 22 deletions(-) diff --git a/IceBarElement.lua b/IceBarElement.lua index aeabd60..dd7679b 100644 --- a/IceBarElement.lua +++ b/IceBarElement.lua @@ -230,7 +230,7 @@ end -- Creates background for the bar function IceBarElement.prototype:CreateBackground() if not (self.frame) then - self.frame = CreateFrame("StatusBar", "IceHUD_"..self.name, self.parent) + self.frame = CreateFrame("StatusBar", "IceHUD_"..self.elementName, self.parent) end self.frame:SetFrameStrata("BACKGROUND") diff --git a/IceCore.lua b/IceCore.lua index e086463..d18ed1f 100644 --- a/IceCore.lua +++ b/IceCore.lua @@ -62,7 +62,7 @@ function IceCore.prototype:init() -- get default settings from the modules defaults.modules = {} for i = 1, table.getn(self.elements) do - local name = self.elements[i]:GetName() + local name = self.elements[i]:GetElementName() defaults.modules[name] = self.elements[i]:GetDefaultSettings() end @@ -125,7 +125,7 @@ end function IceCore.prototype:GetModuleOptions() local options = {} for i = 1, table.getn(self.elements) do - local modName = self.elements[i]:GetName() + local modName = self.elements[i]:GetElementName() local opt = self.elements[i]:GetOptions() options[modName] = { type = 'group', diff --git a/IceElement.lua b/IceElement.lua index 967264f..32a592b 100644 --- a/IceElement.lua +++ b/IceElement.lua @@ -6,7 +6,7 @@ IceElement.virtual = true IceElement.TexturePath = IceHUD.Location .. "\\textures\\" -- Protected variables -- -IceElement.prototype.name = nil +IceElement.prototype.elementName = nil IceElement.prototype.parent = nil IceElement.prototype.frame = nil @@ -27,7 +27,7 @@ function IceElement.prototype:init(name) IceElement.super.prototype.init(self) assert(name, "IceElement must have a name") - self.name = name + self.elementName = name self.alpha = 1 self.scalingEnabled = false @@ -42,12 +42,12 @@ end -- 'Public' methods ----------------------------------------------------------- function IceElement.prototype:ToString() - return "IceElement('" .. self.name .. "')" + return "IceElement('" .. self.elementName .. "')" end -function IceElement.prototype:GetName() - return self.name +function IceElement.prototype:GetElementName() + return self.elementName end @@ -62,7 +62,7 @@ end function IceElement.prototype:SetDatabase(db) self.settings = db - self.moduleSettings = db.modules[self.name] + self.moduleSettings = db.modules[self.elementName] end @@ -163,7 +163,7 @@ end -- This should be overwritten by inheriting classes function IceElement.prototype:CreateFrame() if not (self.frame) then - self.frame = CreateFrame("Frame", "IceHUD_"..self.name, self.parent) + self.frame = CreateFrame("Frame", "IceHUD_"..self.elementName, self.parent) end self.frame:SetScale(self.moduleSettings.scale) diff --git a/IceHUD.toc b/IceHUD.toc index 546a31a..e200ae5 100644 --- a/IceHUD.toc +++ b/IceHUD.toc @@ -3,7 +3,7 @@ ## Name: IceHUD ## Title: IceHUD |cff7fff7f -Ace2-|r ## Notes: Another HUD mod -## Version: 0.6.5 ($Revision$) +## Version: 0.6.6 ($Revision$) ## SavedVariables: IceCoreDB ## OptionalDeps: Ace2, DewdropLib, FuBar_ToFu, DruidBar, SoleManax, MobHealth, SpellStatusLib ## X-Category: UnitFrame diff --git a/modules/TargetInfo.lua b/modules/TargetInfo.lua index cef858b..26ebb32 100644 --- a/modules/TargetInfo.lua +++ b/modules/TargetInfo.lua @@ -214,7 +214,7 @@ end function TargetInfo.prototype:CreateTextFrame() if (not self.frame.target) then - self.frame.target = CreateFrame("Button", nil, self.frame) + self.frame.target = CreateFrame("Button", "IceHUD_TargetInfo_Name", self.frame) end self.frame.target.unit = target -- for blizz default tooltip handling @@ -223,8 +223,8 @@ function TargetInfo.prototype:CreateTextFrame() self.frame.target:EnableMouse(true) self.frame.target:RegisterForClicks("LeftButtonUp", "RightButtonUp") self.frame.target:SetScript("OnClick", function() self:OnClick(arg1) end) - self.frame.target:SetScript("OnEnter", function() UnitFrame_OnEnter() end) - self.frame.target:SetScript("OnLeave", function() UnitFrame_OnLeave() end) + self.frame.target:SetScript("OnEnter", function() self:OnEnter() end) + self.frame.target:SetScript("OnLeave", function() self:OnLeave() end) else self.frame.target:EnableMouse(false) self.frame.target:RegisterForClicks() @@ -242,6 +242,17 @@ function TargetInfo.prototype:CreateTextFrame() self.frame.targetName:SetJustifyH("CENTER") self.frame.targetName:SetJustifyV("TOP") self.frame.targetName:SetAllPoints(self.frame.target) + + + if (not self.frame.target.highLight) then + self.frame.target.highLight = self.frame.target:CreateTexture(nil, "OVERLAY") + self.frame.target.highLight:SetTexture("Interface\\QuestFrame\\UI-QuestTitleHighlight") + self.frame.target.highLight:SetBlendMode("ADD") + self.frame.target.highLight:SetAllPoints(self.frame.target) + self.frame.target.highLight:SetVertexColor(1, 1, 1, 0.25) + self.frame.target.highLight:Hide() + end + self.frame.target:Show() end @@ -489,6 +500,8 @@ end function TargetInfo.prototype:TargetChanged() if (not UnitExists(target)) then + self.frame:Hide() + self.frame.targetName:SetText() self.frame.targetInfo:SetText() self.frame.targetGuild:SetText() @@ -497,6 +510,8 @@ function TargetInfo.prototype:TargetChanged() self:UpdateRaidTargetIcon() return end + + self.frame:Show() self.name, self.realm = UnitName(target) self.classLocale, self.classEnglish = UnitClass(target) @@ -649,6 +664,18 @@ function TargetInfo.prototype:OnClick(button) end +function TargetInfo.prototype:OnEnter() + UnitFrame_OnEnter() + self.frame.target.highLight:Show() +end + + +function TargetInfo.prototype:OnLeave() + UnitFrame_OnLeave() + self.frame.target.highLight:Hide() +end + + function TargetInfo.prototype:BuffOnEnter(type) if (not this:IsVisible()) then return @@ -664,4 +691,4 @@ end -- Load us up -IceHUD_TargetInfo = TargetInfo:new() +IceHUD_Module_TargetInfo = TargetInfo:new() diff --git a/modules/TargetOfTarget.lua b/modules/TargetOfTarget.lua index b798a8c..2a54e7a 100644 --- a/modules/TargetOfTarget.lua +++ b/modules/TargetOfTarget.lua @@ -133,8 +133,8 @@ function TargetOfTarget.prototype:Enable(core) self:RegisterEvent("PLAYER_TARGET_CHANGED", "Update") - self:RegisterMetro(self.name, self.Update, 0.2, self) - self:StartMetro(self.name) + self:RegisterMetro(self.elementName, self.Update, 0.2, self) + self:StartMetro(self.elementName) self:Update() end @@ -142,7 +142,7 @@ end function TargetOfTarget.prototype:Disable(core) TargetOfTarget.super.prototype.Disable(self, core) - self:UnregisterMetro(self.name) + self:UnregisterMetro(self.elementName) end @@ -151,7 +151,7 @@ end -- OVERRIDE function TargetOfTarget.prototype:CreateFrame() if not (self.frame) then - self.frame = CreateFrame("Button", "IceHUD_"..self.name, self.parent) + self.frame = CreateFrame("Button", "IceHUD_"..self.elementName, self.parent) end self.frame:SetFrameStrata("BACKGROUND") @@ -174,8 +174,8 @@ function TargetOfTarget.prototype:CreateFrame() self.frame:EnableMouse(true) self.frame:RegisterForClicks("LeftButtonUp", "RightButtonUp") self.frame:SetScript("OnClick", function() self:OnClick(arg1) end) - self.frame:SetScript("OnEnter", function() UnitFrame_OnEnter() end) - self.frame:SetScript("OnLeave", function() UnitFrame_OnLeave() end) + self.frame:SetScript("OnEnter", function() self:OnEnter() end) + self.frame:SetScript("OnLeave", function() self:OnLeave() end) else self.frame:EnableMouse(false) self.frame:RegisterForClicks() @@ -208,6 +208,17 @@ function TargetOfTarget.prototype:CreateBarFrame() self.frame.bar.texture:SetAllPoints(self.frame.bar) self.frame.bar:SetStatusBarTexture(self.frame.bar.texture) end + + + if (not self.frame.bar.highLight) then + self.frame.bar.highLight = self.frame.bar:CreateTexture(nil, "OVERLAY") + self.frame.bar.highLight:SetTexture("Interface\\QuestFrame\\UI-QuestTitleHighlight") + self.frame.bar.highLight:SetBlendMode("ADD") + self.frame.bar.highLight:SetAllPoints(self.frame.bar) + self.frame.bar.highLight:SetVertexColor(1, 1, 1, 0.3) + self.frame.bar.highLight:Hide() + end + self.frame.bar:Show() end @@ -344,6 +355,17 @@ function TargetOfTarget.prototype:Update() end +function TargetOfTarget.prototype:OnEnter() + UnitFrame_OnEnter() + self.frame.bar.highLight:Show() +end + + +function TargetOfTarget.prototype:OnLeave() + UnitFrame_OnLeave() + self.frame.bar.highLight:Hide() +end + function TargetOfTarget.prototype:OnClick(button) -- copy&paste from blizz code, it better work ;) @@ -367,4 +389,4 @@ end -- load us up -IceHUD_TargetOfTarget = TargetOfTarget:new() +IceHUD_Module_TargetOfTarget = TargetOfTarget:new()