Improvements on skin installation

This commit is contained in:
Tercio Jose
2022-04-28 16:44:04 -03:00
parent 1afb897904
commit dfd3fa8406
4 changed files with 49 additions and 12 deletions
+6
View File
@@ -5662,6 +5662,12 @@ local SPELL_POWER_PAIN = SPELL_POWER_PAIN or (PowerEnum and PowerEnum.Pain) or 1
--load auto run code
Details:StartAutoRun()
Details.isLoaded = true
end
function Details.IsLoaded()
return Details.isLoaded
end
function _detalhes.parser_functions:ADDON_LOADED (...)
+13 -4
View File
@@ -6870,22 +6870,31 @@ function _detalhes:RefreshMicroDisplays()
end
function Details:WaitForSkin()
local skinName = self.skin
local hasSkinInCache = Details.installed_skins_cache[skinName]
if (hasSkinInCache) then
Details:InstallSkin(skinName, hasSkinInCache)
local skin = Details.skins[skinName]
if (skin) then
return skin
end
end
Details.waitingForSkins = Details.waitingForSkins or {}
Details.waitingForSkins[self:GetId()] = self.skin
Details.waitingForSkins[self:GetId()] = skinName
local defaultSkin = _detalhes.default_skin_to_use
skin = _detalhes.skins[defaultSkin]
local skin = _detalhes.skins[defaultSkin]
self.skin = defaultSkin
return skin
end
function Details:ChangeSkin(skin_name)
if (not skin_name) then
skin_name = self.skin
end
local this_skin = _detalhes.skins [skin_name]
local this_skin = _detalhes.skins[skin_name]
if (not this_skin) then
local tempSkin = Details:WaitForSkin()
this_skin = tempSkin
+1
View File
@@ -1275,6 +1275,7 @@ local default_global_data = {
["14"] = false,
},
current_exp_raid_encounters = {},
installed_skins_cache = {},
--> all switch settings (panel shown when right click the title bar)
all_switch_config = {
+29 -8
View File
@@ -14,6 +14,17 @@ local _
if (not skin_table.file) then
return false -- no skin file
end
if (not skin_table.no_cache) then
--Detatils! can cache the skin installed by other addons or scripts
--This way the skin original table is saved within the addon and can work even if the other addon is outdated or disabled
if (Details.IsLoaded()) then
Details.installed_skins_cache[skin_name] = skin_table
print("Skin added to the skin cache", skin_name)
else
Details:Msg("cannot install a skin without 'skin.no_cache' before 'Details.IsLoaded()' is true.")
end
end
skin_table.author = skin_table.author or ""
skin_table.version = skin_table.version or ""
@@ -62,6 +73,7 @@ local _
version = "1.0",
site = "unknown",
desc = "This was the first skin made for Details!, inspired in the standard wow interface",
no_cache = true,
can_change_alpha_head = false,
icon_anchor_main = {-1, 1},
@@ -296,6 +308,7 @@ local _
version = "1.0",
site = "unknown",
desc = "Simple skin with soft gray color and half transparent frames.", --\n
no_cache = true,
--micro frames
micro_frames = {
@@ -519,7 +532,8 @@ local _
author = "Details!",
version = "1.0",
site = "unknown",
desc = "Same as the first Minimalistic, but this one is more darker and less transparent.",
desc = "Same as the first Minimalistic, but this one is more darker and less transparent.",
no_cache = true,
--micro frames
micro_frames = {
@@ -740,7 +754,8 @@ local _
version = "1.0",
site = "unknown",
desc = "Light blue, this skin fits on almost all interfaces.\n\nFor ElvUI interfaces, change the window color to black to get an compatible visual.",
no_cache = true,
--micro frames
micro_frames = {
left = "DETAILS_STATUSBAR_PLUGIN_PATTRIBUTE",
@@ -1054,7 +1069,8 @@ local _
version = "1.0",
site = "unknown",
desc = "Very clean skin without textures and only with a black contour.",
no_cache = true,
--general
can_change_alpha_head = true,
@@ -1314,7 +1330,8 @@ local _
version = "1.0",
site = "unknown",
desc = "This skin is based on ElvUI's addons, relying with black and transparent frames.",
no_cache = true,
--general
can_change_alpha_head = true,
@@ -1563,7 +1580,8 @@ local _
version = "1.0",
site = "unknown",
desc = "based on AddonSkins for ElvUI, this skin has opaque title bar and background.",
no_cache = true,
--general
can_change_alpha_head = true,
@@ -1745,7 +1763,8 @@ local _
version = "1.0",
site = "unknown",
desc = "Regular Details! skin but with a dark theme.",
no_cache = true,
--general
can_change_alpha_head = true,
@@ -2232,7 +2251,8 @@ local _
version = "1.0",
site = "unknown",
desc = "Simple skin with soft gray color and half transparent frames.", --\n
no_cache = true,
--micro frames
micro_frames = {
color = {1, 1, 1, 1},
@@ -2490,7 +2510,8 @@ local _
version = "1.0",
site = "unknown",
desc = "Simple skin with soft gray color and half transparent frames.", --\n
no_cache = true,
--micro frames
micro_frames = {
color = {1, 1, 1, 1},