From fd7d8db0054137fdcc9b2d612d2f5d642b131eeb Mon Sep 17 00:00:00 2001 From: Parnic Date: Wed, 26 Jan 2011 01:05:04 +0000 Subject: [PATCH] - respect the user's mod-wide "enabled" setting when changing profiles (ticket #117) - also cleaned up some logic that could cause errors when enabling the mod due to a profile switch when the player initially loaded with it disabled --- IceCore.lua | 4 ++++ IceElement.lua | 2 +- IceHUD.lua | 14 ++++++++------ IceHUD_Options/Options.lua | 9 +++++++++ 4 files changed, 22 insertions(+), 7 deletions(-) diff --git a/IceCore.lua b/IceCore.lua index 832cd09..e6cac6a 100644 --- a/IceCore.lua +++ b/IceCore.lua @@ -781,6 +781,10 @@ function IceCore.prototype:IsInConfigMode() end function IceCore.prototype:ConfigModeToggle(bWantConfig) + if self.bConfigMode == bWantConfig then + return + end + self.bConfigMode = bWantConfig if bWantConfig then diff --git a/IceElement.lua b/IceElement.lua index 2c18505..4635c18 100644 --- a/IceElement.lua +++ b/IceElement.lua @@ -410,7 +410,7 @@ function IceElement.prototype:IsVisible() end function IceElement.prototype:Show(bShouldShow) - if self.bIsVisible == bShouldShow then + if self.bIsVisible == bShouldShow or not self.masterFrame or not self.frame then return nil end diff --git a/IceHUD.lua b/IceHUD.lua index ccb832f..b436557 100644 --- a/IceHUD.lua +++ b/IceHUD.lua @@ -245,12 +245,12 @@ function IceHUD:OnEnable(isFirst) if self.db.profile.enable then self.IceCore:Enable() + end - -- Add dual-spec support - local LibDualSpec = LibStub('LibDualSpec-1.0', true) - if LibDualSpec then - LibDualSpec:EnhanceDatabase(self.db, "IceHUD") - end + -- Add dual-spec support + local LibDualSpec = LibStub('LibDualSpec-1.0', true) + if LibDualSpec then + LibDualSpec:EnhanceDatabase(self.db, "IceHUD") end --@debug@ @@ -443,7 +443,9 @@ end function IceHUD:PostProfileChanged(db, newProfile) self:NotifyNewDb() - self.IceCore:Enable() + if self.db.profile.enable then + self.IceCore:Enable() + end end function IceHUD:ProfileReset() diff --git a/IceHUD_Options/Options.lua b/IceHUD_Options/Options.lua index f6574e3..d4ca464 100644 --- a/IceHUD_Options/Options.lua +++ b/IceHUD_Options/Options.lua @@ -347,6 +347,9 @@ This isn't |cff9999ffIceHUD|r - it's Blizzard's new Spell Alerts they added in 4 set = function(info, value) IceHUD.IceCore:SetFontFamily(value) end, + disabled = function() + return not IceHUD.IceCore:IsEnabled() + end, values = AceGUIWidgetLSMlists.font, order = 94.75, }, @@ -572,6 +575,9 @@ This isn't |cff9999ffIceHUD|r - it's Blizzard's new Spell Alerts they added in 4 func = function() IceHUD:CreateCustomModuleAndNotify(lastCustomModule) end, + disabled = function() + return not IceHUD.IceCore:IsEnabled() + end, order = 94.6, }, @@ -585,6 +591,9 @@ This isn't |cff9999ffIceHUD|r - it's Blizzard's new Spell Alerts they added in 4 set = function(info, value) IceHUD.IceCore:ConfigModeToggle(value) end, + disabled = function() + return not IceHUD.IceCore:IsEnabled() + end, order = 95 },