No longer overrid Garrison_SortMissions (was tainting), Adds sorting to OrderHall
Alar of Runetotem [10-25-16 - 13:13]
No longer overrid Garrison_SortMissions (was tainting), Adds sorting to OrderHall
diff --git a/GarrisonCommander.lua b/GarrisonCommander.lua
index c204072..9acbd92 100644
--- a/GarrisonCommander.lua
+++ b/GarrisonCommander.lua
@@ -352,13 +352,17 @@ sorters.Xp=function (mission1, mission2)
return p2 < p1
end
end
-addon.Garrison_SortMissions_Original=_G.Garrison_SortMissions
-local Garrison_SortMissions=_G.Garrison_SortMissions
+local MyGarrison_SortMissions=_G.Garrison_SortMissions
+--[[
_G.Garrison_SortMissions= function(missionsList)
if GMF:IsVisible() then
Garrison_SortMissions(missionsList)
end
end
+--]]
+function addon:SortMissions(missionsList)
+ MyGarrison_SortMissions(missionsList)
+end
function addon.Garrison_SortMissions_Chance(missionsList)
addon:RefreshParties()
table.sort(missionsList, sorters.Chance);
@@ -386,18 +390,7 @@ end
function addon:ApplyMSORT(value)
local func=self[value]
if (type(func)=="function") then
- Garrison_SortMissions=self[value]
- else
---@debug@
- print("Could not found ",value," in addon")
---@end-debug@
- end
- self:RefreshMissions()
-end
-function addon:ApplyMHSORT(value)
- local func=self[value]
- if (type(func)=="function") then
- Garrison_SortMissions=self[value]
+ MyGarrison_SortMissions=self[value]
else
--@debug@
print("Could not found ",value," in addon")
@@ -405,6 +398,7 @@ function addon:ApplyMHSORT(value)
end
self:RefreshMissions()
end
+
function addon:GetMain()
return GMF
end
@@ -514,7 +508,7 @@ function addon:OnInitialized()
GarrisonLandingPageMinimapButton:RegisterForClicks("LEFTBUTTONUP","RIGHTBUTTONUP")
GarrisonLandingPageMinimapButton:SetScript("OnClick",
function (this,button)
- if (GarrisonLandingPage and GarrisonLandingPage:IsShown()) then
+ if (_G.GarrisonLandingPage and GarrisonLandingPage:IsShown()) then
HideUIPanel(GarrisonLandingPage);
else
if button=="RightButton" then
@@ -548,6 +542,8 @@ function addon:OnInitialized()
tabCO:SetAttribute("type","item")
tabCO:SetAttribute("item",select(2,GetItemInfo(missionCompleteOrder)))
self:loadHelp()
+ self:SecureHook("Garrison_SortMissions","SortMissions")
+
--return true
end
function addon:showdata(fullargs,action,missionid)
@@ -844,9 +840,7 @@ function addon:RefreshParties()
end
end
function addon:RefreshMissions(missionID)
- if (GMF:IsVisible()) then
- GMF.MissionTab.MissionList:UpdateMissions()
- end
+ self:GetMissions():UpdateMissions()
end
--[[
@@ -1038,9 +1032,9 @@ function addon:ActivateButton(button,OnClick,Tooltiptext,persistent)
button.tooltip=Tooltiptext
button:SetScript("OnEnter",ShowTT)
if persistent then
- button:SetScript("OnLeave",ns.OnLeave)
+ button:SetScript("OnLeave",GameTooltip.Hide)
else
- button:SetScript("OnLeave",ns.OnLeave)
+ button:SetScript("OnLeave",GameTooltip.Hide)
end
else
button:SetScript("OnEnter",nil)
@@ -1535,7 +1529,7 @@ do
lastTab=2
end
function addon:RenderFollowerPageMissionList(dummy,followerID,force)
- --print(ns.bigscreen,GMFFollowers:IsVisible())
+ print(ns.bigscreen,GMFFollowers:IsVisible())
--if not ns.bigscreen then return end
if not ns.bigscreen and not self:GetBoolean("FOLLOWERMISSIONLIST") then
if mh then mh:Hide() end
@@ -1827,7 +1821,7 @@ function addon:RaiseCompleteDialog()
if f:GetFrameLevel() < 80 then
f:SetFrameLevel(80)
end
- --print("Dialog:",GMFMissions.CompleteDialog:GetFrameLevel())
+ print("Dialog:",GMFMissions.CompleteDialog:GetFrameLevel())
--C_Timer.After(0.1,function() local f=GMFMissions.CompleteDialog print("Dialog:",f:GetFrameLevel()) if f:GetFrameLevel() < 45 then f:SetFrameLevel(45) end print("Dialog:",f:GetFrameLevel()) end)
end