diff --git a/Libs/DF/button.lua b/Libs/DF/button.lua index 801c1f89..37a73bbd 100644 --- a/Libs/DF/button.lua +++ b/Libs/DF/button.lua @@ -155,6 +155,14 @@ local ButtonMetaFunctions = _G [DF.GlobalWidgetControlNames ["button"]] local smember_function = function (_object, _value) return _rawset (_object, "func", _value) end + --> param1 + local smember_param1 = function (_object, _value) + return _rawset (_object, "param1", _value) + end + --> param2 + local smember_param2 = function (_object, _value) + return _rawset (_object, "param2", _value) + end --> text color local smember_textcolor = function (_object, _value) local _value1, _value2, _value3, _value4 = DF:ParseColors (_value) @@ -225,6 +233,8 @@ local ButtonMetaFunctions = _G [DF.GlobalWidgetControlNames ["button"]] ButtonMetaFunctions.SetMembers ["height"] = smember_height ButtonMetaFunctions.SetMembers ["text"] = smember_text ButtonMetaFunctions.SetMembers ["clickfunction"] = smember_function + ButtonMetaFunctions.SetMembers ["param1"] = smember_param1 + ButtonMetaFunctions.SetMembers ["param2"] = smember_param2 ButtonMetaFunctions.SetMembers ["textcolor"] = smember_textcolor ButtonMetaFunctions.SetMembers ["textfont"] = smember_textfont ButtonMetaFunctions.SetMembers ["textsize"] = smember_textsize @@ -861,9 +871,21 @@ local ButtonMetaFunctions = _G [DF.GlobalWidgetControlNames ["button"]] (button.mouse_down+0.5 > GetTime() and button:IsMouseOver()) ) then if (buttontype == "LeftButton") then - button.MyObject.func (button, buttontype, button.MyObject.param1, button.MyObject.param2) + + local success, errorText = pcall (button.MyObject.func, button, buttontype, button.MyObject.param1, button.MyObject.param2) + if (not success) then + error ("Details! Framework: button " .. button:GetName() .. " error: " .. errorText) + end + + --button.MyObject.func (button, buttontype, button.MyObject.param1, button.MyObject.param2) else - button.MyObject.funcright (button, buttontype, button.MyObject.param1, button.MyObject.param2) + + local success, errorText = pcall (button.MyObject.funcright, button, buttontype, button.MyObject.param1, button.MyObject.param2) + if (not success) then + error ("Details! Framework: button " .. button:GetName() .. " error: " .. errorText) + end + + --button.MyObject.funcright (button, buttontype, button.MyObject.param1, button.MyObject.param2) end end end @@ -918,6 +940,21 @@ function ButtonMetaFunctions:SetTemplate (template) self:SetIcon (i.texture, i.width, i.height, i.layout, i.texcoord, i.color, i.textdistance, i.leftpadding) end + if (template.textsize) then + self.textsize = template.textsize + end + + if (template.textfont) then + self.textfont = template.textfont + end + + if (template.textcolor) then + self.textcolor = template.textcolor + end + + if (template.textalign) then + self.textalign = template.textalign + end end ------------------------------------------------------------------------------------------------------------ diff --git a/Libs/DF/cooltip.lua b/Libs/DF/cooltip.lua index 14d5ed2b..ded73a1d 100644 --- a/Libs/DF/cooltip.lua +++ b/Libs/DF/cooltip.lua @@ -30,15 +30,18 @@ function DF:CreateCoolTip() --> Cooltip Startup ---------------------------------------------------------------------- + --> if a cooltip is already created with a higher version if (_G.GameCooltip2 and _G.GameCooltip2.version >= version) then return end - --> Start Cooltip Table - local CoolTip = {version = version} + --> initialize + local CoolTip = { + version = version + } _G.GameCooltip2 = CoolTip - --> Containers + --> containers CoolTip.LeftTextTable = {} CoolTip.LeftTextTableSub = {} CoolTip.RightTextTable = {} @@ -148,7 +151,7 @@ function DF:CreateCoolTip() CoolTip._default_font = SharedMedia:Fetch ("font", "Friz Quadrata TT") - --> Create Frames + --> create frames --> main frame local frame1 @@ -200,7 +203,7 @@ function DF:CreateCoolTip() DF:FadeFrame (frame1, 0) DF:FadeFrame (frame2, 0) - --> button containers + --> line container frame1.Lines = {} frame2.Lines = {} @@ -265,13 +268,14 @@ function DF:CreateCoolTip() CoolTip.buttonClicked = false frame1:SetScript ("OnEnter", function (self) - if (CoolTip.Type ~= 1 and CoolTip.Type ~= 2) then --> menu + --> is cooltip a menu? + if (CoolTip.Type ~= 1 and CoolTip.Type ~= 2) then CoolTip.active = true CoolTip.mouseOver = true CoolTip.had_interaction = true self:SetScript ("OnUpdate", nil) DF:FadeFrame (self, 0) - --rever + if (CoolTip.sub_menus) then DF:FadeFrame (frame2, 0) end @@ -387,191 +391,200 @@ function DF:CreateCoolTip() end local OnEnterUpdateButton = function (self, elapsed) - elapsedTime = elapsedTime+elapsed - if (elapsedTime > 0.001) then - --> search key: ~onenterupdatemain - CoolTip:ShowSub (self.index) - CoolTip.last_button = self.index - self:SetScript ("OnUpdate", nil) - end - end - - local OnLeaveUpdateButton = function (self, elapsed) - elapsedTime = elapsedTime+elapsed - if (elapsedTime > 0.7) then - if (not CoolTip.active and not CoolTip.buttonClicked) then - DF:FadeFrame (frame1, 1) - DF:FadeFrame (frame2, 1) - - elseif (not CoolTip.active) then - DF:FadeFrame (frame1, 1) - DF:FadeFrame (frame2, 1) - end - frame1:SetScript ("OnUpdate", nil) - end - end - - function CoolTip:NewMainButton (i) - local botao = CoolTip:CreateButton (i, frame1, "GameCooltipMainButton"..i) - - --> serach key: ~onenter - botao:SetScript ("OnEnter", function() - if (CoolTip.Type ~= 1 and CoolTip.Type ~= 2 and not botao.isDiv) then - CoolTip.active = true - CoolTip.mouseOver = true - CoolTip.had_interaction = true - - frame1:SetScript ("OnUpdate", nil) - frame2:SetScript ("OnUpdate", nil) - - botao.background:Show() - - if (CoolTip.OptionsTable.IconBlendModeHover) then - botao.leftIcon:SetBlendMode (CoolTip.OptionsTable.IconBlendModeHover) - else - botao.leftIcon:SetBlendMode ("BLEND") - end - - if (CoolTip.PopupFrameTable [botao.index]) then - local on_enter, on_leave, param1, param2 = unpack (CoolTip.PopupFrameTable [botao.index]) - if (on_enter) then - xpcall (on_enter, geterrorhandler(), frame1, param1, param2) - end - - elseif (CoolTip.IndexesSub [botao.index] and CoolTip.IndexesSub [botao.index] > 0) then - if (CoolTip.OptionsTable.SubMenuIsTooltip) then - CoolTip:ShowSub (botao.index) - botao.index = i - else - if (CoolTip.last_button) then - CoolTip:ShowSub (CoolTip.last_button) - else - CoolTip:ShowSub (botao.index) - end - elapsedTime = 0 - botao.index = i - botao:SetScript ("OnUpdate", OnEnterUpdateButton) - end - - else - --hide second frame - DF:FadeFrame (frame2, 1) - CoolTip.last_button = nil - end - else - CoolTip.mouseOver = true - CoolTip.had_interaction = true - end - end) - - botao:SetScript ("OnLeave", function() - if (CoolTip.Type ~= 1 and CoolTip.Type ~= 2 and not botao.isDiv) then - CoolTip.active = false - CoolTip.mouseOver = false - botao:SetScript ("OnUpdate", nil) - - botao.background:Hide() - - if (CoolTip.OptionsTable.IconBlendMode) then - botao.leftIcon:SetBlendMode (CoolTip.OptionsTable.IconBlendMode) - botao.rightIcon:SetBlendMode (CoolTip.OptionsTable.IconBlendMode) - else - botao.leftIcon:SetBlendMode ("BLEND") - botao.rightIcon:SetBlendMode ("BLEND") - end - - if (CoolTip.PopupFrameTable [botao.index]) then - local on_enter, on_leave, param1, param2 = unpack (CoolTip.PopupFrameTable [botao.index]) - if (on_leave) then - xpcall (on_leave, geterrorhandler(), frame1, param1, param2) - end - end - - elapsedTime = 0 - frame1:SetScript ("OnUpdate", OnLeaveUpdateButton) - --CoolTip:HideSub (i) - else - CoolTip.active = false - elapsedTime = 0 - frame1:SetScript ("OnUpdate", OnLeaveUpdateButton) - CoolTip.mouseOver = false - end - end) - - return botao + elapsedTime = elapsedTime+elapsed + if (elapsedTime > 0.001) then + --> search key: ~onenterupdatemain + CoolTip:ShowSub (self.index) + CoolTip.last_button = self.index + self:SetScript ("OnUpdate", nil) + end end + local OnLeaveUpdateButton = function (self, elapsed) + elapsedTime = elapsedTime+elapsed + if (elapsedTime > 0.7) then + if (not CoolTip.active and not CoolTip.buttonClicked) then + DF:FadeFrame (frame1, 1) + DF:FadeFrame (frame2, 1) + + elseif (not CoolTip.active) then + DF:FadeFrame (frame1, 1) + DF:FadeFrame (frame2, 1) + end + frame1:SetScript ("OnUpdate", nil) + end + end + + local OnEnterMainButton = function (self) + if (CoolTip.Type ~= 1 and CoolTip.Type ~= 2 and not self.isDiv) then + CoolTip.active = true + CoolTip.mouseOver = true + CoolTip.had_interaction = true + + frame1:SetScript ("OnUpdate", nil) + frame2:SetScript ("OnUpdate", nil) + + self.background:Show() + + if (CoolTip.OptionsTable.IconBlendModeHover) then + self.leftIcon:SetBlendMode (CoolTip.OptionsTable.IconBlendModeHover) + else + self.leftIcon:SetBlendMode ("BLEND") + end + + if (CoolTip.PopupFrameTable [self.index]) then + local on_enter, on_leave, param1, param2 = unpack (CoolTip.PopupFrameTable [self.index]) + if (on_enter) then + xpcall (on_enter, geterrorhandler(), frame1, param1, param2) + end + + elseif (CoolTip.IndexesSub [self.index] and CoolTip.IndexesSub [self.index] > 0) then + if (CoolTip.OptionsTable.SubMenuIsTooltip) then + CoolTip:ShowSub (self.index) + self.index = self.ID + else + if (CoolTip.last_button) then + CoolTip:ShowSub (CoolTip.last_button) + else + CoolTip:ShowSub (self.index) + end + elapsedTime = 0 + self.index = self.ID + self:SetScript ("OnUpdate", OnEnterUpdateButton) + end + + else + --hide second frame + DF:FadeFrame (frame2, 1) + CoolTip.last_button = nil + end + else + CoolTip.mouseOver = true + CoolTip.had_interaction = true + end + end + + local OnLeaveMainButton = function (self) + if (CoolTip.Type ~= 1 and CoolTip.Type ~= 2 and not self.isDiv) then + CoolTip.active = false + CoolTip.mouseOver = false + self:SetScript ("OnUpdate", nil) + + self.background:Hide() + + if (CoolTip.OptionsTable.IconBlendMode) then + self.leftIcon:SetBlendMode (CoolTip.OptionsTable.IconBlendMode) + self.rightIcon:SetBlendMode (CoolTip.OptionsTable.IconBlendMode) + else + self.leftIcon:SetBlendMode ("BLEND") + self.rightIcon:SetBlendMode ("BLEND") + end + + if (CoolTip.PopupFrameTable [self.index]) then + local on_enter, on_leave, param1, param2 = unpack (CoolTip.PopupFrameTable [self.index]) + if (on_leave) then + xpcall (on_leave, geterrorhandler(), frame1, param1, param2) + end + end + + elapsedTime = 0 + frame1:SetScript ("OnUpdate", OnLeaveUpdateButton) + else + CoolTip.active = false + elapsedTime = 0 + frame1:SetScript ("OnUpdate", OnLeaveUpdateButton) + CoolTip.mouseOver = false + end + end + + function CoolTip:NewMainButton (i) + local newButton = CoolTip:CreateButton (i, frame1, "GameCooltipMainButton"..i) + + --> serach key: ~onenter + newButton.ID = i + newButton:SetScript ("OnEnter", OnEnterMainButton) + newButton:SetScript ("OnLeave", OnLeaveMainButton) + + return newButton + end + + --> buttons for the secondary frame + local OnLeaveUpdateButtonSec = function (self, elapsed) - elapsedTime = elapsedTime+elapsed - if (elapsedTime > 0.7) then - if (not CoolTip.active and not CoolTip.buttonClicked) then - DF:FadeFrame (frame1, 1) - DF:FadeFrame (frame2, 1) - elseif (not CoolTip.active) then - DF:FadeFrame (frame1, 1) - DF:FadeFrame (frame2, 1) - end - frame2:SetScript ("OnUpdate", nil) - end - end + elapsedTime = elapsedTime+elapsed + if (elapsedTime > 0.7) then + if (not CoolTip.active and not CoolTip.buttonClicked) then + DF:FadeFrame (frame1, 1) + DF:FadeFrame (frame2, 1) + elseif (not CoolTip.active) then + DF:FadeFrame (frame1, 1) + DF:FadeFrame (frame2, 1) + end + frame2:SetScript ("OnUpdate", nil) + end + end + + local OnEnterSecondaryButton = function (self) + if (CoolTip.OptionsTable.SubMenuIsTooltip) then + return CoolTip:Close() + end + if (CoolTip.Type ~= 1 and CoolTip.Type ~= 2 and not self.isDiv) then + CoolTip.active = true + CoolTip.mouseOver = true + CoolTip.had_interaction = true + + self.background:Show() + + if (CoolTip.OptionsTable.IconBlendModeHover) then + self.leftIcon:SetBlendMode (CoolTip.OptionsTable.IconBlendModeHover) + else + self.leftIcon:SetBlendMode ("BLEND") + end + + frame1:SetScript ("OnUpdate", nil) + frame2:SetScript ("OnUpdate", nil) + + DF:FadeFrame (frame1, 0) + DF:FadeFrame (frame2, 0) + else + CoolTip.mouseOver = true + CoolTip.had_interaction = true + end + end + + local OnLeaveSecondaryButton = function (self) + if (CoolTip.Type ~= 1 and CoolTip.Type ~= 2) then + CoolTip.active = false + CoolTip.mouseOver = false + + self.background:Hide() + + if (CoolTip.OptionsTable.IconBlendMode) then + self.leftIcon:SetBlendMode (CoolTip.OptionsTable.IconBlendMode) + self.rightIcon:SetBlendMode (CoolTip.OptionsTable.IconBlendMode) + else + self.leftIcon:SetBlendMode ("BLEND") + self.rightIcon:SetBlendMode ("BLEND") + end + + elapsedTime = 0 + frame2:SetScript ("OnUpdate", OnLeaveUpdateButtonSec) + else + CoolTip.active = false + CoolTip.mouseOver = false + elapsedTime = 0 + frame2:SetScript ("OnUpdate", OnLeaveUpdateButtonSec) + end + end function CoolTip:NewSecondaryButton (i) - local botao = CoolTip:CreateButton (i, frame2, "GameCooltipSecButton"..i) + local newButton = CoolTip:CreateButton (i, frame2, "GameCooltipSecButton"..i) - botao:SetScript ("OnEnter", function() - if (CoolTip.OptionsTable.SubMenuIsTooltip) then - return CoolTip:Close() - end - if (CoolTip.Type ~= 1 and CoolTip.Type ~= 2 and not botao.isDiv) then - CoolTip.active = true - CoolTip.mouseOver = true - CoolTip.had_interaction = true - - botao.background:Show() - - if (CoolTip.OptionsTable.IconBlendModeHover) then - botao.leftIcon:SetBlendMode (CoolTip.OptionsTable.IconBlendModeHover) - else - botao.leftIcon:SetBlendMode ("BLEND") - end - - frame1:SetScript ("OnUpdate", nil) - frame2:SetScript ("OnUpdate", nil) - - DF:FadeFrame (frame1, 0) - DF:FadeFrame (frame2, 0) - else - CoolTip.mouseOver = true - CoolTip.had_interaction = true - end - end) - - botao:SetScript ("OnLeave", function() - if (CoolTip.Type ~= 1 and CoolTip.Type ~= 2) then - CoolTip.active = false - CoolTip.mouseOver = false - - botao.background:Hide() - - if (CoolTip.OptionsTable.IconBlendMode) then - botao.leftIcon:SetBlendMode (CoolTip.OptionsTable.IconBlendMode) - botao.rightIcon:SetBlendMode (CoolTip.OptionsTable.IconBlendMode) - else - botao.leftIcon:SetBlendMode ("BLEND") - botao.rightIcon:SetBlendMode ("BLEND") - end - - elapsedTime = 0 - frame2:SetScript ("OnUpdate", OnLeaveUpdateButtonSec) - else - CoolTip.active = false - CoolTip.mouseOver = false - elapsedTime = 0 - frame2:SetScript ("OnUpdate", OnLeaveUpdateButtonSec) - end - end) + newButton.ID = i + newButton:SetScript ("OnEnter", OnEnterSecondaryButton) + newButton:SetScript ("OnLeave", OnLeaveSecondaryButton) - return botao + return newButton end ---------------------------------------------------------------------- @@ -615,51 +628,62 @@ function DF:CreateCoolTip() CoolTip:ShowSelectedTexture (frame) end - local OnClickFunctionButtonPrincipal = function (self, button) - if (CoolTip.IndexesSub [self.index] and CoolTip.IndexesSub [self.index] > 0) then - CoolTip:ShowSub (self.index) - CoolTip.last_button = self.index - end - - CoolTip.buttonClicked = true - CoolTip:SetSelectedAnchor (frame1, self) - - if (not CoolTip.OptionsTable.NoLastSelectedBar) then - CoolTip:ShowSelectedTexture (frame1) - - end - CoolTip.SelectedIndexMain = self.index - - if (CoolTip.FunctionsTableMain [self.index]) then - local parameterTable = CoolTip.ParametersTableMain [self.index] - CoolTip.FunctionsTableMain [self.index] (_, CoolTip.FixedValue, parameterTable [1], parameterTable [2], parameterTable [3], button) - end + local OnClickFunctionMainButton = function (self, button) + if (CoolTip.IndexesSub [self.index] and CoolTip.IndexesSub [self.index] > 0) then + CoolTip:ShowSub (self.index) + CoolTip.last_button = self.index + end + + CoolTip.buttonClicked = true + CoolTip:SetSelectedAnchor (frame1, self) + + if (not CoolTip.OptionsTable.NoLastSelectedBar) then + CoolTip:ShowSelectedTexture (frame1) + end + CoolTip.SelectedIndexMain = self.index + + if (CoolTip.FunctionsTableMain [self.index]) then + local parameterTable = CoolTip.ParametersTableMain [self.index] + local func = CoolTip.FunctionsTableMain [self.index] + --> passing nil as the first parameter was a design mistake + --CoolTip.FunctionsTableMain [self.index] (_, CoolTip.FixedValue, parameterTable [1], parameterTable [2], parameterTable [3], button) + local okay, errortext = pcall (func, nil, CoolTip.FixedValue, parameterTable [1], parameterTable [2], parameterTable [3], button) + if (not okay) then + print ("Cooltip OnClick Error:", errortext) end - - local OnClickFunctionButtonSecundario = function (self, button) - CoolTip.buttonClicked = true - - CoolTip:SetSelectedAnchor (frame2, self) - - if (CoolTip.FunctionsTableSub [self.mainIndex] and CoolTip.FunctionsTableSub [self.mainIndex] [self.index]) then - local parameterTable = CoolTip.ParametersTableSub [self.mainIndex] [self.index] - CoolTip.FunctionsTableSub [self.mainIndex] [self.index] (_, CoolTip.FixedValue, parameterTable [1], parameterTable [2], parameterTable [3], button) - end - - local botao_p = frame1.Lines [self.mainIndex] - CoolTip:SetSelectedAnchor (frame1, botao_p) + end + end + + local OnClickFunctionSecondaryButton = function (self, button) + CoolTip.buttonClicked = true + + CoolTip:SetSelectedAnchor (frame2, self) + + if (CoolTip.FunctionsTableSub [self.mainIndex] and CoolTip.FunctionsTableSub [self.mainIndex] [self.index]) then + local parameterTable = CoolTip.ParametersTableSub [self.mainIndex] [self.index] + local func = CoolTip.FunctionsTableSub [self.mainIndex] [self.index] + --CoolTip.FunctionsTableSub [self.mainIndex] [self.index] (_, CoolTip.FixedValue, parameterTable [1], parameterTable [2], parameterTable [3], button) + local okay, errortext = pcall (func, nil, CoolTip.FixedValue, parameterTable [1], parameterTable [2], parameterTable [3], button) + if (not okay) then + print ("Cooltip OnClick Error:", errortext) + end + end + + local botao_p = frame1.Lines [self.mainIndex] + CoolTip:SetSelectedAnchor (frame1, botao_p) - if (not CoolTip.OptionsTable.NoLastSelectedBar) then - CoolTip:ShowSelectedTexture (frame1) - end - - CoolTip.SelectedIndexMain = self.mainIndex - CoolTip.SelectedIndexSec [self.mainIndex] = self.index - - end + if (not CoolTip.OptionsTable.NoLastSelectedBar) then + CoolTip:ShowSelectedTexture (frame1) + end + + CoolTip.SelectedIndexMain = self.mainIndex + CoolTip.SelectedIndexSec [self.mainIndex] = self.index + end + + + --> format functions function CoolTip:TextAndIcon (index, frame, menuButton, leftTextTable, rightTextTable, leftIconTable, rightIconTable, isSub) - --> reset width menuButton.leftText:SetWidth (0) menuButton.leftText:SetHeight (0) @@ -1010,7 +1034,7 @@ function DF:CreateCoolTip() end --> register click function - menuButton:SetScript ("OnClick", OnClickFunctionButtonPrincipal) + menuButton:SetScript ("OnClick", OnClickFunctionMainButton) menuButton:Show() end @@ -1044,7 +1068,7 @@ function DF:CreateCoolTip() frame2.w = stringWidth end - menuButton:SetScript ("OnClick", OnClickFunctionButtonSecundario) + menuButton:SetScript ("OnClick", OnClickFunctionSecondaryButton) menuButton:Show() return true diff --git a/Libs/DF/dropdown.lua b/Libs/DF/dropdown.lua index 45c9fb15..56f46232 100644 --- a/Libs/DF/dropdown.lua +++ b/Libs/DF/dropdown.lua @@ -483,7 +483,13 @@ function DetailsFrameworkDropDownOptionClick (button) --> exec function if any if (button.table.onclick) then - button.table.onclick (button:GetParent():GetParent():GetParent().MyObject, button.object.FixedValue, button.table.value) + + local success, errorText = pcall (button.table.onclick, button:GetParent():GetParent():GetParent().MyObject, button.object.FixedValue, button.table.value) + if (not success) then + error ("Details! Framework: dropdown " .. button:GetParent():GetParent():GetParent().MyObject:GetName() .. " error: " .. errorText) + end + + --button.table.onclick (button:GetParent():GetParent():GetParent().MyObject, button.object.FixedValue, button.table.value) end --> set the value of selected option in main object diff --git a/Libs/DF/fw.lua b/Libs/DF/fw.lua index f4914e82..910ab7f6 100644 --- a/Libs/DF/fw.lua +++ b/Libs/DF/fw.lua @@ -1,5 +1,5 @@ -local dversion = 58 +local dversion = 60 local major, minor = "DetailsFramework-1.0", dversion local DF, oldminor = LibStub:NewLibrary (major, minor) diff --git a/Libs/DF/panel.lua b/Libs/DF/panel.lua index bba0b4fa..6f950261 100644 --- a/Libs/DF/panel.lua +++ b/Libs/DF/panel.lua @@ -963,7 +963,7 @@ function DF:NewFillPanel (parent, rows, name, member, w, h, total_lines, fill_ro for index, t in ipairs (rows) do panel.AddRow (panel, t) end - + local refresh_fillbox = function (self) local offset = FauxScrollFrame_GetOffset (self) diff --git a/boot.lua b/boot.lua index 23d855f3..0c9ba6e0 100644 --- a/boot.lua +++ b/boot.lua @@ -3,7 +3,7 @@ _ = nil _detalhes = LibStub("AceAddon-3.0"):NewAddon("_detalhes", "AceTimer-3.0", "AceComm-3.0", "AceSerializer-3.0", "NickTag-1.0") - _detalhes.build_counter = 4913 + _detalhes.build_counter = 4919 _detalhes.userversion = "v7.3.0." .. _detalhes.build_counter _detalhes.realversion = 128 --core version _detalhes.version = _detalhes.userversion .. " (core " .. _detalhes.realversion .. ")" @@ -21,11 +21,17 @@ do local Loc = LibStub ("AceLocale-3.0"):GetLocale ( "Details" ) --[[ -|cFFFFFF00v7.3.2.4836.126 (|cFFFFCC00Nov 21th, 2017|r|cFFFFFF00)|r:\n\n -|cFFFFFF00-|r Removed some tutorial windows popups.\n\n ---]] +|cFFFFFF00v7.3.2.4919.128 (|cFFFFCC00Dez 08th, 2017|r|cFFFFFF00)|r:\n\n +|cFFFFFF00-|r Fixed an issue with the statistics sharing among guild members.\n\n +|cFFFFFF00-|r Fixed an issue with Argus encounter where two segments were created.\n\n +|cFFFFFF00-|r Fixed aura type images on the Create Aura Panel.\n\n +|cFFFFFF00-|r Create Aura Panel can now be closed with Right Click.\n\n +|cFFFFFF00-|r Framework updated to r60, plugins should be more stable now.\n\n - Loc ["STRING_VERSION_LOG"] = "|cFFFFFF00v7.3.0.4830.126 (|cFFFFFF00v7.3.2.4836.126 (|cFFFFCC00Nov 21th, 2017|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Removed some tutorial windows popups.\n\n|cFFFFCC00Oct 21th, 2017|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Fixed opening windows when streamer settings > no alerts is enabled.\n\n|cFFFFFF00v7.3.0.4823.126 (|cFFFFCC00Oct 09th, 2017|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Added new options section: Streamer Settings, focused on adjustments for streamers and youtubers.\n\n|cFFFFFF00-|r Animations now always run at the same speed regardless the framerate.\n\n|cFFFFFF00-|r Click-To-Open menus now close the menu if the menu is already open.\n\n|cFFFFFF00v7.3.0.4723.126 (|cFFFFCC00Set 22th, 2017|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Fixed overall dungeon segments being added to overall data.\n\n|cFFFFFF00v7.3.0.4705.126 (|cFFFFCC00Set 19th, 2017|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Fixed damage taken tooltip for Brewmaster Monk where sometimes the tooltip didn't open.\n\n|cFFFFFF00-|r Fixed overall data on mythic dungeon not adding trash segments even with the option enabled on the options panel.\n\n|cFFFFFF00-|r Fixed the guild selection dropdown reseting everytime the Guild Rank window is opened.\n\n|cFFFFFF00v7.3.0.4677.126 (|cFFFFCC00Set 10th, 2017|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r During mythic dungeons, the trash segments will be merged into a new segment at the end of the boss encounter (instead of merging on the fly while cleaning up).\n\n|cFFFFFF00v7.3.0.4615.125 (|cFFFFCC00Set 09th, 2017|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Setting up the dungeon stuff as opt-in for early adopters while we continue to make improvements on the system.\n\n|cFFFFFF00v7.3.0.4586.125 (|cFFFFCC00Set 08th, 2017|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Formating mythic+ dungeon segments, each segment should count the boss trash + boss fight.\n\n|cFFFFFF00-|r At the end of the mythic+ dungeon, it should create a new segment adding up all segments described above.\n\n|cFFFFFF00v7.3.0.4499.124 (|cFFFFCC00Set 05th, 2017|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Added an option to always show all players when using the standard mode. Option under PvP/PvE bracket on the options panel.\n\n|cFFFFFF00-|r Added a setting to exclude healing done lines from the death log below a certain healing amount. This options is also under PvP/PvE bracket.\n\n|cFFFFFF00-|r Fixed the guild selection on the ranking panel.\n\n|cFFFFFF00v7.3.0.4467.124 (|cFFFFCC00August 29th, 2017|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Damage or Healing record for the encounter should be printed on chat on the boss pull.\nUse /run Details.announce_damagerecord.enabled = false; to disable.\n\n|cFFFFFF00v7.2.5.4437.124 (|cFFFFCC00August 21th, 2017|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Added healing done cap for death log. Use /run Details.deathlog_healingdone_min = 10000\n\n|cFFFFFF00-|r Fixed an issue where the alpha from the fixed bar color was used even when this option was disabled.\n\n|cFFFFFF00v7.2.5.4436.124 (|cFFFFCC00August 17th, 2017|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Attempt to fix the issue where the window doesn't update after entering a raid or reseting data.\n\n|cFFFFFF00v7.2.5.4434.124 (|cFFFFCC00August 10th, 2017|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Added buttons to create an aura at Aura tab on the Player Details window.\n\n|cFFFFFF00-|r Fixes and improvements on the damage rank panel.\n\n|cFFFFFF00-|r Best damage or healing for the player on the current boss encounter is now shown on the spec icon tooltip.\n\n|cFFFFFF00-|r Major revamp on the aura creation panel.\n\n|cFFFFFF00v7.2.5.4369.124 (|cFFFFCC00August 1st, 2017|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Details! can now track debuff applications (stack) and refreshes.\n\n|cFFFFFF00-|r Added new tab on Player Detail Window called 'Auras', you can see your buffs and debuffs from there.\n\n|cFFFFFF00-|r Death log now show debuff applications.\n\n|cFFFFFF00v7.2.5.4275.123 (|cFFFFCC00July 18th, 2017|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Fixed some issues with tooltiops popup when the user press SHIFT.\n\n|cFFFFFF00-|r Now is possible to change the bar durating when selecting Cast Start trigger on Details! Forge.\n\n|cFFFFFF00-|r Kil'Jaeden adds should be consolidated into only one actor instead of having one for each player targeted.\n\n|cFFFFFF00v7.2.5.4236.122 (|cFFFFCC00July 05th, 2017|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r The alert to open the raid ranking after a boss kill, is now shown for 10 seconds (down from 40).\n\n|cFFFFFF00-|r Added a report button on the raid ranking panel and boss are sort alphabetically.\n\n|cFFFFFF00-|r Fixed some issues on the combatlog introduced on the wow patch 7.2.5 where sometimes the source of an event has no name.\n\n|cFFFFFF00-|r Ticket #209, fixed more issues with the comparison panel where are pets involved.\n\n|cFFFFFF00v7.2.5.4201.121 (|cFFFFCC00June 26th, 2017|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Fixed Monk Stagger where it was only shown on the friendly fire and not under the Damage Taken display.\n\n|cFFFFFF00-|r Added Forge and Ranking options on the main menu (orange cogwheel).\n\n|cFFFFFF00v7.2.5.4102.121 (|cFFFFCC00June 22th, 2017|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Details! Forge has updated and now is more usder friendly.\n\n|cFFFFFF00-|r Fixed an issue with player buff uptime where sometimes some buffs wans't showing in the tooltip.\n\n|cFFFFFF00v7.2.5.3968.120 (|cFFFFCC00June 20th, 2017|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r New Death Recap implemented! replaces the default from Blizzard and can be configured at Options > Raid Tools.\n\n|cFFFFFF00-|r New Guild Damage and Heal rank on '/details ranking' panel.\n\n|cFFFFFF00-|r Added a Guild Sync button on the Details! Ranking Panel.\n\n|cFFFFFF00-|r Added Custom display 'Damage on Shields', useful for encounter like Maiden of Vigilance where there's big shields to be removed and you want to know who is doing more damage to it.\n\n|cFFFFFF00-|r Added Heal Absorbed display under Heal bracket.\n\nHeal Absorb are the heal denied by abilities such like DK's Necrotic Strike or raid boss Sisters of the Moon 'Embrace of the Eclipse' ability.\nThe tooltip of this display shows which players got heal denied, which abilities absorbed the heal, which abilities tried to heal but got the heal denied.\n\n|cFFFFFF00-|r Added Alternate Power display under Energy bracket, it shows the total of alternate power gain from each player, useful for encounters such as Demonic Inquisition.\n\n|cFFFFFF00-|r 'First Hit' message after pulling a boss, now also shows who the boss is targeting (almost always is who pulled).\n\n|cFFFFFF00-|r Raid Dps {rdps} and Hps {rhps} can now be used on the Broker Data Feed..\n\n|cFFFFFF00-|r Fixed an issue with Chromie from the scenario 'The Deaths of Chromie' where she wasn't being shown on the meter.\n\n|cFFFFFF00-|r Fixed Paladin 'Light of the Martyr' damage to self.\n\n|cFFFFFF00-|r Ticket #198 'Script Error' Fixed.\n\n|cFFFFFF00v7.2.0.3703.119 (|cFFFFCC00May 29th, 2017|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Fixed an error while killing low level mobs with warrior class.\n\n|cFFFFFF00v7.2.0.3693.118 (|cFFFFCC00May 25th, 2017|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Fury Warrior shouldn't be assigned as Protection any more.\n\n|cFFFFFF00-|r Some parser fixes.\n\n|cFFFFFF00v7.2.0.3673.118 (|cFFFFCC00May 09th, 2017|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Ticket #187: Fixed an issue when comparing hunter pets on the player detail window.\n\n|cFFFFFF00-|r Ticket #189 #186: Fixed a taint issue for some classes when using friendly nameplates on.\n\n|cFFFFFF00v7.2.0.3512.116 (|cFFFFCC00April 27th, 2017|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Havoc Demon Hunter: your fury energy is being shown under Mana Restored (don't ask me why, the combat log is telling us it's mana).\n\n|cFFFFFF00-|r Pets now are shown on damage tooltips.\n\n|cFFFFFF00-|r Pets are now also shown on the comparison panel.\n\n|cFFFFFF00v7.2.0.3474.116 (|cFFFFCC00April 20th, 2017|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Plugin: Raid Check > added some food buffs which wasn't being tracked.\n\n|cFFFFFF00v7.2.0.3467.116 (|cFFFFCC00April 07th, 2017|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Fix for the custom display window where apply and cancel buttons where over the edit window.\n\n|cFFFFFF00-|r Fix for an issue on editing a bookmark.\n\n|cFFFFFF00v7.1.5.3459.116 (|cFFFFCC00Mar 21th, 2017|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Fixed an issue on dynamic overall data where it wasn't showing DPS.\n\n|cFFFFFF00-|r Fixed an issue with Apply, Save and Cancel buttons when editing a custom display.\n\n|cFFFFFF00-|r Removed the Damage and Healing presets for custom displays, now is only possible create custom displays by scripting them.\n\n|cFFFFFF00v7.1.5.3431.116 (|cFFFFCC00Mar 15th, 2017|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Fixed an issue with bar orientation right to left where fixed bar color isn't working.\n\n|cFFFFFF00-|r The nickname field now use FrizQuadrataTT font and shall be compatible with Cyrillic.\n\n|cFFFFFF00v7.1.5.3418.116 (|cFFFFCC00Mar 1st, 2017|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Ticket #167 fix: Light of the Martyr self-damage now does reduce the healing done (following WCL method).\n\n|cFFFFFF00-|r Ticket #169 fix: Damage Prevented is now working for new segments.\n\n|cFFFFFF00-|r Fixed an issue where sometimes BeastMaster's Hati pet wasn't detected correctly.\n\n|cFFFFFF00v7.1.5.3369.116 (|cFFFFCC00Feb 07th, 2017|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Added custom display 'Dynamic Overall Damage' for mythic dungeons.\n\n|cFFFFFF00-|r Fix for Ticket #168: 'Auto Hide While [Not] Inside Instance is broken'.\n\n|cFFFFFF00-|r The bar truncate frame 'DetailsLeftTextAntiTruncate' is now created on Details! load instead on demand.\n\n|cFFFFFF00v7.1.5.3315.116 (|cFFFFCC00Jan 23th, 2017|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Ticket #162: 'no Monochrome font' available, added an experimental slash command: /run _detalhes:UseOutline ('MONOCHROME').\n\n|cFFFFFF00-|r Ticket #158: 'no elapsed time shown on report to chat', added the elapsed time when reporting a segment.\n\n|cFFFFFF00-|r Ticket #164: 'error when browsing segments', an attempt to fix the problem has been made.\n\n|cFFFFFF00v7.1.5.3305.116 (|cFFFFCC00Jan 15th, 2017|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Another fix for mythic dungeons overall data reset (thanks Tharai @ Curseforge).\n\n|cFFFFFF00-|r Fix for spec detection on PvP Arenas (thanks Pas06 @ Curseforge).\n\n|cFFFFFF00v7.1.0.3276.115 (|cFFFFCC00Jan 08th, 2017|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Fixed the overall data not reseting when starting a new mythic+ dungeon.\n\n|cFFFFFF00v7.1.0.3266.115 (|cFFFFCC00Dec 29th, 2016|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Fixed an issue with overall data not updating correctly at the end of the combat.\n\n|cFFFFFF00-|r Added a tutorial line on the window when the user access overall data.\n\n|cFFFFFF00v7.1.0.3236.115 (|cFFFFCC00Dec 19th, 2016|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Integration with BigWigs should be working okay now.\n\n|cFFFFFF00v7.1.0.3231.115 (|cFFFFCC00Dec 15th, 2016|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Disabled the link with BigWigs to avoid the 'RegisterMessage' error on every login.\n\n|cFFFFFF00v7.1.0.3229.115 (|cFFFFCC00Dec 09th, 2016|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r When a window is locked, resize grips shouldn't be enabled messing with bar mouse over.\n\n|cFFFFFF00v7.0.3.3222.115 (|cFFFFCC00November 28th, 2016|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Added Unstable Affliction to common spells with the same name.\n\n|cFFFFFF00-|r Fixed few issues with built-in plugins.\n\n|cFFFFFF00v7.0.3.3202.115 (|cFFFFCC00November 08th, 2016|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Weakauras creator from the Encounter Details plugin and '/details forge' shall work correctly now with Trials of Valor.\n\n|cFFFFFF00-|r Raid history should now be recording your Trials of Valor kills.\n\n|cFFFFFF00-|r Added Trials of Valor raid info, good luck and have fun!.\n\n|cFFFFFF00v7.0.3.3201.115 (|cFFFFCC00November 04th, 2016|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Fix for Paladin holy icon.\n\n|cFFFFFF00-|r Fix for Rogue outlaw icon.\n\n|cFFFFFF00-|r Fixed misc displays with bar sorted by ascending order.\n\n|cFFFFFF00-|r Fix for '/details show' command while the window is on auto hide.\n\n|cFFFFFF00v7.0.3.3114.115 (|cFFFFCC00October 26th, 2016|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Encounter Details (plugin): tooltip tutorial is now clamped to screen and its close button should be visible.\n\n|cFFFFFF00-|r Raid Check (plugin): now also works on dungeons.\n\n|cFFFFFF00-|r Added Potion of the Prolongued Power to the tracker.\n\n|cFFFFFF00v7.1.0.3097.115 (|cFFFFCC00October 25th, 2016|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r renamed 'report history' to 'latest reports'.\n\n|cFFFFFF00-|r attempt to make all Details! users on the party or raid to track rogue's akaari's soul." +--]] +-- + + Loc ["STRING_VERSION_LOG"] = "|cFFFFFF00v7.3.2.4919.128 (|cFFFFCC00Dez 08th, 2017|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Fixed an issue with the statistics sharing among guild members.\n\n|cFFFFFF00-|r Fixed an issue with Argus encounter where two segments were created.\n\n|cFFFFFF00-|r Fixed aura type images on the Create Aura Panel.\n\n|cFFFFFF00-|r Create Aura Panel can now be closed with Right Click.\n\n|cFFFFFF00-|r Framework updated to r60, plugins should be more stable now.\n\n|cFFFFFF00v7.3.0.4830.126 (|cFFFFFF00v7.3.2.4836.126 (|cFFFFCC00Nov 21th, 2017|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Removed some tutorial windows popups.\n\n|cFFFFCC00Oct 21th, 2017|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Fixed opening windows when streamer settings > no alerts is enabled.\n\n|cFFFFFF00v7.3.0.4823.126 (|cFFFFCC00Oct 09th, 2017|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Added new options section: Streamer Settings, focused on adjustments for streamers and youtubers.\n\n|cFFFFFF00-|r Animations now always run at the same speed regardless the framerate.\n\n|cFFFFFF00-|r Click-To-Open menus now close the menu if the menu is already open.\n\n|cFFFFFF00v7.3.0.4723.126 (|cFFFFCC00Set 22th, 2017|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Fixed overall dungeon segments being added to overall data.\n\n|cFFFFFF00v7.3.0.4705.126 (|cFFFFCC00Set 19th, 2017|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Fixed damage taken tooltip for Brewmaster Monk where sometimes the tooltip didn't open.\n\n|cFFFFFF00-|r Fixed overall data on mythic dungeon not adding trash segments even with the option enabled on the options panel.\n\n|cFFFFFF00-|r Fixed the guild selection dropdown reseting everytime the Guild Rank window is opened.\n\n|cFFFFFF00v7.3.0.4677.126 (|cFFFFCC00Set 10th, 2017|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r During mythic dungeons, the trash segments will be merged into a new segment at the end of the boss encounter (instead of merging on the fly while cleaning up).\n\n|cFFFFFF00v7.3.0.4615.125 (|cFFFFCC00Set 09th, 2017|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Setting up the dungeon stuff as opt-in for early adopters while we continue to make improvements on the system.\n\n|cFFFFFF00v7.3.0.4586.125 (|cFFFFCC00Set 08th, 2017|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Formating mythic+ dungeon segments, each segment should count the boss trash + boss fight.\n\n|cFFFFFF00-|r At the end of the mythic+ dungeon, it should create a new segment adding up all segments described above.\n\n|cFFFFFF00v7.3.0.4499.124 (|cFFFFCC00Set 05th, 2017|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Added an option to always show all players when using the standard mode. Option under PvP/PvE bracket on the options panel.\n\n|cFFFFFF00-|r Added a setting to exclude healing done lines from the death log below a certain healing amount. This options is also under PvP/PvE bracket.\n\n|cFFFFFF00-|r Fixed the guild selection on the ranking panel.\n\n|cFFFFFF00v7.3.0.4467.124 (|cFFFFCC00August 29th, 2017|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Damage or Healing record for the encounter should be printed on chat on the boss pull.\nUse /run Details.announce_damagerecord.enabled = false; to disable.\n\n|cFFFFFF00v7.2.5.4437.124 (|cFFFFCC00August 21th, 2017|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Added healing done cap for death log. Use /run Details.deathlog_healingdone_min = 10000\n\n|cFFFFFF00-|r Fixed an issue where the alpha from the fixed bar color was used even when this option was disabled.\n\n|cFFFFFF00v7.2.5.4436.124 (|cFFFFCC00August 17th, 2017|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Attempt to fix the issue where the window doesn't update after entering a raid or reseting data.\n\n|cFFFFFF00v7.2.5.4434.124 (|cFFFFCC00August 10th, 2017|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Added buttons to create an aura at Aura tab on the Player Details window.\n\n|cFFFFFF00-|r Fixes and improvements on the damage rank panel.\n\n|cFFFFFF00-|r Best damage or healing for the player on the current boss encounter is now shown on the spec icon tooltip.\n\n|cFFFFFF00-|r Major revamp on the aura creation panel.\n\n|cFFFFFF00v7.2.5.4369.124 (|cFFFFCC00August 1st, 2017|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Details! can now track debuff applications (stack) and refreshes.\n\n|cFFFFFF00-|r Added new tab on Player Detail Window called 'Auras', you can see your buffs and debuffs from there.\n\n|cFFFFFF00-|r Death log now show debuff applications.\n\n|cFFFFFF00v7.2.5.4275.123 (|cFFFFCC00July 18th, 2017|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Fixed some issues with tooltiops popup when the user press SHIFT.\n\n|cFFFFFF00-|r Now is possible to change the bar durating when selecting Cast Start trigger on Details! Forge.\n\n|cFFFFFF00-|r Kil'Jaeden adds should be consolidated into only one actor instead of having one for each player targeted.\n\n|cFFFFFF00v7.2.5.4236.122 (|cFFFFCC00July 05th, 2017|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r The alert to open the raid ranking after a boss kill, is now shown for 10 seconds (down from 40).\n\n|cFFFFFF00-|r Added a report button on the raid ranking panel and boss are sort alphabetically.\n\n|cFFFFFF00-|r Fixed some issues on the combatlog introduced on the wow patch 7.2.5 where sometimes the source of an event has no name.\n\n|cFFFFFF00-|r Ticket #209, fixed more issues with the comparison panel where are pets involved.\n\n|cFFFFFF00v7.2.5.4201.121 (|cFFFFCC00June 26th, 2017|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Fixed Monk Stagger where it was only shown on the friendly fire and not under the Damage Taken display.\n\n|cFFFFFF00-|r Added Forge and Ranking options on the main menu (orange cogwheel).\n\n|cFFFFFF00v7.2.5.4102.121 (|cFFFFCC00June 22th, 2017|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Details! Forge has updated and now is more usder friendly.\n\n|cFFFFFF00-|r Fixed an issue with player buff uptime where sometimes some buffs wans't showing in the tooltip.\n\n|cFFFFFF00v7.2.5.3968.120 (|cFFFFCC00June 20th, 2017|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r New Death Recap implemented! replaces the default from Blizzard and can be configured at Options > Raid Tools.\n\n|cFFFFFF00-|r New Guild Damage and Heal rank on '/details ranking' panel.\n\n|cFFFFFF00-|r Added a Guild Sync button on the Details! Ranking Panel.\n\n|cFFFFFF00-|r Added Custom display 'Damage on Shields', useful for encounter like Maiden of Vigilance where there's big shields to be removed and you want to know who is doing more damage to it.\n\n|cFFFFFF00-|r Added Heal Absorbed display under Heal bracket.\n\nHeal Absorb are the heal denied by abilities such like DK's Necrotic Strike or raid boss Sisters of the Moon 'Embrace of the Eclipse' ability.\nThe tooltip of this display shows which players got heal denied, which abilities absorbed the heal, which abilities tried to heal but got the heal denied.\n\n|cFFFFFF00-|r Added Alternate Power display under Energy bracket, it shows the total of alternate power gain from each player, useful for encounters such as Demonic Inquisition.\n\n|cFFFFFF00-|r 'First Hit' message after pulling a boss, now also shows who the boss is targeting (almost always is who pulled).\n\n|cFFFFFF00-|r Raid Dps {rdps} and Hps {rhps} can now be used on the Broker Data Feed..\n\n|cFFFFFF00-|r Fixed an issue with Chromie from the scenario 'The Deaths of Chromie' where she wasn't being shown on the meter.\n\n|cFFFFFF00-|r Fixed Paladin 'Light of the Martyr' damage to self.\n\n|cFFFFFF00-|r Ticket #198 'Script Error' Fixed.\n\n|cFFFFFF00v7.2.0.3703.119 (|cFFFFCC00May 29th, 2017|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Fixed an error while killing low level mobs with warrior class.\n\n|cFFFFFF00v7.2.0.3693.118 (|cFFFFCC00May 25th, 2017|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Fury Warrior shouldn't be assigned as Protection any more.\n\n|cFFFFFF00-|r Some parser fixes.\n\n|cFFFFFF00v7.2.0.3673.118 (|cFFFFCC00May 09th, 2017|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Ticket #187: Fixed an issue when comparing hunter pets on the player detail window.\n\n|cFFFFFF00-|r Ticket #189 #186: Fixed a taint issue for some classes when using friendly nameplates on.\n\n|cFFFFFF00v7.2.0.3512.116 (|cFFFFCC00April 27th, 2017|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Havoc Demon Hunter: your fury energy is being shown under Mana Restored (don't ask me why, the combat log is telling us it's mana).\n\n|cFFFFFF00-|r Pets now are shown on damage tooltips.\n\n|cFFFFFF00-|r Pets are now also shown on the comparison panel.\n\n|cFFFFFF00v7.2.0.3474.116 (|cFFFFCC00April 20th, 2017|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Plugin: Raid Check > added some food buffs which wasn't being tracked.\n\n|cFFFFFF00v7.2.0.3467.116 (|cFFFFCC00April 07th, 2017|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Fix for the custom display window where apply and cancel buttons where over the edit window.\n\n|cFFFFFF00-|r Fix for an issue on editing a bookmark.\n\n|cFFFFFF00v7.1.5.3459.116 (|cFFFFCC00Mar 21th, 2017|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Fixed an issue on dynamic overall data where it wasn't showing DPS.\n\n|cFFFFFF00-|r Fixed an issue with Apply, Save and Cancel buttons when editing a custom display.\n\n|cFFFFFF00-|r Removed the Damage and Healing presets for custom displays, now is only possible create custom displays by scripting them.\n\n|cFFFFFF00v7.1.5.3431.116 (|cFFFFCC00Mar 15th, 2017|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Fixed an issue with bar orientation right to left where fixed bar color isn't working.\n\n|cFFFFFF00-|r The nickname field now use FrizQuadrataTT font and shall be compatible with Cyrillic.\n\n|cFFFFFF00v7.1.5.3418.116 (|cFFFFCC00Mar 1st, 2017|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Ticket #167 fix: Light of the Martyr self-damage now does reduce the healing done (following WCL method).\n\n|cFFFFFF00-|r Ticket #169 fix: Damage Prevented is now working for new segments.\n\n|cFFFFFF00-|r Fixed an issue where sometimes BeastMaster's Hati pet wasn't detected correctly.\n\n|cFFFFFF00v7.1.5.3369.116 (|cFFFFCC00Feb 07th, 2017|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Added custom display 'Dynamic Overall Damage' for mythic dungeons.\n\n|cFFFFFF00-|r Fix for Ticket #168: 'Auto Hide While [Not] Inside Instance is broken'.\n\n|cFFFFFF00-|r The bar truncate frame 'DetailsLeftTextAntiTruncate' is now created on Details! load instead on demand.\n\n|cFFFFFF00v7.1.5.3315.116 (|cFFFFCC00Jan 23th, 2017|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Ticket #162: 'no Monochrome font' available, added an experimental slash command: /run _detalhes:UseOutline ('MONOCHROME').\n\n|cFFFFFF00-|r Ticket #158: 'no elapsed time shown on report to chat', added the elapsed time when reporting a segment.\n\n|cFFFFFF00-|r Ticket #164: 'error when browsing segments', an attempt to fix the problem has been made.\n\n|cFFFFFF00v7.1.5.3305.116 (|cFFFFCC00Jan 15th, 2017|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Another fix for mythic dungeons overall data reset (thanks Tharai @ Curseforge).\n\n|cFFFFFF00-|r Fix for spec detection on PvP Arenas (thanks Pas06 @ Curseforge).\n\n|cFFFFFF00v7.1.0.3276.115 (|cFFFFCC00Jan 08th, 2017|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Fixed the overall data not reseting when starting a new mythic+ dungeon.\n\n|cFFFFFF00v7.1.0.3266.115 (|cFFFFCC00Dec 29th, 2016|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Fixed an issue with overall data not updating correctly at the end of the combat.\n\n|cFFFFFF00-|r Added a tutorial line on the window when the user access overall data.\n\n|cFFFFFF00v7.1.0.3236.115 (|cFFFFCC00Dec 19th, 2016|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Integration with BigWigs should be working okay now.\n\n|cFFFFFF00v7.1.0.3231.115 (|cFFFFCC00Dec 15th, 2016|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Disabled the link with BigWigs to avoid the 'RegisterMessage' error on every login.\n\n|cFFFFFF00v7.1.0.3229.115 (|cFFFFCC00Dec 09th, 2016|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r When a window is locked, resize grips shouldn't be enabled messing with bar mouse over.\n\n|cFFFFFF00v7.0.3.3222.115 (|cFFFFCC00November 28th, 2016|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Added Unstable Affliction to common spells with the same name.\n\n|cFFFFFF00-|r Fixed few issues with built-in plugins.\n\n|cFFFFFF00v7.0.3.3202.115 (|cFFFFCC00November 08th, 2016|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Weakauras creator from the Encounter Details plugin and '/details forge' shall work correctly now with Trials of Valor.\n\n|cFFFFFF00-|r Raid history should now be recording your Trials of Valor kills.\n\n|cFFFFFF00-|r Added Trials of Valor raid info, good luck and have fun!.\n\n|cFFFFFF00v7.0.3.3201.115 (|cFFFFCC00November 04th, 2016|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Fix for Paladin holy icon.\n\n|cFFFFFF00-|r Fix for Rogue outlaw icon.\n\n|cFFFFFF00-|r Fixed misc displays with bar sorted by ascending order.\n\n|cFFFFFF00-|r Fix for '/details show' command while the window is on auto hide.\n\n|cFFFFFF00v7.0.3.3114.115 (|cFFFFCC00October 26th, 2016|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r Encounter Details (plugin): tooltip tutorial is now clamped to screen and its close button should be visible.\n\n|cFFFFFF00-|r Raid Check (plugin): now also works on dungeons.\n\n|cFFFFFF00-|r Added Potion of the Prolongued Power to the tracker.\n\n|cFFFFFF00v7.1.0.3097.115 (|cFFFFCC00October 25th, 2016|r|cFFFFFF00)|r:\n\n|cFFFFFF00-|r renamed 'report history' to 'latest reports'.\n\n|cFFFFFF00-|r attempt to make all Details! users on the party or raid to track rogue's akaari's soul." Loc ["STRING_DETAILS1"] = "|cffffaeaeDetails!:|r " @@ -39,8 +45,6 @@ do _detalhes.opened_windows = 0 _detalhes.last_combat_time = 0 - _detalhes.current_raid_tier_mapid = 1676 - --> containers --> armazenas as funções do parser - All parse functions _detalhes.parser = {} @@ -49,7 +53,7 @@ do _detalhes.pvp_parser_frame = CreateFrame ("Frame") _detalhes.parser_frame:Hide() --> quais raides devem ser guardadas no histórico - _detalhes.InstancesToStoreData = { + _detalhes.InstancesToStoreData = { --> mapIDs [1712] = true, --Antorus, the Burning Throne --[1676] = true, --Tomb of Sargeras --[1648] = true, --Trial of Valor diff --git a/core/gears.lua b/core/gears.lua index 271c0d09..00694f02 100644 --- a/core/gears.lua +++ b/core/gears.lua @@ -958,7 +958,8 @@ local encounter_is_current_tier = function (encounterID) if (OnlyFromCurrentRaidTier) then local mapID = _detalhes:GetInstanceIdFromEncounterId (encounterID) if (mapID) then - if (_detalhes.current_raid_tier_mapid ~= mapID) then + --> if isn'y the mapID in the table to save data + if (not _detalhes.InstancesToStoreData [mapID]) then return false end end diff --git a/core/plugins.lua b/core/plugins.lua index 65d4bb62..1d6f067d 100644 --- a/core/plugins.lua +++ b/core/plugins.lua @@ -454,13 +454,24 @@ LibWindow.SavePosition (f) --> menu background - local menuBackground = CreateFrame ("frame", nil, f) + local menuBackground = CreateFrame ("frame", "$parentMenuFrame", f) _detalhes:FormatBackground (menuBackground) --> point menuBackground:SetPoint ("topright", f, "topleft", -2, 0) menuBackground:SetPoint ("bottomright", f, "bottomleft", -2, 0) menuBackground:SetWidth (f.MenuButtonWidth + 6) + + local bigdog = _detalhes.gump:NewImage (menuBackground, [[Interface\MainMenuBar\UI-MainMenuBar-EndCap-Human]], 180*0.7, 200*0.7, "overlay", {0, 1, 0, 1}, "backgroundBigDog", "$parentBackgroundBigDog") + bigdog:SetPoint ("bottomleft", custom_window, "bottomleft", 0, 1) + bigdog:SetAlpha (0.3) + + local bigdogRow = menuBackground:CreateTexture (nil, "artwork") + bigdogRow:SetPoint ("bottomleft", menuBackground, "bottomleft", 1, 1) + bigdogRow:SetPoint ("bottomright", menuBackground, "bottomright", -1, 1) + bigdogRow:SetHeight (20) + bigdogRow:SetColorTexture (.5, .5, .5, .1) + bigdogRow:Hide() --> plugins menu title bar local titlebar_plugins = CreateFrame ("frame", nil, menuBackground) diff --git a/core/windows.lua b/core/windows.lua index 5a34526b..676b976c 100644 --- a/core/windows.lua +++ b/core/windows.lua @@ -1192,7 +1192,7 @@ end DetailsRaidHistoryWindow.Initialized = true - + local f = DetailsRaidHistoryWindow or CreateFrame ("frame", "DetailsRaidHistoryWindow", UIParent) --, "ButtonFrameTemplate" f:SetPoint ("center", UIParent, "center") f:SetFrameStrata ("HIGH") @@ -1228,9 +1228,9 @@ titlebar:SetBackdropBorderColor (0, 0, 0, 1) --> menu title - local titleLabel = _detalhes.gump:NewLabel (titlebar, titlebar, nil, "titulo", "Statistics", "GameFontHighlightLeft", 12, {227/255, 186/255, 4/255}) + local titleLabel = _detalhes.gump:NewLabel (titlebar, titlebar, nil, "titulo", "Details! " .. Loc ["STRING_STATISTICS"], "GameFontNormal", 12) --{227/255, 186/255, 4/255} titleLabel:SetPoint ("center", titlebar , "center") - titleLabel:SetPoint ("top", titlebar , "top", 0, -5) + titleLabel:SetPoint ("top", titlebar , "top", 0, -4) --> close button f.Close = CreateFrame ("button", "$parentCloseButton", f) @@ -1254,7 +1254,7 @@ insets = {left = 0, right = 0, top = 0, bottom = 0}, edgeFile = [[Interface\Buttons\WHITE8X8]], edgeSize=1}) tutorialFrame:SetBackdropColor (0, 0, 0, 1) - tutorialFrame.Title = _detalhes.gump:CreateLabel (tutorialFrame, Loc ["STRING_MODE_OPENGUILDDAMAGERANK"], 12, "orange") + tutorialFrame.Title = _detalhes.gump:CreateLabel (tutorialFrame, "Statistics" , 12, "orange") --curse localization isn't adding new strings (and I deleted the old one) tutorialFrame.Title:SetPoint ("top", tutorialFrame, "top", 0, -5) tutorialFrame.Desc = _detalhes.gump:CreateLabel (tutorialFrame, Loc ["STRING_GUILDDAMAGERANK_TUTORIAL_DESC"], 12) diff --git a/functions/link.lua b/functions/link.lua index 674f6eda..d6efb75c 100644 --- a/functions/link.lua +++ b/functions/link.lua @@ -1731,12 +1731,25 @@ local f = CreateFrame ("frame", "DetailsAuraPanel", UIParent) f:SetSize (800, 600) f:SetPoint ("center", UIParent, "center", 0, 150) - f:SetFrameStrata ("HIGH") + f:SetFrameStrata ("DIALOG") f:EnableMouse (true) f:SetMovable (true) f:SetToplevel (true) - f:SetBackdrop ({edgeFile = [[Interface\Buttons\WHITE8X8]], edgeSize = 1, bgFile = [[Interface\Tooltips\UI-Tooltip-Background]], tileSize = 64, tile = true}) - f:SetBackdropColor (24/255, 24/255, 24/255, .8) + + --f:SetBackdrop ({edgeFile = [[Interface\Buttons\WHITE8X8]], edgeSize = 1, bgFile = [[Interface\Tooltips\UI-Tooltip-Background]], tileSize = 64, tile = true}) + --f:SetBackdropColor (24/255, 24/255, 24/255, .8) + --f:SetBackdropBorderColor (0, 0, 0, 1) + + f.bg1 = f:CreateTexture (nil, "background") + f.bg1:SetTexture ([[Interface\AddOns\Details\images\background]], true) + f.bg1:SetAlpha (0.8) + f.bg1:SetVertexColor (0.27, 0.27, 0.27) + f.bg1:SetVertTile (true) + f.bg1:SetHorizTile (true) + f.bg1:SetSize (790, 454) + f.bg1:SetAllPoints() + f:SetBackdrop ({edgeFile = [[Interface\Buttons\WHITE8X8]], edgeSize = 1, bgFile = [[Interface\AddOns\Details\images\background]], tileSize = 64, tile = true}) + f:SetBackdropColor (.5, .5, .5, .7) f:SetBackdropBorderColor (0, 0, 0, 1) --register to libwindow @@ -1746,6 +1759,12 @@ LibWindow.MakeDraggable (f) LibWindow.SavePosition (f) + f:SetScript ("OnMouseDown", function (self, button) + if (button == "RightButton") then + f:Hide() + end + end) + --titlebar f.TitleBar = CreateFrame ("frame", "$parentTitleBar", f) f.TitleBar:SetPoint ("topleft", f, "topleft", 2, -3) @@ -1771,7 +1790,6 @@ --title f.Title = f.TitleBar:CreateFontString ("$parentTitle", "overlay", "GameFontNormal") f.Title:SetPoint ("center", f.TitleBar, "center") - f.Title:SetTextColor (.8, .8, .8, 1) f.Title:SetText ("Details! Create Aura") local fw = _detalhes:GetFramework() @@ -1808,13 +1826,13 @@ aura_type:SetPoint ("left", aura_type_label, "right", 2, 0) aura_type:Hide() - local Icon_IconAuraType = fw:CreateImage (f, [[Interface\AddOns\Details\images\icons2]], 32, 32, "overlay", {119/512, 151/512, 176/512, 208/512}, nil, nil) + local Icon_IconAuraType = fw:CreateImage (f, [[Interface\AddOns\Details\images\icons2]], 32, 32, "overlay", {200/512, 232/512, 336/512, 368/512}, nil, nil) Icon_IconAuraType:SetPoint ("topleft", aura_type_label, "bottomleft", 10, -16) - local Icon_StatusbarAuraType = fw:CreateImage (f, [[Interface\AddOns\Details\images\icons2]], 92, 12, "overlay", {154/512, 246/512, 176/512, 188/512}, nil, nil) + local Icon_StatusbarAuraType = fw:CreateImage (f, [[Interface\AddOns\Details\images\icons2]], 92, 12, "overlay", {235/512, 327/512, 336/512, 348/512}, nil, nil) Icon_StatusbarAuraType:SetPoint ("topleft", aura_type_label, "bottomleft", 60, -26) - - local Icon_TextOnlyAuraType = fw:CreateImage (f, [[Interface\AddOns\Details\images\icons2]], 57, 8, "overlay", {169/512, 225/512, 200/512, 207/512}, nil, nil) + + local Icon_TextOnlyAuraType = fw:CreateImage (f, [[Interface\AddOns\Details\images\icons2]], 57, 8, "overlay", {250/512, 306/512, 360/512, 367/512}, nil, nil) Icon_TextOnlyAuraType:SetPoint ("topleft", aura_type_label, "bottomleft", 170, -28) local AuraTypeSelectedColor = {1, 1, 1, 0.3} @@ -2830,7 +2848,7 @@ --> forge function _detalhes:InitializeForge() - local DetailsForgePanel = _detalhes.gump:CreateSimplePanel (UIParent, 960, 600, "Aura Forge", "DetailsForgePanel") + local DetailsForgePanel = _detalhes.gump:CreateSimplePanel (UIParent, 960, 600, "Details! Aura Forge", "DetailsForgePanel") DetailsForgePanel.Frame = DetailsForgePanel DetailsForgePanel.__name = "Aura Forge" DetailsForgePanel.real_name = "DETAILS_FORGE" @@ -2864,7 +2882,7 @@ local have_plugins_enabled for id, instanceTable in pairs (_detalhes.EncounterInformation) do - if (id == _detalhes.current_raid_tier_mapid) then + if (_detalhes.InstancesToStoreData [id]) then have_plugins_enabled = true break end @@ -2930,7 +2948,7 @@ f.bg1:SetSize (790, 454) f.bg1:SetAllPoints() - f:SetBackdropColor (unpack (_detalhes.default_backdropcolor)) + --f:SetBackdropColor (unpack (_detalhes.default_backdropcolor)) f:SetBackdrop ({edgeFile = [[Interface\Buttons\WHITE8X8]], edgeSize = 1, bgFile = [[Interface\AddOns\Details\images\background]], tileSize = 64, tile = true}) f:SetBackdropColor (.5, .5, .5, .5) diff --git a/gumps/janela_options.lua b/gumps/janela_options.lua index 740d2fa6..6b0f48de 100644 --- a/gumps/janela_options.lua +++ b/gumps/janela_options.lua @@ -238,7 +238,7 @@ function _detalhes:OpenOptionsWindow (instance, no_reopen, section) window_icon:SetTexCoord (0, 0.054199, 0.591308, 0.646972) --605 663 --> title - local title = g:NewLabel (window, nil, "$parentTitleLabel", "title", Loc ["STRING_OPTIONS_WINDOW"], "GameFontHighlightLeft", 12, {227/255, 186/255, 4/255}) + local title = g:NewLabel (window, nil, "$parentTitleLabel", "title", "Details! " .. Loc ["STRING_OPTIONS_WINDOW"], "GameFontHighlightLeft", 12, {227/255, 186/255, 4/255}) title:SetPoint ("center", window, "center") title:SetPoint ("top", window, "top", 0, -28) diff --git a/gumps/janela_principal.lua b/gumps/janela_principal.lua index 048ad36d..51dbbf6f 100644 --- a/gumps/janela_principal.lua +++ b/gumps/janela_principal.lua @@ -5826,7 +5826,8 @@ local build_mode_list = function (self, elapsed) CoolTip:AddMenu (1, _detalhes.OpenForge) CoolTip:AddIcon ([[Interface\MINIMAP\Vehicle-HammerGold-3]], 1, 1, 16, 16, 0, 1, 0, 1) - CoolTip:AddLine (Loc ["STRING_MODE_OPENGUILDDAMAGERANK"]) + --> statistics + CoolTip:AddLine ("Statistics") --curse localization isn't adding new strings (and I deleted the old one) CoolTip:AddMenu (1, _detalhes.OpenRaidHistoryWindow) CoolTip:AddIcon ([[Interface\PvPRankBadges\PvPRank08]], 1, 1, 16, 16, 0, 1, 0, 1) diff --git a/images/icons2.blp b/images/icons2.blp index a6f1feb7..3e22eab0 100644 Binary files a/images/icons2.blp and b/images/icons2.blp differ