Pressing the "Reset Window Position" button from the Display Options now works immediately.
James D. Callahan III [07-05-10 - 05:51]
Pressing the "Reset Window Position" button from the Display Options now works immediately.
diff --git a/Config.lua b/Config.lua
index be3ad5f..ecdd9a2 100644
--- a/Config.lua
+++ b/Config.lua
@@ -35,6 +35,7 @@ local function giveProfiles()
end
local function ResetGUI()
+ addon.Frame:Hide()
addon.db.profile.frameopts.offsetx = 0
addon.db.profile.frameopts.offsety = 0
addon.db.profile.frameopts.anchorTo = ""
@@ -42,6 +43,7 @@ local function ResetGUI()
addon.db.profile.frameopts.uiscale = 1
addon.db.profile.frameopts.tooltipscale = .9
addon.db.profile.frameopts.fontsize = 11
+ addon.Frame:Show()
end
local options
diff --git a/Frame.lua b/Frame.lua
index 3aaf9c5..1d033b8 100644
--- a/Frame.lua
+++ b/Frame.lua
@@ -4281,38 +4281,6 @@ do
self.is_linked = is_linked
-------------------------------------------------------------------------------
- -- Restore the panel's position on the screen.
- -------------------------------------------------------------------------------
- local opts = addon.db.profile.frameopts
- local FixedOffsetX = opts.offsetx
-
- self:ClearAllPoints()
-
- if opts.anchorTo == "" then -- no values yet, clamp to whatever frame is appropriate
- if _G.ATSWFrame then
- self:SetPoint("CENTER", _G.ATSWFrame, "CENTER", 490, 0)
- elseif _G.CauldronFrame then
- self:SetPoint("CENTER", _G.CauldronFrame, "CENTER", 490, 0)
- elseif _G.Skillet then
- self:SetPoint("CENTER", _G.SkilletFrame, "CENTER", 468, 0)
- else
- self:SetPoint("TOPLEFT", _G.TradeSkillFrame, "TOPRIGHT", 10, 0)
- end
- else
- if self.is_expanded then
- if opts.anchorFrom == "TOPLEFT" or opts.anchorFrom == "LEFT" or opts.anchorFrom == "BOTTOMLEFT" then
- FixedOffsetX = opts.offsetx
- elseif opts.anchorFrom == "TOP" or opts.anchorFrom == "CENTER" or opts.anchorFrom == "BOTTOM" then
- FixedOffsetX = opts.offsetx + 151/2
- elseif opts.anchorFrom == "TOPRIGHT" or opts.anchorFrom == "RIGHT" or opts.anchorFrom == "BOTTOMRIGHT" then
- FixedOffsetX = opts.offsetx + 151
- end
- end
- self:SetPoint(opts.anchorFrom, UIParent, opts.anchorTo, FixedOffsetX, opts.offsety)
- end
- self:SetScale(addon.db.profile.frameopts.uiscale)
-
- -------------------------------------------------------------------------------
-- Set the profession.
-------------------------------------------------------------------------------
local prev_profession = self.profession
@@ -4361,6 +4329,42 @@ do
self:UpdateTitle()
self:Show()
end
+
+ -------------------------------------------------------------------------------
+ -- Restore the panel's position on the screen.
+ -------------------------------------------------------------------------------
+ local function Reset_Position(self)
+ local opts = addon.db.profile.frameopts
+ local FixedOffsetX = opts.offsetx
+
+ self:ClearAllPoints()
+
+ if opts.anchorTo == "" then -- no values yet, clamp to whatever frame is appropriate
+ if _G.ATSWFrame then
+ self:SetPoint("CENTER", _G.ATSWFrame, "CENTER", 490, 0)
+ elseif _G.CauldronFrame then
+ self:SetPoint("CENTER", _G.CauldronFrame, "CENTER", 490, 0)
+ elseif _G.Skillet then
+ self:SetPoint("CENTER", _G.SkilletFrame, "CENTER", 468, 0)
+ else
+ self:SetPoint("TOPLEFT", _G.TradeSkillFrame, "TOPRIGHT", 10, 0)
+ end
+ else
+ if self.is_expanded then
+ if opts.anchorFrom == "TOPLEFT" or opts.anchorFrom == "LEFT" or opts.anchorFrom == "BOTTOMLEFT" then
+ FixedOffsetX = opts.offsetx
+ elseif opts.anchorFrom == "TOP" or opts.anchorFrom == "CENTER" or opts.anchorFrom == "BOTTOM" then
+ FixedOffsetX = opts.offsetx + 151/2
+ elseif opts.anchorFrom == "TOPRIGHT" or opts.anchorFrom == "RIGHT" or opts.anchorFrom == "BOTTOMRIGHT" then
+ FixedOffsetX = opts.offsetx + 151
+ end
+ end
+ self:SetPoint(opts.anchorFrom, UIParent, opts.anchorTo, FixedOffsetX, opts.offsety)
+ end
+ self:SetScale(addon.db.profile.frameopts.uiscale)
+ end
+
+ MainPanel:SetScript("OnShow", Reset_Position)
end -- do-block
--------------------------------------------------------------------------------