Files
coa-elvui/ElvUI_AddOnSkins/Skins/Addons/postal.lua
T

173 lines
4.5 KiB
Lua

local E, L, V, P, G = unpack(ElvUI)
local S = E:GetModule("Skins")
local AS = E:GetModule("AddOnSkins")
if not AS:IsAddonLODorEnabled("Postal") then return end
local _G = _G
local select = select
local unpack = unpack
local hooksecurefunc = hooksecurefunc
local INBOXITEMS_TO_DISPLAY = INBOXITEMS_TO_DISPLAY
-- Postal r299
-- https://www.wowace.com/projects/postal/files/454610
S:AddCallbackForAddon("Postal", "Postal", function()
if not E.private.addOnSkins.Postal then return end
local Postal = LibStub("AceAddon-3.0"):GetAddon("Postal", true)
if not Postal then return end
S:HandleNextPrevButton(Postal_ModuleMenuButton, "down", nil, true)
Postal_ModuleMenuButton:Point("TOPRIGHT", MailFrame, -60, -12)
Postal_ModuleMenuButton:Size(26)
hooksecurefunc(Postal, "CreateAboutFrame", function(self)
self.aboutFrame:SetTemplate("Transparent")
PostalAboutScroll:Point("TOPLEFT", 8, -26)
PostalAboutScroll:Point("BOTTOMRIGHT", -29, 8)
S:HandleScrollBar(PostalAboutScrollScrollBar)
PostalAboutScrollScrollBar:Point("TOPLEFT", PostalAboutScroll, "TOPRIGHT", 3, -19)
PostalAboutScrollScrollBar:Point("BOTTOMLEFT", PostalAboutScroll, "BOTTOMRIGHT", 3, 19)
self.aboutFrame.editBox:Width(461)
self.aboutFrame.editBox:Point("TOPLEFT", 1, -1)
local closeButton = select(2, PostalAboutFrame:GetChildren())
if closeButton then
S:HandleCloseButton(closeButton, PostalAboutFrame)
end
end)
local Postal_Select = Postal:GetModule("Select", true)
if Postal_Select then
local skinModule
skinModule = function()
S:HandleButton(PostalSelectOpenButton, true)
PostalSelectOpenButton:Point("RIGHT", InboxFrame, "TOP", -29, -57)
S:HandleButton(PostalSelectReturnButton, true)
PostalSelectReturnButton:Point("LEFT", InboxFrame, "TOP", 8, -57)
for i = 1, INBOXITEMS_TO_DISPLAY do
local mail = _G["MailItem"..i]
local inboxCB = _G["PostalInboxCB"..i]
S:HandleCheckBox(inboxCB)
inboxCB:Point("RIGHT", mail, "LEFT", 6, -5)
end
skinModule = nil
end
local function setPosition()
MailItem1:Point("TOPLEFT", 38, -80)
for i = 1, INBOXITEMS_TO_DISPLAY do
_G["MailItem"..i.."ExpireTime"]:Point("TOPRIGHT", -4, -4)
end
end
if PostalSelectOpenButton then
skinModule()
setPosition()
end
hooksecurefunc(Postal_Select, "OnEnable", function(self)
if skinModule then
skinModule()
end
setPosition()
end)
hooksecurefunc(Postal_Select, "OnDisable", function(self)
MailItem1:Point("TOPLEFT", 24, -80)
end)
end
local Postal_DoNotWant = Postal:GetModule("DoNotWant", true)
if Postal_DoNotWant then
local function skinModule()
for i = 1, 7 do
local returnIcon = _G["MailItem"..i.."ExpireTime"].returnicon
returnIcon:StripTextures(true)
S:HandleCloseButton(returnIcon)
returnIcon:Size(26)
returnIcon:ClearAllPoints()
returnIcon:Point("TOPRIGHT", 32, -3)
end
end
if MailItem1ExpireTime.returnicon then
skinModule()
else
S:SecureHook(Postal_DoNotWant, "OnEnable", function(self)
skinModule()
S:Unhook(self, "OnEnable")
end)
end
end
local Postal_OpenAll = Postal:GetModule("OpenAll", true)
if Postal_OpenAll then
local function skinModule()
S:HandleButton(PostalOpenAllButton, true)
PostalOpenAllButton:Point("CENTER", InboxFrame, "TOP", -24, -408)
S:HandleNextPrevButton(Postal_OpenAllMenuButton)
Postal_OpenAllMenuButton:Size(25)
Postal_OpenAllMenuButton:Point("LEFT", PostalOpenAllButton, "RIGHT", 3, 0)
end
if PostalOpenAllButton then
skinModule()
else
S:SecureHook(Postal_OpenAll, "OnEnable", function(self)
skinModule()
S:Unhook(self, "OnEnable")
end)
end
end
local Postal_BlackBook = Postal:GetModule("BlackBook", true)
if Postal_BlackBook then
local function skinModule()
S:HandleNextPrevButton(Postal_BlackBookButton)
Postal_BlackBookButton:Size(20)
Postal_BlackBookButton:Point("LEFT", SendMailNameEditBox, "RIGHT", 4, 0)
end
if Postal_BlackBookButton then
skinModule()
else
S:SecureHook(Postal_BlackBook, "OnEnable", function(self)
skinModule()
S:Unhook(self, "OnEnable")
end)
end
end
local Postal_CarbonCopy = Postal:GetModule("CarbonCopy", true)
if Postal_CarbonCopy then
local function skinModule(self)
self.button:SetTemplate()
self.button:Size(12)
self.button:Point("TOPRIGHT", 1, 3)
local normalTexture = self.button:GetNormalTexture()
normalTexture:SetTexCoord(unpack(E.TexCoords))
normalTexture:SetInside()
end
if Postal_CarbonCopy.button then
skinModule(Postal_CarbonCopy)
else
hooksecurefunc(Postal_CarbonCopy, "CreateButton", skinModule)
end
end
end)