diff --git a/Interface/AddOns/SVUI/SVUI.lua b/Interface/AddOns/SVUI/SVUI.lua index 8dd3b48..03df2c0 100644 --- a/Interface/AddOns/SVUI/SVUI.lua +++ b/Interface/AddOns/SVUI/SVUI.lua @@ -439,8 +439,18 @@ do if self.__owner.db[name] then obj.db = self.__owner.db[name] end - obj:PriorityLoad() - obj.PriorityLoad = nil + + local halt = false + if(obj.db.incompatible) then + for addon,_ in pairs(obj.db.incompatible) do + if IsAddOnLoaded(addon) then halt = true end + end + end + if(not halt) then + obj:PriorityLoad() + obj.PriorityLoad = nil + end + obj.initialized = true; end end @@ -456,8 +466,16 @@ do obj.db = self.__owner.db[name] end if obj.Load then - obj:Load() - obj.Load = nil + local halt = false + if(obj.db.incompatible) then + for addon,_ in pairs(obj.db.incompatible) do + if IsAddOnLoaded(addon) then halt = true end + end + end + if(not halt) then + obj:Load() + obj.Load = nil + end end obj.initialized = true; end diff --git a/Interface/AddOns/SVUI/libs/oUF/elements/castbar.lua b/Interface/AddOns/SVUI/libs/oUF/elements/castbar.lua index fec95e5..7de23e6 100644 --- a/Interface/AddOns/SVUI/libs/oUF/elements/castbar.lua +++ b/Interface/AddOns/SVUI/libs/oUF/elements/castbar.lua @@ -32,7 +32,7 @@ local UNIT_SPELLCAST_START = function(self, event, unit, spell) if(self.unit ~= unit) or not unit then return end local castbar = self.Castbar - local name, _, text, texture, startTime, endTime, _, castid, interrupt = UnitCastingInfo(unit) + local name, _, text, texture, startTime, endTime, tradeskill, castid, interrupt = UnitCastingInfo(unit) if(not name) then castbar:Hide() return @@ -40,8 +40,16 @@ local UNIT_SPELLCAST_START = function(self, event, unit, spell) endTime = endTime / 1e3 startTime = startTime / 1e3 + local max = endTime - startTime + -- if(tradeskill) then + -- local repeatCount = GetTradeskillRepeatCount() + -- max = (endTime * repeatCount) - startTime + -- else + -- max = endTime - startTime + -- end + castbar.castid = castid castbar.duration = GetTime() - startTime castbar.max = max diff --git a/Interface/AddOns/SVUI/packages/bag/SVBag.lua b/Interface/AddOns/SVUI/packages/bag/SVBag.lua index 0a2e0cc..f722b2b 100644 --- a/Interface/AddOns/SVUI/packages/bag/SVBag.lua +++ b/Interface/AddOns/SVUI/packages/bag/SVBag.lua @@ -1343,6 +1343,11 @@ DEFINE CONFIG AND REGISTER ########################################################## ]]-- CONFIGS["SVBag"] = { + ["incompatible"] = { + ["AdiBags"] = true, + ["ArkInventory"] = true, + ["Bagnon"] = true, + }, ["enable"] = true, ["sortInverted"] = false, ["bags"] = { diff --git a/Interface/AddOns/SVUI/packages/map/SVMap.lua b/Interface/AddOns/SVUI/packages/map/SVMap.lua index c1823b5..26a53d4 100644 --- a/Interface/AddOns/SVUI/packages/map/SVMap.lua +++ b/Interface/AddOns/SVUI/packages/map/SVMap.lua @@ -876,6 +876,11 @@ DEFINE CONFIG AND REGISTER ########################################################## ]]-- CONFIGS["SVMap"] = { + ["incompatible"] = { + ["SexyMap"] = true, + ["SquareMap"] = true, + ["PocketPlot"] = true, + }, ["enable"] = true, ["mapAlpha"] = 1, ["tinyWorldMap"] = true, diff --git a/Interface/AddOns/SVUI/packages/override/SVOverride.lua b/Interface/AddOns/SVUI/packages/override/SVOverride.lua index 865e563..807f575 100644 --- a/Interface/AddOns/SVUI/packages/override/SVOverride.lua +++ b/Interface/AddOns/SVUI/packages/override/SVOverride.lua @@ -1078,7 +1078,7 @@ function MOD:Load() exit:SetFixedPanelTemplate("Transparent") exit:RegisterForClicks("AnyUp") exit:SetScript("OnClick", VehicleExit) - RegisterStateDriver(exit, "visibility", "[vehicleui] show;hide") + RegisterStateDriver(exit, "visibility", "[vehicleui][target=vehicle,exists] show;hide") SuperVillain:SetSVMovable(exit, L["Bail Out"]) diff --git a/Interface/AddOns/SVUI/system/system.lua b/Interface/AddOns/SVUI/system/system.lua index f104ec9..b046d07 100644 --- a/Interface/AddOns/SVUI/system/system.lua +++ b/Interface/AddOns/SVUI/system/system.lua @@ -177,12 +177,12 @@ local function SendAddonMessage(msg, prefix) end function SuperVillain:AddonMessage(msg) - local outbound = ("|cffffcc1a%s:|r"):format("SVUI") + local outbound = ("|cffFF2F00%s:|r"):format("SVUI") SendAddonMessage(msg, outbound) end function SuperVillain:ToonMessage(msg) - local outbound = ("|cffffcc1a%s:|r"):format(playerName) + local outbound = ("|cff00FF00%s:|r"):format(playerName) SendAddonMessage(msg, outbound) end @@ -788,7 +788,7 @@ function SuperVillain:Launch() _G["SVUI_MentaloPrecision"]:SetPanelTemplate("Transparent") if self.db.system.loginmessage then - local logMsg = (L["LOGIN_MSG"]):format("|cffffcc1a", "|cffff801a", self.___ver) + local logMsg = (L["LOGIN_MSG"]):format("|cffFFFF1A", "|cffAA78FF", self.___ver) self:AddonMessage(logMsg); end diff --git a/Interface/AddOns/SVUI_StyleOMatic/SVUI_StyleOMatic.lua b/Interface/AddOns/SVUI_StyleOMatic/SVUI_StyleOMatic.lua index 5b682f2..c0e741c 100644 --- a/Interface/AddOns/SVUI_StyleOMatic/SVUI_StyleOMatic.lua +++ b/Interface/AddOns/SVUI_StyleOMatic/SVUI_StyleOMatic.lua @@ -75,14 +75,14 @@ PLUGIN.OptionsCache = { }, } }; -local DBug = false +PLUGIN.Debugging = false --[[ ########################################################## CORE FUNCTIONS ########################################################## ]]-- local charming = {"Spiffy", "Pimped Out", "Fancy", "Awesome", "Bad Ass", "Sparkly", "Gorgeous", "Handsome", "Shiny"} -local styleMessage = '|cff00FF00%s|r Is Now %s!' +local styleMessage = '|cff00FF77%s|r Is Now %s!' local function SendAddonMessage(msg, prefix) if(type(msg) == "table") then @@ -100,7 +100,7 @@ local function SendAddonMessage(msg, prefix) end function PLUGIN:AddonMessage(msg) - local outbound = ("|cffffcc1a%s:|r"):format("Style-O-Matic") + local outbound = ("|cffFF2F00%s:|r"):format("Style-O-Matic") SendAddonMessage(msg, outbound) end @@ -111,13 +111,14 @@ function PLUGIN:LoadAlert(MainText, Function) end function PLUGIN:Style(style, fn, ...) + -- self.Debugging = false local pass, error = pcall(fn, ...) if(pass and (not style:find("Blizzard")) and not self.StyledAddons[style]) then self.StyledAddons[style] = true local verb = charming[math.random(1,#charming)] self:AddonMessage(styleMessage:format(style, verb)) else - if DBug then + if self.Debugging then local message = '%s: |cffff0000There was an error in the|r |cff0affff%s|r |cffff0000skin|r.' SuperVillain:AddonMessage(message:format(version, style)) local errormessage = '%s Error: %s' @@ -132,32 +133,30 @@ function PLUGIN:IsAddonReady(addon, ...) if not a then break end if not IsAddOnLoaded(a) then return false end end - return SuperVillain.db.SVStyle.addons[addon] + + local config = SuperVillain.db.SVStyle or SuperVillain.Configs.SVStyle + + return config.addons[addon] end function PLUGIN:SaveAddonStyle(addon, fn, force, passive, ...) - local args,hasEvent = {},false; + self:DefineEventFunction("PLAYER_ENTERING_WORLD", addon) + if(passive) then + self:DefineEventFunction("ADDON_LOADED", addon) + end for i=1, select("#",...) do local event = select(i,...) - if event then - args[event] = true - hasEvent = true; - if(event == "ADDON_LOADED") then - passive = true - end + if(event) then + self:DefineEventFunction(event, addon) end end - - if(hasEvent and not self.AddOnEvents[addon]) then - self.AddOnEvents[addon] = {events = args}; + if(SuperVillain.Configs.SVStyle.addons[addon] == nil) then + SuperVillain.Configs.SVStyle.addons[addon] = true end - if force then + if force then fn() else - if(passive) then - self.OnLoadAddons[addon] = fn - end self.AddOnQueue[addon] = fn end end @@ -178,17 +177,16 @@ function PLUGIN:SaveCustomStyle(fn) end function PLUGIN:DefineEventFunction(addonEvent, addon) + if(not addon) then return end if(not self.EventListeners[addonEvent]) then self.EventListeners[addonEvent] = {} end - if(addon) then - self.EventListeners[addonEvent][addon] = true - end + self.EventListeners[addonEvent][addon] = true if(not self[addonEvent]) then self[addonEvent] = function(self, event, ...) - for addon,fn in pairs(self.AddOnQueue)do - if self:IsAddonReady(addon) and self.EventListeners[event] and self.EventListeners[event][addon] then - self:Style(addon, fn, event, ...) + for name,fn in pairs(self.AddOnQueue)do + if self:IsAddonReady(name) and self.EventListeners[event] and self.EventListeners[event][name] then + self:Style(name, fn, event, ...) end end end @@ -224,13 +222,20 @@ function PLUGIN:ToggleStyle(addon, value) SuperVillain.db.SVStyle.addons[addon] = value end -function PLUGIN:PLAYER_ENTERING_WORLD(event, ...) +function PLUGIN:StyleInit(event, ...) + for addon,fn in pairs(self.AddOnQueue)do + self:AppendAddonOption(addon) + if(SuperVillain.db.SVStyle.addons[addon] == nil) then + SuperVillain.db.SVStyle.addons[addon] = true + end + end + for addon,fn in pairs(self.OnLoadAddons) do if(SuperVillain.db.SVStyle.blizzard[addon] == nil) then SuperVillain.db.SVStyle.blizzard[addon] = true end - if(IsAddOnLoaded(addon) and SuperVillain.db.SVStyle.blizzard[addon]) then - fn(event, addon) + if(IsAddOnLoaded(addon) and (SuperVillain.db.SVStyle.blizzard[addon] or SuperVillain.db.SVStyle.addons[addon])) then + self:Style(addon, fn, event, ...) self.OnLoadAddons[addon] = nil end end @@ -240,30 +245,10 @@ function PLUGIN:PLAYER_ENTERING_WORLD(event, ...) end twipe(self.CustomQueue) - - for addon,fn in pairs(self.AddOnQueue)do - PLUGIN:AppendAddonOption(addon) - if(SuperVillain.db.SVStyle.addons[addon] == nil) then - SuperVillain.db.SVStyle.addons[addon] = true - end - if(self:IsAddonReady(addon)) then - if(self.AddOnEvents[addon]) then - if(not self.AddOnEvents[addon]["complete"]) then - if(self.AddOnEvents[addon]["events"]) then - for event,_ in pairs(self.AddOnEvents[addon]["events"]) do - self:DefineEventFunction(event, addon) - end - end - self.AddOnEvents[addon]["complete"] = true - end - end - self:Style(addon, fn, event, ...) - end - end collectgarbage("collect") end -function PLUGIN:ADDON_LOADED(event, addon) +function PLUGIN:StyleOnDemand(event, addon) for name, fn in pairs(self.OnLoadAddons) do if(addon:find(name)) then self:Style(name, fn, event, addon) @@ -386,6 +371,11 @@ BUILD FUNCTION ########################################################## ]]-- local Registry_OnEvent = function(self, event, ...) + if(event == "PLAYER_ENTERING_WORLD") then + PLUGIN:StyleInit(event, ...) + elseif(event == "ADDON_LOADED") then + PLUGIN:StyleOnDemand(event, ...) + end if(PLUGIN[event]) then PLUGIN[event](PLUGIN, event, ...) end @@ -737,8 +727,8 @@ local function LoadStyleOMatic() SuperVillain:ReloadDocklets(); SuperVillain.DynamicOptions["SVStyle"] = {key = "addons", data = PLUGIN.OptionsCache}; - SVUIAddonEventHandler:RegisterEvent('ADDON_LOADED'); - SVUIAddonEventHandler:RegisterEvent('PLAYER_ENTERING_WORLD'); + SVUIAddonEventHandler:RegisterEvent("ADDON_LOADED", "StyleOnDemand"); + SVUIAddonEventHandler:RegisterEvent("PLAYER_ENTERING_WORLD", "StyleInit"); end CONFIGS["SVStyle"] = { diff --git a/Interface/AddOns/SVUI_StyleOMatic/addons/spellbook.lua b/Interface/AddOns/SVUI_StyleOMatic/addons/spellbook.lua index cfce66b..90ad3bc 100644 --- a/Interface/AddOns/SVUI_StyleOMatic/addons/spellbook.lua +++ b/Interface/AddOns/SVUI_StyleOMatic/addons/spellbook.lua @@ -14,7 +14,50 @@ S U P E R - V I L L A I N - U I By: Munglunch # ############################################################################## --]] local SuperVillain, L = unpack(SVUI); -local STYLE = _G.StyleVillain; +local STYLE = _G.StyleVillain +--[[ +########################################################## +FRAME LISTS +########################################################## +]]-- +local bookFrames = { + "SpellBookFrame", + "SpellBookFrameInset", + "SpellBookSpellIconsFrame", + "SpellBookSideTabsFrame", + "SpellBookPageNavigationFrame" +} +local proButtons = { + "PrimaryProfession1SpellButtonTop", + "PrimaryProfession1SpellButtonBottom", + "PrimaryProfession2SpellButtonTop", + "PrimaryProfession2SpellButtonBottom", + "SecondaryProfession1SpellButtonLeft", + "SecondaryProfession1SpellButtonRight", + "SecondaryProfession2SpellButtonLeft", + "SecondaryProfession2SpellButtonRight", + "SecondaryProfession3SpellButtonLeft", + "SecondaryProfession3SpellButtonRight", + "SecondaryProfession4SpellButtonLeft", + "SecondaryProfession4SpellButtonRight" +} + +local proFrames = { + "PrimaryProfession1", + "PrimaryProfession2", + "SecondaryProfession1", + "SecondaryProfession2", + "SecondaryProfession3", + "SecondaryProfession4" +} +local proBars = { + "PrimaryProfession1StatusBar", + "PrimaryProfession2StatusBar", + "SecondaryProfession1StatusBar", + "SecondaryProfession2StatusBar", + "SecondaryProfession3StatusBar", + "SecondaryProfession4StatusBar" +} --[[ ########################################################## HELPERS @@ -63,7 +106,7 @@ local function ChangeTabHelper(this) local a,b,c,d,e = this:GetPoint() this:Point(a,b,c,1,e) -end; +end local function GetSpecTabHelper(index) local tab = SpellBookCoreAbilitiesFrame.SpecTabs[index] @@ -74,7 +117,7 @@ local function GetSpecTabHelper(index) tab:ClearAllPoints() tab:SetPoint(o, Y, Z, 0, s) end -end; +end local function SkillTabUpdateHelper() for j = 1, MAX_SKILLLINE_TABS do @@ -85,18 +128,18 @@ local function SkillTabUpdateHelper() S:GetNormalTexture():SetTexCoord(0.1, 0.9, 0.1, 0.9) end end -end; +end local function AbilityButtonHelper(j) local i = SpellBookCoreAbilitiesFrame.Abilities[j] - if i.styled then return end; + if i.styled then return end local x = i.iconTexture; if not InCombatLockdown() then if not i.properFrameLevel then i.properFrameLevel = i:GetFrameLevel() + 1 - end; + end i:SetFrameLevel(i.properFrameLevel) - end; + end if not i.styled then for j = 1, i:GetNumRegions()do local N = select(j, i:GetRegions()) @@ -105,16 +148,16 @@ local function AbilityButtonHelper(j) N:SetTexture(0,0,0,0) end end - end; + end if i.highlightTexture then hooksecurefunc(i.highlightTexture, "SetTexture", function(k, P, Q, R) if P == [[Interface\Buttons\ButtonHilight-Square]] then i.highlightTexture:SetTexture(1, 1, 1, 0.3) end end) - end; + end i.styled = true - end; + end if x then x:SetTexCoord(0.1, 0.9, 0.1, 0.9) x:ClearAllPoints() @@ -122,9 +165,9 @@ local function AbilityButtonHelper(j) if not i.Panel then i:SetPanelTemplate("Inset", false, 3, 3, 3) end - end; + end i.styled = true -end; +end local function ButtonUpdateHelper(k, M) for j=1, SPELLS_PER_PAGE do @@ -132,7 +175,7 @@ local function ButtonUpdateHelper(k, M) local x = _G["SpellButton"..j.."IconTexture"] if not InCombatLockdown() then i:SetFrameLevel(SpellBookFrame:GetFrameLevel() + 5) - end; + end if M then for j = 1, i:GetNumRegions()do local N = select(j, i:GetRegions()) @@ -142,17 +185,17 @@ local function ButtonUpdateHelper(k, M) end end end - end; + end if _G["SpellButton"..j.."Highlight"]then _G["SpellButton"..j.."Highlight"]:SetTexture(1, 1, 1, 0.3) _G["SpellButton"..j.."Highlight"]:ClearAllPoints() _G["SpellButton"..j.."Highlight"]:SetAllPoints(x) - end; + end if i.shine then i.shine:ClearAllPoints() i.shine:SetPoint('TOPLEFT', i, 'TOPLEFT', -3, 3) i.shine:SetPoint('BOTTOMRIGHT', i, 'BOTTOMRIGHT', 3, -3) - end; + end if x then x:SetTexCoord(0.1, 0.9, 0.1, 0.9) x:ClearAllPoints() @@ -162,83 +205,99 @@ local function ButtonUpdateHelper(k, M) end end end -end; +end --[[ ########################################################## SPELLBOOK STYLER ########################################################## ]]-- local function SpellBookStyle() - if SuperVillain.db.SVStyle.blizzard.enable ~= true or SuperVillain.db.SVStyle.blizzard.spellbook ~= true then return end; - STYLE:ApplyCloseButtonStyle(SpellBookFrameCloseButton) - local J = { - "SpellBookFrame", "SpellBookFrameInset", "SpellBookSpellIconsFrame", "SpellBookSideTabsFrame", "SpellBookPageNavigationFrame" - } - local Kill = { - "SpellBookFrameTutorialButton" - } - for h, K in pairs(J)do - _G[K]:Formula409() - end; - for h, K in pairs(Kill)do - _G[K]:MUNG() - end; + if SuperVillain.db.SVStyle.blizzard.enable ~= true or SuperVillain.db.SVStyle.blizzard.spellbook ~= true then return end + SpellBookFrame:SetPanelTemplate("Pattern") - for j = 1, 2 do - _G['SpellBookPage'..j]:SetDrawLayer('BORDER', 3) - end; + STYLE:ApplyCloseButtonStyle(SpellBookFrameCloseButton) + + for _, gName in pairs(bookFrames) do + local frame = _G[gName] + if(frame) then + frame:Formula409() + end + end + + _G["SpellBookFrameTutorialButton"]:MUNG() + + for i = 1, 2 do + local frame = _G[("SpellBookPage%d"):format(i)] + if(frame) then + frame:SetDrawLayer('BORDER', 3) + end + end + STYLE:ApplyPaginationStyle(SpellBookPrevPageButton) STYLE:ApplyPaginationStyle(SpellBookNextPageButton) + ButtonUpdateHelper(nil, true) + hooksecurefunc("SpellButton_UpdateButton", ButtonUpdateHelper) hooksecurefunc("SpellBook_GetCoreAbilityButton", AbilityButtonHelper) - for j = 1, MAX_SKILLLINE_TABS do - local S = _G["SpellBookSkillLineTab"..j] - _G["SpellBookSkillLineTab"..j.."Flash"]:MUNG() - ChangeTabHelper(S) - end; + + for i = 1, MAX_SKILLLINE_TABS do + local tabName = ("SpellBookSkillLineTab%d"):format(i) + local tab = _G[tabName] + local tabFlash = _G[("%sFlash"):format(tabName)] + if(tabFlash) then tabFlash:MUNG() end + if(tab) then ChangeTabHelper(tab) end + end + hooksecurefunc('SpellBook_GetCoreAbilitySpecTab', GetSpecTabHelper) hooksecurefunc("SpellBookFrame_UpdateSkillLineTabs", SkillTabUpdateHelper) - local a1 = { - "PrimaryProfession1SpellButtonTop", "PrimaryProfession1SpellButtonBottom", "PrimaryProfession2SpellButtonTop", "PrimaryProfession2SpellButtonBottom", "SecondaryProfession1SpellButtonLeft", "SecondaryProfession1SpellButtonRight", "SecondaryProfession2SpellButtonLeft", "SecondaryProfession2SpellButtonRight", "SecondaryProfession3SpellButtonLeft", "SecondaryProfession3SpellButtonRight", "SecondaryProfession4SpellButtonLeft", "SecondaryProfession4SpellButtonRight" - } - local a2 = { - "PrimaryProfession1", "PrimaryProfession2", "SecondaryProfession1", "SecondaryProfession2", "SecondaryProfession3", "SecondaryProfession4" - } - for h, a3 in pairs(a2)do - _G[a3 .."Missing"]:SetTextColor(1, 1, 0) - _G[a3].missingText:SetTextColor(0, 0, 0) - end; - for h, i in pairs(a1)do - local x = _G[i.."IconTexture"] - local i = _G[i]i:Formula409() - if x then - x:SetTexCoord(0.1, 0.9, 0.1, 0.9) - x:FillInner() - i:SetFrameLevel(i:GetFrameLevel()+2) - if not i.Panel then - i:SetPanelTemplate("Inset", false, 3, 3, 3) - i.Panel:SetAllPoints() - end - end - end; - local a4 = { - "PrimaryProfession1StatusBar", "PrimaryProfession2StatusBar", "SecondaryProfession1StatusBar", "SecondaryProfession2StatusBar", "SecondaryProfession3StatusBar", "SecondaryProfession4StatusBar" - } - for h, a5 in pairs(a4)do - local a5 = _G[a5]a5:Formula409() - a5:SetStatusBarTexture([[Interface\AddOns\SVUI\assets\artwork\Template\DEFAULT]]) - a5:SetStatusBarColor(0, 220/255, 0) - a5:SetPanelTemplate("Default") - a5.rankText:ClearAllPoints() - a5.rankText:SetPoint("CENTER") - end; - for j = 1, 5 do - STYLE:ApplyTabStyle(_G["SpellBookFrameTabButton"..j]) - end; + + for _, gName in pairs(proFrames)do + local frame = _G[gName] + local frameMissing = _G[("%sMissing"):format(gName)] + if(frame and frame.missingText) then frame.missingText:SetTextColor(0, 0, 0) end + if(frameMissing) then frameMissing:SetTextColor(1, 1, 0) end + end + + for _, gName in pairs(proButtons)do + local button = _G[gName] + local buttonTex = _G[("%sIconTexture"):format(gName)] + if(button) then + button:Formula409() + if(buttonTex) then + buttonTex:SetTexCoord(0.1, 0.9, 0.1, 0.9) + buttonTex:FillInner() + button:SetFrameLevel(button:GetFrameLevel() + 2) + if not button.Panel then + button:SetPanelTemplate("Inset", false, 3, 3, 3) + button.Panel:SetAllPoints() + end + end + end + end + + for _, gName in pairs(proBars) do + local bar = _G[gName] + if(bar) then + bar:Formula409() + bar:SetStatusBarTexture([[Interface\AddOns\SVUI\assets\artwork\Template\DEFAULT]]) + bar:SetStatusBarColor(0, 220/255, 0) + bar:SetPanelTemplate("Default") + bar.rankText:ClearAllPoints() + bar.rankText:SetPoint("CENTER") + end + end + + for i = 1, 5 do + local frame = _G[("SpellBookFrameTabButton%d"):format(i)] + if(frame) then + STYLE:ApplyTabStyle(frame) + end + end + SpellBookFrameTabButton1:ClearAllPoints() SpellBookFrameTabButton1:SetPoint('TOPLEFT', SpellBookFrame, 'BOTTOMLEFT', 0, 2) -end; +end --[[ ########################################################## STYLE LOADING diff --git a/Interface/AddOns/SVUI_StyleOMatic/addons/supervillain.lua b/Interface/AddOns/SVUI_StyleOMatic/addons/supervillain.lua index 55f3f2f..de34b44 100644 --- a/Interface/AddOns/SVUI_StyleOMatic/addons/supervillain.lua +++ b/Interface/AddOns/SVUI_StyleOMatic/addons/supervillain.lua @@ -83,10 +83,9 @@ local function Widget_PaginationStyle(...) STYLE:ApplyPaginationStyle(...) end -local function StyleAceGUI() - local AceGUI = LibStub("AceGUI-3.0", true) - - assert(AceGUI, "Addon Not Loaded") +local function StyleAceGUI(event, addon) + assert((LibStub("AceGUI-3.0") and (addon == "SVUI_ConfigOMatic")), "Addon Not Loaded") + local AceGUI = LibStub("AceGUI-3.0") for i = 1, 4 do local alert = _G["SVUI_SystemAlert"..i]; diff --git a/Interface/AddOns/SVUI_StyleOMatic/addons/talents.lua b/Interface/AddOns/SVUI_StyleOMatic/addons/talents.lua index 9cfa41c..8a7e64f 100644 --- a/Interface/AddOns/SVUI_StyleOMatic/addons/talents.lua +++ b/Interface/AddOns/SVUI_StyleOMatic/addons/talents.lua @@ -38,28 +38,40 @@ local function Tab_OnLeave(this) this.backdrop:SetBackdropBorderColor(0,0,0,1) end -local function PseudoTabStyle(this) - if not this then return end; +local function ChangeTabHelper(this) this:Formula409() - this:GetNormalTexture():SetTexCoord(0.1, 0.9, 0.1, 0.9) - this:GetNormalTexture():FillInner() + local nTex = this:GetNormalTexture() + if(nTex) then + nTex:SetTexCoord(0.1, 0.9, 0.1, 0.9) + nTex:FillInner() + end + this.pushed = true; + this.backdrop = CreateFrame("Frame", nil, this) this.backdrop:WrapOuter(this,1,1) - local level = this:GetFrameLevel() - if(level > 0) then - this.backdrop:SetFrameLevel(level - 1) - else - this.backdrop:SetFrameLevel(0) - end - this.backdrop:SetFixedPanelTemplate("Component", true) - this.backdrop:SetPanelColor("dark") - this:HookScript("OnEnter",Tab_OnEnter) - this:HookScript("OnLeave",Tab_OnLeave) -end; + this.backdrop:SetFrameLevel(0) + this.backdrop:SetBackdrop({ + bgFile = [[Interface\BUTTONS\WHITE8X8]], + tile = false, + tileSize = 0, + edgeFile = [[Interface\AddOns\SVUI\assets\artwork\Template\GLOW]], + edgeSize = 3, + insets = { + left = 0, + right = 0, + top = 0, + bottom = 0 + } + }); + this.backdrop:SetBackdropColor(0,0,0,1) + this.backdrop:SetBackdropBorderColor(0,0,0,1) + this:SetScript("OnEnter", Tab_OnEnter) + this:SetScript("OnLeave", Tab_OnLeave) +end local function StyleGlyphHolder(holder, offset) - if holder.styled then return end; + if holder.styled then return end local outer = holder:CreateTexture(nil, "OVERLAY") outer:WrapOuter(holder, offset, offset) @@ -78,33 +90,38 @@ local function StyleGlyphHolder(holder, offset) disabled:SetTexture(borderTex) disabled:SetGradient(unpack(SuperVillain.Media.gradient.default)) holder:SetDisabledTexture(disabled) - end; + end local cd = holder:GetName() and _G[holder:GetName().."Cooldown"] if cd then cd:ClearAllPoints() cd:FillInner() - end; + end holder.styled = true -end; +end --[[ ########################################################## TALENTFRAME STYLER ########################################################## ]]-- local function TalentFrameStyle() - if SuperVillain.db.SVStyle.blizzard.enable ~= true or SuperVillain.db.SVStyle.blizzard.talent ~= true then return end; + if SuperVillain.db.SVStyle.blizzard.enable ~= true or SuperVillain.db.SVStyle.blizzard.talent ~= true then return end + PlayerTalentFrame:Formula409() PlayerTalentFrameInset:Formula409() PlayerTalentFrameTalents:Formula409() + local r = CreateFrame('Frame', nil, PlayerTalentFrame) r:WrapOuter(PlayerTalentFrame) + local s = PlayerTalentFrame:GetFrameLevel() + if((s - 1) >= 0) then r:SetFrameLevel(s - 1) else r:SetFrameLevel(0) - end; + end + PlayerTalentFrame:SetPanelTemplate("Halftone") PlayerTalentFrame.Panel:Point("BOTTOMRIGHT", PlayerTalentFrame, "BOTTOMRIGHT", 0, -5) PlayerTalentFrameSpecializationTutorialButton:MUNG() @@ -112,13 +129,17 @@ local function TalentFrameStyle() PlayerTalentFramePetSpecializationTutorialButton:MUNG() STYLE:ApplyCloseButtonStyle(PlayerTalentFrameCloseButton) PlayerTalentFrameActivateButton:SetButtonTemplate() + for _,name in pairs(SpecButtonList)do local button = _G[name]; - button:Formula409() - button:SetButtonTemplate() - local d, e, k, g = button:GetPoint() - button:Point(d, e, k, g, -28) - end; + if(button) then + button:Formula409() + button:SetButtonTemplate() + local d, e, k, g = button:GetPoint() + button:Point(d, e, k, g, -28) + end + end + PlayerTalentFrameTalents:SetFixedPanelTemplate('Transparent') PlayerTalentFrameTalentsClearInfoFrame:SetFixedPanelTemplate('Transparent') PlayerTalentFrameTalentsClearInfoFrame.icon:SetTexCoord(0.1, 0.9, 0.1, 0.9) @@ -126,40 +147,36 @@ local function TalentFrameStyle() PlayerTalentFrameTalentsClearInfoFrame:Height(PlayerTalentFrameTalentsClearInfoFrame:GetHeight()-2) PlayerTalentFrameTalentsClearInfoFrame.icon:Size(PlayerTalentFrameTalentsClearInfoFrame:GetSize()) PlayerTalentFrameTalentsClearInfoFrame:Point('TOPLEFT', PlayerTalentFrameTalents, 'BOTTOMLEFT', 8, -8) + for b = 1, 4 do STYLE:ApplyTabStyle(_G['PlayerTalentFrameTab'..b]) if b == 1 then local d, e, k, g = _G['PlayerTalentFrameTab'..b]:GetPoint() _G['PlayerTalentFrameTab'..b]:Point(d, e, k, g, -4) end - end; + end + hooksecurefunc('PlayerTalentFrame_UpdateTabs', function() for b = 1, 4 do local d, e, k, g = _G['PlayerTalentFrameTab'..b]:GetPoint() _G['PlayerTalentFrameTab'..b]:Point(d, e, k, g, -4) end end) + PlayerTalentFrameSpecializationSpellScrollFrameScrollChild.Seperator:SetTexture(1, 1, 1) PlayerTalentFrameSpecializationSpellScrollFrameScrollChild.Seperator:SetAlpha(0.2) + for b = 1, 2 do local v = _G['PlayerSpecTab'..b] _G['PlayerSpecTab'..b..'Background']:MUNG() - PseudoTabStyle(v) - hooksecurefunc(v:GetHighlightTexture(), "SetTexture", function(i, w) - if w ~= nil then - i:SetTexture(0,0,0,0) - end - end) - hooksecurefunc(v:GetCheckedTexture(), "SetTexture", function(i, w) - if w ~= nil then - i:SetTexture(0,0,0,0) - end - end) - end; + ChangeTabHelper(v) + end + hooksecurefunc('PlayerTalentFrame_UpdateSpecs', function() local d, x, f, g, h = PlayerSpecTab1:GetPoint() PlayerSpecTab1:Point(d, x, f, -1, h) end) + for b = 1, MAX_NUM_TALENT_TIERS do local y = _G["PlayerTalentFrameTalentsTalentRow"..b] _G["PlayerTalentFrameTalentsTalentRow"..b.."Bg"]:Hide() @@ -184,7 +201,8 @@ local function TalentFrameStyle() A.bg.SelectedTexture:Point("TOPLEFT", A, "TOPLEFT", 15, -1) A.bg.SelectedTexture:Point("BOTTOMRIGHT", A, "BOTTOMRIGHT", -10, 1) end - end; + end + hooksecurefunc("TalentFrame_Update", function() for b = 1, MAX_NUM_TALENT_TIERS do for z = 1, NUM_TALENT_COLUMNS do @@ -194,7 +212,7 @@ local function TalentFrameStyle() A.bg.SelectedTexture:SetTexture(0, 1, 0, 0.1) else A.bg.SelectedTexture:Hide() - end; + end if A.learnSelection:IsShown() then A.bg.SelectedTexture:Show() A.bg.SelectedTexture:SetTexture(1, 1, 0, 0.1) @@ -202,19 +220,23 @@ local function TalentFrameStyle() end end end) + for b = 1, 5 do select(b, PlayerTalentFrameSpecializationSpellScrollFrameScrollChild:GetRegions()):Hide() - end; + end + local C = _G["PlayerTalentFrameSpecializationSpellScrollFrameScrollChild"] C.ring:Hide() C:SetFixedPanelTemplate("Transparent") C.Panel:WrapOuter(C.specIcon) C.specIcon:SetTexCoord(0.1, 0.9, 0.1, 0.9) + local D = _G["PlayerTalentFramePetSpecializationSpellScrollFrameScrollChild"] D.ring:Hide() D:SetFixedPanelTemplate("Transparent") D.Panel:WrapOuter(D.specIcon) D.specIcon:SetTexCoord(0.1, 0.9, 0.1, 0.9) + hooksecurefunc("PlayerTalentFrame_UpdateSpecFrame", function(i, E) local F = GetSpecialization(nil, i.isPet, PlayerSpecTab2:GetChecked() and 2 or 1) local G = E or F or 1; @@ -226,7 +248,7 @@ local function TalentFrameStyle() K = { GetSpecializationSpells(G, nil, i.isPet) } else K = SPEC_SPELLS_DISPLAY[H] - end; + end for b = 1, #K, 2 do local L = I["abilityButton"..J] local p, icon = GetSpellTexture(K[b]) @@ -237,9 +259,9 @@ local function TalentFrameStyle() L:SetFixedPanelTemplate("Transparent") L.icon:SetTexCoord(0.1, 0.9, 0.1, 0.9) L.icon:FillInner() - end; + end J = J+1 - end; + end for b = 1, GetNumSpecializations(nil, i.isPet)do local A = i["specButton"..b]A.SelectedTexture:FillInner(A.Panel) if A.selected then @@ -249,6 +271,7 @@ local function TalentFrameStyle() end end end) + for b = 1, GetNumSpecializations(false, nil)do local A = PlayerTalentFrameSpecialization["specButton"..b] local p, p, p, icon = GetSpecializationInfo(b, false, nil) @@ -259,10 +282,12 @@ local function TalentFrameStyle() A.specIcon:Point("LEFT", A, "LEFT", 15, 0) A.SelectedTexture = A:CreateTexture(nil, 'ARTWORK') A.SelectedTexture:SetTexture(1, 1, 0, 0.1) - end; + end + local btnList = { "PlayerTalentFrameSpecializationSpecButton", "PlayerTalentFramePetSpecializationSpecButton" } + for p, M in pairs(btnList)do for b = 1, 4 do local A = _G[M..b]_G["PlayerTalentFrameSpecializationSpecButton"..b.."Glow"]:MUNG() @@ -275,20 +300,21 @@ local function TalentFrameStyle() A:SetFixedPanelTemplate("Button") A:GetHighlightTexture():FillInner(A.Panel) end - end; + end + if SuperVillain.class == "HUNTER" then for b = 1, 6 do select(b, PlayerTalentFramePetSpecialization:GetRegions()):Hide() - end; + end for b = 1, PlayerTalentFramePetSpecialization:GetNumChildren()do local O = select(b, PlayerTalentFramePetSpecialization:GetChildren()) if O and not O:GetName() then O:DisableDrawLayer("OVERLAY") end - end; + end for b = 1, 5 do select(b, PlayerTalentFramePetSpecializationSpellScrollFrameScrollChild:GetRegions()):Hide() - end; + end for b = 1, GetNumSpecializations(false, true)do local A = PlayerTalentFramePetSpecialization["specButton"..b] local p, p, p, icon = GetSpecializationInfo(b, false, true) @@ -299,19 +325,21 @@ local function TalentFrameStyle() A.specIcon:Point("LEFT", A, "LEFT", 15, 0) A.SelectedTexture = A:CreateTexture(nil, 'ARTWORK') A.SelectedTexture:SetTexture(1, 1, 0, 0.1) - end; + end PlayerTalentFramePetSpecializationSpellScrollFrameScrollChild.Seperator:SetTexture(1, 1, 1) PlayerTalentFramePetSpecializationSpellScrollFrameScrollChild.Seperator:SetAlpha(0.2) - end; + end + PlayerTalentFrameSpecialization:DisableDrawLayer('ARTWORK') PlayerTalentFrameSpecialization:DisableDrawLayer('BORDER') + for b = 1, PlayerTalentFrameSpecialization:GetNumChildren()do local O = select(b, PlayerTalentFrameSpecialization:GetChildren()) if O and not O:GetName() then O:DisableDrawLayer("OVERLAY") end end -end; +end --[[ ########################################################## STYLE LOADING @@ -340,7 +368,7 @@ local function GlyphStyle() e:Formula409() STYLE:ApplyLinkButtonStyle(e) icon:SetTexCoord(0.1, 0.9, 0.1, 0.9 ) - end; + end for b = 1, 6 do local glyphHolder = _G["GlyphFrameGlyph"..b] @@ -352,11 +380,11 @@ local function GlyphStyle() StyleGlyphHolder(glyphHolder, 1) end end - end; + end GlyphFrameHeader1:Formula409() GlyphFrameHeader2:Formula409() GlyphFrameScrollFrame:SetPanelTemplate("Inset", false, 3, 2, 2) -end; +end STYLE:SaveBlizzardStyle("Blizzard_GlyphUI", GlyphStyle) \ No newline at end of file diff --git a/Interface/AddOns/SVUI_StyleOMatic/addons/thirdparty/AdiBags.lua b/Interface/AddOns/SVUI_StyleOMatic/addons/thirdparty/AdiBags.lua index f80cf18..15c3572 100644 --- a/Interface/AddOns/SVUI_StyleOMatic/addons/thirdparty/AdiBags.lua +++ b/Interface/AddOns/SVUI_StyleOMatic/addons/thirdparty/AdiBags.lua @@ -69,4 +69,4 @@ local function StyleAdiBags(event) end end -STYLE:SaveAddonStyle("AdiBags", StyleAdiBags, nil, nil, 'PLAYER_ENTERING_WORLD', 'BANKFRAME_OPENED') \ No newline at end of file +STYLE:SaveAddonStyle("AdiBags", StyleAdiBags, nil, nil, 'BANKFRAME_OPENED') \ No newline at end of file diff --git a/Interface/AddOns/SVUI_StyleOMatic/addons/thirdparty/Altoholic.lua b/Interface/AddOns/SVUI_StyleOMatic/addons/thirdparty/Altoholic.lua new file mode 100644 index 0000000..a673cf8 --- /dev/null +++ b/Interface/AddOns/SVUI_StyleOMatic/addons/thirdparty/Altoholic.lua @@ -0,0 +1,280 @@ +--[[ +############################################################################## +_____/\\\\\\\\\\\____/\\\________/\\\__/\\\________/\\\__/\\\\\\\\\\\_ # + ___/\\\/////////\\\_\/\\\_______\/\\\_\/\\\_______\/\\\_\/////\\\///__ # + __\//\\\______\///__\//\\\______/\\\__\/\\\_______\/\\\_____\/\\\_____ # + ___\////\\\__________\//\\\____/\\\___\/\\\_______\/\\\_____\/\\\_____ # + ______\////\\\________\//\\\__/\\\____\/\\\_______\/\\\_____\/\\\_____ # + _________\////\\\______\//\\\/\\\_____\/\\\_______\/\\\_____\/\\\_____ # + __/\\\______\//\\\______\//\\\\\______\//\\\______/\\\______\/\\\_____ # + _\///\\\\\\\\\\\/________\//\\\________\///\\\\\\\\\/____/\\\\\\\\\\\_# + ___\///////////___________\///___________\/////////_____\///////////_# +############################################################################## +S U P E R - V I L L A I N - U I By: Munglunch # +############################################################################## +########################################################## +LOCALIZED LUA FUNCTIONS +########################################################## +]]-- +--[[ GLOBALS ]]-- +local _G = _G; +local unpack = _G.unpack; +local select = _G.select; +local pairs = _G.pairs; +local string = _G.string; +--[[ STRING METHODS ]]-- +local format = string.format; +--[[ +########################################################## +GET ADDON DATA +########################################################## +]]-- +local SuperVillain, L = unpack(SVUI); +local STYLE = _G.StyleVillain; +--[[ +########################################################## +ALTOHOLIC +########################################################## +]]-- +local function ColorAltoBorder(self) + if self.border then + local r, g, b = self.border:GetVertexColor() + local Backdrop = self.backdrop or self.Backdrop + Backdrop:SetBackdropBorderColor(r, g, b, 1) + end +end + +local function StyleAltoholic(event, addon) + assert(AltoholicFrame, "AddOn Not Loaded") + + if event == "PLAYER_ENTERING_WORLD" then + STYLE:ApplyTooltipStyle(AltoTooltip) + + AltoholicFramePortrait:MUNG() + + STYLE:ApplyFrameStyle(AltoholicFrame, "Action", false, true) + STYLE:ApplyFrameStyle(AltoMsgBox) + STYLE:ApplyButtonStyle(AltoMsgBoxYesButton) + STYLE:ApplyButtonStyle(AltoMsgBoxNoButton) + STYLE:ApplyCloseButtonStyle(AltoholicFrameCloseButton) + STYLE:ApplyEditBoxStyle(AltoholicFrame_SearchEditBox, 175, 15) + STYLE:ApplyButtonStyle(AltoholicFrame_ResetButton) + STYLE:ApplyButtonStyle(AltoholicFrame_SearchButton) + + AltoholicFrameTab1:Point("TOPLEFT", AltoholicFrame, "BOTTOMLEFT", -5, 2) + AltoholicFrame_ResetButton:Point("TOPLEFT", AltoholicFrame, "TOPLEFT", 25, -77) + AltoholicFrame_SearchEditBox:Point("TOPLEFT", AltoholicFrame, "TOPLEFT", 37, -56) + AltoholicFrame_ResetButton:Size(85, 24) + AltoholicFrame_SearchButton:Size(85, 24) + end + + if addon == "Altoholic_Summary" then + STYLE:ApplyFrameStyle(AltoholicFrameSummary) + STYLE:ApplyFrameStyle(AltoholicFrameBagUsage) + STYLE:ApplyFrameStyle(AltoholicFrameSkills) + STYLE:ApplyFrameStyle(AltoholicFrameActivity) + STYLE:ApplyScrollbarStyle(AltoholicFrameSummaryScrollFrameScrollBar) + STYLE:ApplyScrollbarStyle(AltoholicFrameBagUsageScrollFrameScrollBar) + STYLE:ApplyScrollbarStyle(AltoholicFrameSkillsScrollFrameScrollBar) + STYLE:ApplyScrollbarStyle(AltoholicFrameActivityScrollFrameScrollBar) + STYLE:ApplyDropdownStyle(AltoholicTabSummary_SelectLocation, 200) + + if(AltoholicFrameSummaryScrollFrame) then + AltoholicFrameSummaryScrollFrame:Formula409(true) + end + + if(AltoholicFrameBagUsageScrollFrame) then + AltoholicFrameBagUsageScrollFrame:Formula409(true) + end + + if(AltoholicFrameSkillsScrollFrame) then + AltoholicFrameSkillsScrollFrame:Formula409(true) + end + + if(AltoholicFrameActivityScrollFrame) then + AltoholicFrameActivityScrollFrame:Formula409(true) + end + + STYLE:ApplyButtonStyle(AltoholicTabSummary_RequestSharing) + STYLE:ApplyTextureStyle(AltoholicTabSummary_RequestSharingIconTexture) + STYLE:ApplyButtonStyle(AltoholicTabSummary_Options) + STYLE:ApplyTextureStyle(AltoholicTabSummary_OptionsIconTexture) + STYLE:ApplyButtonStyle(AltoholicTabSummary_OptionsDataStore) + STYLE:ApplyTextureStyle(AltoholicTabSummary_OptionsDataStoreIconTexture) + + for i = 1, 5 do + STYLE:ApplyButtonStyle(_G["AltoholicTabSummaryMenuItem"..i], true) + end + for i = 1, 8 do + STYLE:ApplyButtonStyle(_G["AltoholicTabSummary_Sort"..i], true) + end + for i = 1, 7 do + STYLE:ApplyTabStyle(_G["AltoholicFrameTab"..i], true) + end + end + + if IsAddOnLoaded("Altoholic_Characters") or addon == "Altoholic_Characters" then + STYLE:ApplyFrameStyle(AltoholicFrameContainers) + STYLE:ApplyFrameStyle(AltoholicFrameRecipes) + STYLE:ApplyFrameStyle(AltoholicFrameQuests) + STYLE:ApplyFrameStyle(AltoholicFrameGlyphs) + STYLE:ApplyFrameStyle(AltoholicFrameMail) + STYLE:ApplyFrameStyle(AltoholicFrameSpellbook) + STYLE:ApplyFrameStyle(AltoholicFramePets) + STYLE:ApplyFrameStyle(AltoholicFrameAuctions) + STYLE:ApplyScrollbarStyle(AltoholicFrameContainersScrollFrameScrollBar) + STYLE:ApplyScrollbarStyle(AltoholicFrameQuestsScrollFrameScrollBar) + STYLE:ApplyScrollbarStyle(AltoholicFrameRecipesScrollFrameScrollBar) + STYLE:ApplyDropdownStyle(AltoholicFrameTalents_SelectMember) + STYLE:ApplyDropdownStyle(AltoholicTabCharacters_SelectRealm) + STYLE:ApplyPaginationStyle(AltoholicFrameSpellbookPrevPage) + STYLE:ApplyPaginationStyle(AltoholicFrameSpellbookNextPage) + STYLE:ApplyPaginationStyle(AltoholicFramePetsNormalPrevPage) + STYLE:ApplyPaginationStyle(AltoholicFramePetsNormalNextPage) + STYLE:ApplyRotateStyle(AltoholicFramePetsNormal_ModelFrameRotateLeftButton) + STYLE:ApplyRotateStyle(AltoholicFramePetsNormal_ModelFrameRotateRightButton) + STYLE:ApplyButtonStyle(AltoholicTabCharacters_Sort1) + STYLE:ApplyButtonStyle(AltoholicTabCharacters_Sort2) + STYLE:ApplyButtonStyle(AltoholicTabCharacters_Sort3) + AltoholicFrameContainersScrollFrame:Formula409(true) + AltoholicFrameQuestsScrollFrame:Formula409(true) + AltoholicFrameRecipesScrollFrame:Formula409(true) + + local Buttons = { + 'AltoholicTabCharacters_Characters', + 'AltoholicTabCharacters_CharactersIcon', + 'AltoholicTabCharacters_BagsIcon', + 'AltoholicTabCharacters_QuestsIcon', + 'AltoholicTabCharacters_TalentsIcon', + 'AltoholicTabCharacters_AuctionIcon', + 'AltoholicTabCharacters_MailIcon', + 'AltoholicTabCharacters_SpellbookIcon', + 'AltoholicTabCharacters_ProfessionsIcon', + } + + for _, object in pairs(Buttons) do + STYLE:ApplyTextureStyle(_G[object..'IconTexture']) + STYLE:ApplyTextureStyle(_G[object]) + end + + for i = 1, 7 do + for j = 1, 14 do + STYLE:ApplyLinkButtonStyle(_G["AltoholicFrameContainersEntry"..i.."Item"..j]) + _G["AltoholicFrameContainersEntry"..i.."Item"..j]:HookScript('OnShow', ColorAltoBorder) + end + end + end + + if IsAddOnLoaded("Altoholic_Achievements") or addon == "Altoholic_Achievements" then + STYLE:ApplyUnderlayStyle(AltoholicFrameAchievements) + AltoholicFrameAchievementsScrollFrame:Formula409(true) + AltoholicAchievementsMenuScrollFrame:Formula409(true) + STYLE:ApplyScrollbarStyle(AltoholicFrameAchievementsScrollFrameScrollBar) + STYLE:ApplyScrollbarStyle(AltoholicAchievementsMenuScrollFrameScrollBar) + STYLE:ApplyDropdownStyle(AltoholicTabAchievements_SelectRealm) + AltoholicTabAchievements_SelectRealm:Point("TOPLEFT", AltoholicFrame, "TOPLEFT", 205, -57) + + for i = 1, 15 do + STYLE:ApplyButtonStyle(_G["AltoholicTabAchievementsMenuItem"..i], true) + end + + for i = 1, 8 do + for j = 1, 10 do + STYLE:ApplyUnderlayStyle(_G["AltoholicFrameAchievementsEntry"..i.."Item"..j]) + local Backdrop = _G["AltoholicFrameAchievementsEntry"..i.."Item"..j].backdrop or _G["AltoholicFrameAchievementsEntry"..i.."Item"..j].Backdrop + STYLE:ApplyTextureStyle(_G["AltoholicFrameAchievementsEntry"..i.."Item"..j..'_Background']) + _G["AltoholicFrameAchievementsEntry"..i.."Item"..j..'_Background']:SetInside(Backdrop) + end + end + end + + if IsAddOnLoaded("Altoholic_Agenda") or addon == "Altoholic_Agenda" then + STYLE:ApplyFrameStyle(AltoholicFrameCalendarScrollFrame) + STYLE:ApplyFrameStyle(AltoholicTabAgendaMenuItem1) + STYLE:ApplyScrollbarStyle(AltoholicFrameCalendarScrollFrameScrollBar) + STYLE:ApplyPaginationStyle(AltoholicFrameCalendar_NextMonth) + STYLE:ApplyPaginationStyle(AltoholicFrameCalendar_PrevMonth) + STYLE:ApplyButtonStyle(AltoholicTabAgendaMenuItem1, true) + + for i = 1, 14 do + STYLE:ApplyFrameStyle(_G["AltoholicFrameCalendarEntry"..i]) + end + end + + if IsAddOnLoaded("Altoholic_Grids") or addon == "Altoholic_Grids" then + AltoholicFrameGridsScrollFrame:Formula409(true) + STYLE:ApplyUnderlayStyle(AltoholicFrameGrids) + STYLE:ApplyScrollbarStyle(AltoholicFrameGridsScrollFrameScrollBar) + STYLE:ApplyDropdownStyle(AltoholicTabGrids_SelectRealm) + STYLE:ApplyDropdownStyle(AltoholicTabGrids_SelectView) + + for i = 1, 8 do + for j = 1, 10 do + STYLE:ApplyUnderlayStyle(_G["AltoholicFrameGridsEntry"..i.."Item"..j], nil, nil, nil, true) + _G["AltoholicFrameGridsEntry"..i.."Item"..j]:HookScript('OnShow', ColorAltoBorder) + end + end + + AltoholicFrameGrids:HookScript('OnUpdate', function() + for i = 1, 10 do + for j = 1, 10 do + if _G["AltoholicFrameGridsEntry"..i.."Item"..j.."_Background"] then + _G["AltoholicFrameGridsEntry"..i.."Item"..j.."_Background"]:SetTexCoord(.08, .92, .08, .82) + end + end + end + end) + + end + + if IsAddOnLoaded("Altoholic_Guild") or addon == "Altoholic_Guild" then + STYLE:ApplyFrameStyle(AltoholicFrameGuildMembers) + STYLE:ApplyFrameStyle(AltoholicFrameGuildBank) + STYLE:ApplyScrollbarStyle(AltoholicFrameGuildMembersScrollFrameScrollBar) + AltoholicFrameGuildMembersScrollFrame:Formula409(true) + + for i = 1, 2 do + STYLE:ApplyButtonStyle(_G["AltoholicTabGuildMenuItem"..i]) + end + + for i = 1, 7 do + for j = 1, 14 do + STYLE:ApplyLinkButtonStyle(_G["AltoholicFrameGuildBankEntry"..i.."Item"..j]) + end + end + + for i = 1, 19 do + STYLE:ApplyLinkButtonStyle(_G["AltoholicFrameGuildMembersItem"..i]) + end + + for i = 1, 5 do + STYLE:ApplyButtonStyle(_G["AltoholicTabGuild_Sort"..i]) + end + end + + if IsAddOnLoaded("Altoholic_Search") or addon == "Altoholic_Search" then + STYLE:ApplyUnderlayStyle(AltoholicFrameSearch, true) + AltoholicFrameSearchScrollFrame:Formula409(true) + AltoholicSearchMenuScrollFrame:Formula409(true) + STYLE:ApplyScrollbarStyle(AltoholicFrameSearchScrollFrameScrollBar) + STYLE:ApplyScrollbarStyle(AltoholicSearchMenuScrollFrameScrollBar) + STYLE:ApplyDropdownStyle(AltoholicTabSearch_SelectRarity) + STYLE:ApplyDropdownStyle(AltoholicTabSearch_SelectSlot) + STYLE:ApplyDropdownStyle(AltoholicTabSearch_SelectLocation) + AltoholicTabSearch_SelectRarity:Size(125, 32) + AltoholicTabSearch_SelectSlot:Size(125, 32) + AltoholicTabSearch_SelectLocation:Size(175, 32) + STYLE:ApplyEditBoxStyle(_G["AltoholicTabSearch_MinLevel"]) + STYLE:ApplyEditBoxStyle(_G["AltoholicTabSearch_MaxLevel"]) + + for i = 1, 15 do + STYLE:ApplyButtonStyle(_G["AltoholicTabSearchMenuItem"..i]) + end + + for i = 1, 8 do + STYLE:ApplyButtonStyle(_G["AltoholicTabSearch_Sort"..i]) + end + end +end + +STYLE:SaveAddonStyle("Altoholic", StyleAltoholic, nil, true) \ No newline at end of file diff --git a/Interface/AddOns/SVUI_StyleOMatic/addons/thirdparty/AtlasLoot.lua b/Interface/AddOns/SVUI_StyleOMatic/addons/thirdparty/AtlasLoot.lua index f3f2edd..0d9c121 100644 --- a/Interface/AddOns/SVUI_StyleOMatic/addons/thirdparty/AtlasLoot.lua +++ b/Interface/AddOns/SVUI_StyleOMatic/addons/thirdparty/AtlasLoot.lua @@ -125,9 +125,8 @@ local _hook_OnUpdate = function(self, elapsed) self:SetWidth(AtlasLootDefaultFrame:GetWidth()) end -LoadAddOn("AtlasLoot") -local function StyleAtlasLoot() +local function StyleAtlasLoot(event, addon) assert(AtlasLootPanel, "AddOn Not Loaded") local StripAllTextures = {"AtlasLootDefaultFrame","AtlasLootDefaultFrame_ScrollFrame","AtlasLootItemsFrame","AtlasLootPanel","AtlasLootCompareFrame","AtlasLootCompareFrame_ScrollFrameMainFilterScrollChildFrame","AtlasLootCompareFrame_ScrollFrameItemFrame","AtlasLootCompareFrame_ScrollFrameMainFilter","AtlasLootCompareFrameSortButton_Name","AtlasLootCompareFrameSortButton_Rarity","AtlasLootCompareFrameSortButton_1","AtlasLootCompareFrameSortButton_2","AtlasLootCompareFrameSortButton_3","AtlasLootCompareFrameSortButton_4","AtlasLootCompareFrameSortButton_5","AtlasLootCompareFrameSortButton_6"} @@ -142,8 +141,8 @@ local function StyleAtlasLoot() -- Manipulate the main frames STYLE:ApplyFrameStyle(_G["AtlasLootDefaultFrame"], "Action"); - STYLE:ApplyFrameStyle(_G["AtlasLootItemsFrame"], "Button"); - STYLE:ApplyFrameStyle(_G["AtlasLootPanel"], "Transparent"); + STYLE:ApplyUnderlayStyle(_G["AtlasLootItemsFrame"], "Inset"); + STYLE:ApplyFrameStyle(_G["AtlasLootPanel"], "Default"); hooksecurefunc(_G["AtlasLootPanel"], "SetPoint", _hook_ALPanel); _G["AtlasLootPanel"]:SetPoint("TOP",_G["AtlasLootDefaultFrame"],"BOTTOM",0,-1); @@ -183,8 +182,9 @@ local function StyleAtlasLoot() AtlasLootDefaultFrame_PackageSelect:SetPoint("TOPLEFT", AtlasLootDefaultFrame, "TOPLEFT", 50, -50) end + STYLE:ApplyDropdownStyle(AtlasLootDefaultFrame_ModuleSelect,240) STYLE:ApplyDropdownStyle(AtlasLootDefaultFrame_InstanceSelect,240) - --AtlasLootDefaultFrame_InstanceSelect:SetWidth(240) + STYLE:ApplyDropdownStyle(AtlasLootCompareFrameSearch_StatsListDropDown) AtlasLootCompareFrameSearch_StatsListDropDown:SetWidth(240) STYLE:ApplyDropdownStyle(AtlasLootCompareFrame_WishlistDropDown) @@ -221,4 +221,4 @@ local function StyleAtlasLoot() STYLE:ApplyTooltipStyle(AtlasLootTooltip) end end -STYLE:SaveAddonStyle("AtlasLoot", StyleAtlasLoot) \ No newline at end of file +STYLE:SaveAddonStyle("AtlasLoot", StyleAtlasLoot, nil, true) \ No newline at end of file diff --git a/Interface/AddOns/SVUI_StyleOMatic/addons/thirdparty/AuctionLite.lua b/Interface/AddOns/SVUI_StyleOMatic/addons/thirdparty/AuctionLite.lua index ed039d6..65b6df7 100644 --- a/Interface/AddOns/SVUI_StyleOMatic/addons/thirdparty/AuctionLite.lua +++ b/Interface/AddOns/SVUI_StyleOMatic/addons/thirdparty/AuctionLite.lua @@ -83,4 +83,4 @@ local function StyleAuctionLite(event, ...) STYLE:SafeEventRemoval("AuctionLite", event) end -STYLE:SaveAddonStyle("AuctionLite", StyleAuctionLite, false, false, "AUCTION_HOUSE_SHOW") \ No newline at end of file +STYLE:SaveAddonStyle("AuctionLite", StyleAuctionLite, nil, nil, "AUCTION_HOUSE_SHOW") \ No newline at end of file diff --git a/Interface/AddOns/SVUI_StyleOMatic/addons/thirdparty/BigWigs.lua b/Interface/AddOns/SVUI_StyleOMatic/addons/thirdparty/BigWigs.lua index 63a58ff..e3e0fe1 100644 --- a/Interface/AddOns/SVUI_StyleOMatic/addons/thirdparty/BigWigs.lua +++ b/Interface/AddOns/SVUI_StyleOMatic/addons/thirdparty/BigWigs.lua @@ -141,4 +141,4 @@ local function StyleBigWigs(event, addon) end end -STYLE:SaveAddonStyle("BigWigs", StyleBigWigs, nil, nil, "ADDON_LOADED") \ No newline at end of file +STYLE:SaveAddonStyle("BigWigs", StyleBigWigs, nil, true) \ No newline at end of file diff --git a/Interface/AddOns/SVUI_StyleOMatic/addons/thirdparty/DBM.lua b/Interface/AddOns/SVUI_StyleOMatic/addons/thirdparty/DBM.lua index 54670b0..89efad3 100644 --- a/Interface/AddOns/SVUI_StyleOMatic/addons/thirdparty/DBM.lua +++ b/Interface/AddOns/SVUI_StyleOMatic/addons/thirdparty/DBM.lua @@ -207,4 +207,4 @@ local function StyleDBM(event, addon) STYLE:SafeEventRemoval("DBM", event) end -STYLE:SaveAddonStyle("DBM", StyleDBM, false, false, "PLAYER_ENTERING_WORLD", "ADDON_LOADED") \ No newline at end of file +STYLE:SaveAddonStyle("DBM", StyleDBM, false, true) \ No newline at end of file diff --git a/Interface/AddOns/SVUI_StyleOMatic/addons/thirdparty/VEM.lua b/Interface/AddOns/SVUI_StyleOMatic/addons/thirdparty/VEM.lua index da72f35..3487c57 100644 --- a/Interface/AddOns/SVUI_StyleOMatic/addons/thirdparty/VEM.lua +++ b/Interface/AddOns/SVUI_StyleOMatic/addons/thirdparty/VEM.lua @@ -245,4 +245,4 @@ local function StyleVEM(event, addon) STYLE:SafeEventRemoval("VEM", event) end end -STYLE:SaveAddonStyle("VEM", StyleVEM, nil, nil, "PLAYER_ENTERING_WORLD", "ADDON_LOADED") \ No newline at end of file +STYLE:SaveAddonStyle("VEM", StyleVEM, nil, true) \ No newline at end of file diff --git a/Interface/AddOns/SVUI_StyleOMatic/addons/thirdparty/_load.xml b/Interface/AddOns/SVUI_StyleOMatic/addons/thirdparty/_load.xml index b32653f..aa9bc3a 100644 --- a/Interface/AddOns/SVUI_StyleOMatic/addons/thirdparty/_load.xml +++ b/Interface/AddOns/SVUI_StyleOMatic/addons/thirdparty/_load.xml @@ -1,6 +1,7 @@ <Ui xmlns="http://www.blizzard.com/wow/ui/"> <Script file='ACP.lua'/> <Script file='AdiBags.lua'/> + <Script file='Altoholic.lua'/> <Script file='AtlasLoot.lua'/> <Script file='AuctionLite.lua'/> <Script file='alDamageMeter.lua'/> diff --git a/Interface/AddOns/SVUI_StyleOMatic/common/methods.lua b/Interface/AddOns/SVUI_StyleOMatic/common/methods.lua index 14d10f6..a282f53 100644 --- a/Interface/AddOns/SVUI_StyleOMatic/common/methods.lua +++ b/Interface/AddOns/SVUI_StyleOMatic/common/methods.lua @@ -95,6 +95,41 @@ end CORE FUNCTIONS ########################################################## ]]-- +function STYLE:ApplyFrameStyle(this, template, noStripping, fullStripping) + if(not this or (this and this.Panel)) then return end + if not noStripping then this:Formula409(fullStripping) end + template = template or "Transparent" + this:SetPanelTemplate(template) +end + +function STYLE:ApplyUnderlayStyle(this, template, noStripping, fullStripping) + if(not this or (this and this.Panel)) then return end + if not noStripping then this:Formula409(fullStripping) end + template = template or "Transparent" + this:SetFixedPanelTemplate(template) +end + +function STYLE:ApplyButtonStyle(this) + if not this then return end + this:SetButtonTemplate() +end + +function STYLE:ApplyEditBoxStyle(this, width, height) + if not this then return end + this:SetEditboxTemplate() + if width then this:Width(width) end + if height then this:Height(height) end +end + +function STYLE:ApplyTextureStyle(this) + if not this then return end + this:SetTexCoord(0.1, 0.9, 0.1, 0.9) + local parent = this:GetParent() + if(parent) then + this:FillInner(parent, 1, 1) + end +end + function STYLE:ApplyCloseButtonStyle(this, anchor) if not this then return end if not this.hookedColors then @@ -105,7 +140,11 @@ function STYLE:ApplyCloseButtonStyle(this, anchor) if anchor then this:SetPoint("TOPRIGHT", anchor, "TOPRIGHT", 2, 2) end -end +end + +function STYLE:ApplyRotateStyle(this) + -- Do stuff +end function STYLE:ApplyScrollStyle(this) if(not this or (this and this.appliedStyle)) then return end @@ -177,31 +216,33 @@ end local function TabHelper(this) this:Formula409() - this:GetNormalTexture():SetTexCoord(0.1, 0.9, 0.1, 0.9) - this:GetNormalTexture():FillInner() + local nTex = this:GetNormalTexture() + if(nTex) then + nTex:SetTexCoord(0.1, 0.9, 0.1, 0.9) + nTex:FillInner() + end this.pushed = true; this.backdrop = CreateFrame("Frame", nil, this) this.backdrop:WrapOuter(this,1,1) - local level = this:GetFrameLevel() - if(level > 0) then - this.backdrop:SetFrameLevel(level - 1) - else - this.backdrop:SetFrameLevel(0) - end - this.backdrop:SetFixedPanelTemplate("Component", true) - this.backdrop:SetPanelColor("dark") + this.backdrop:SetFrameLevel(0) + this.backdrop:SetBackdrop({ + bgFile = [[Interface\BUTTONS\WHITE8X8]], + tile = false, + tileSize = 0, + edgeFile = [[Interface\AddOns\SVUI\assets\artwork\Template\GLOW]], + edgeSize = 3, + insets = { + left = 0, + right = 0, + top = 0, + bottom = 0 + } + }); + this.backdrop:SetBackdropColor(0,0,0,1) + this.backdrop:SetBackdropBorderColor(0,0,0,1) this:HookScript("OnEnter",Tab_OnEnter) this:HookScript("OnLeave",Tab_OnLeave) - hooksecurefunc(this:GetHighlightTexture(), "SetTexture", function(i, w) - if w ~= nil then - i:SetTexture(0,0,0,0) - end - end) - hooksecurefunc(this:GetCheckedTexture(), "SetTexture", function(i, w) - if w ~= nil then - i:SetTexture(0,0,0,0) - end - end) + local a,b,c,d,e = this:GetPoint() this:Point(a,b,c,1,e) end; @@ -373,14 +414,6 @@ function STYLE:ApplyTooltipStyle(frame) frame.appliedStyle = true end -function STYLE:ApplyFrameStyle(frame,template,noStripping,fullStripping) - if(not frame or (frame and frame.appliedStyle)) then return end - if not template then template = 'Transparent' end - if not noStripping then frame:Formula409(fullStripping) end - frame:SetPanelTemplate(template) - frame.appliedStyle = true -end - function STYLE:ApplyAlertStyle(frame) if(not frame or (frame and frame.appliedStyle)) then return end local alertpanel = CreateFrame("Frame", nil, frame)