You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

511 lines
21 KiB

4 years ago
do
local addonId, edTable = ...
local Details = _G._detalhes
local AceLocale = LibStub("AceLocale-3.0")
local Loc = AceLocale:GetLocale("Details_EncounterDetails")
4 years ago
local Graphics = LibStub:GetLibrary("LibGraph-2.0")
local ipairs = ipairs
local _GetSpellInfo = Details.getspellinfo
local unpack = unpack
local detailsFramework = DetailsFramework
local CreateFrame = CreateFrame
local GameCooltip = GameCooltip
4 years ago
local _
Details.EncounterDetailsTempWindow = function(encounterDetails)
--options panel
encounterDetails.SetBarBackdrop_OnEnter = function(self)
self:SetBackdropColor(unpack(edTable.defaultBackgroundColor_OnEnter))
4 years ago
end
encounterDetails.SetBarBackdrop_OnLeave = function(self)
self:SetBackdropColor(unpack(edTable.defaultBackgroundColor))
4 years ago
end
function encounterDetails:AutoShowIcon()
local bFoundBoss = false
for _, combatObject in ipairs(encounterDetails:GetCombatSegments()) do
---@cast combatObject combat
if (combatObject.is_boss) then
encounterDetails:ShowIcon()
bFoundBoss = true
4 years ago
end
end
if (encounterDetails:GetCurrentCombat().is_boss) then
encounterDetails:ShowIcon()
bFoundBoss = true
4 years ago
end
if (not bFoundBoss) then
encounterDetails:HideIcon()
4 years ago
end
end
local buildOptionsPanel = function()
local optionsFrame = encounterDetails:CreatePluginOptionsFrame("EncounterDetailsOptionsWindow", "Encounter Breakdown Options")
-- 1 = only when inside a raid map
-- 2 = only when in raid group
-- 3 = only after a boss encounter
-- 4 = always show
-- 5 = automatic show when have at least 1 encounter with boss
local onShowIconCallback = function(_, _, value)
encounterDetails.db.show_icon = value
if (value == 1) then
if (encounterDetails:GetZoneType() == "raid") then
encounterDetails:ShowIcon()
else
encounterDetails:HideIcon()
end
elseif (value == 2) then
if (encounterDetails:InGroup()) then
encounterDetails:ShowIcon()
else
encounterDetails:HideIcon()
end
elseif (value == 3) then
if (encounterDetails:GetCurrentCombat().is_boss) then
encounterDetails:ShowIcon()
else
encounterDetails:HideIcon()
4 years ago
end
elseif (value == 4) then
encounterDetails:ShowIcon()
elseif (value == 5) then
encounterDetails:AutoShowIcon()
4 years ago
end
end
local on_show_menu = {
{value = 1, label = "Inside Raid", onclick = onShowIconCallback, desc = "Only show the icon while inside a raid."},
{value = 2, label = "In Group", onclick = onShowIconCallback, desc = "Only show the icon while in group."},
{value = 3, label = "After Encounter", onclick = onShowIconCallback, desc = "Show the icon after a raid boss encounter."},
{value = 4, label = "Always", onclick = onShowIconCallback, desc = "Always show the icon."},
{value = 5, label = "Auto", onclick = onShowIconCallback, desc = "The plugin decides when the icon needs to be shown."},
}
--/dump DETAILS_PLUGIN_ENCOUNTER_DETAILS.db.show_icon
local menu = {
{
type = "select",
get = function() return encounterDetails.db.show_icon end,
values = function() return on_show_menu end,
desc = "When the icon is shown in the Details! tooltip.",
name = "Show Icon"
},
{
type = "toggle",
get = function() return encounterDetails.db.hide_on_combat end,
set = function(self, fixedparam, value) encounterDetails.db.hide_on_combat = value end,
desc = "Encounter Breakdown window automatically close when you enter in combat.",
name = "Hide on Combat"
},
{
type = "range",
get = function() return encounterDetails.db.max_emote_segments end,
set = function(self, fixedparam, value) encounterDetails.db.max_emote_segments = value end,
min = 1,
max = 10,
step = 1,
desc = "Keep how many segments emotes.",
name = "Emote Segments Amount",
usedecimals = true,
},
{
type = "range",
get = function() return encounterDetails.db.window_scale end,
set = function(self, fixedparam, value) encounterDetails.db.window_scale = value; encounterDetails:RefreshScale() end,
min = 0.65,
max = 1.50,
step = 0.1,
desc = "Set the window size",
name = "Window Scale",
usedecimals = true,
},
}
detailsFramework:BuildMenu(optionsFrame, menu, 15, -75, 260)
4 years ago
end
encounterDetails.OpenOptionsPanel = function()
if (not EncounterDetailsOptionsWindow) then
buildOptionsPanel()
4 years ago
end
EncounterDetailsOptionsWindow:Show()
4 years ago
end
function encounterDetails:RefreshScale()
local scale = encounterDetails.db.window_scale
if (encounterDetails.Frame) then
encounterDetails.Frame:SetScale(scale)
4 years ago
end
end
4 years ago
-- ~start ~main ~frame ~baseframe ~bossframe
local edFrame = encounterDetails.Frame
detailsFramework:ApplyStandardBackdrop(edFrame)
edFrame:SetFrameStrata("high")
edFrame:SetToplevel(true)
edFrame:SetWidth(898)
edFrame:SetHeight(504)
edFrame:EnableMouse(true)
edFrame:SetResizable(false)
edFrame:SetMovable(true)
edFrame:SetPoint("center", UIParent, "center", 0, 0)
4 years ago
--background
edFrame.bosFrameBackgroundTexture = edFrame:CreateTexture(nil, "background")
edFrame.bosFrameBackgroundTexture:SetTexture([[Interface\AddOns\Details\images\background]], true)
edFrame.bosFrameBackgroundTexture:SetAlpha(0.7)
edFrame.bosFrameBackgroundTexture:SetVertexColor(0.27, 0.27, 0.27)
edFrame.bosFrameBackgroundTexture:SetVertTile(true)
edFrame.bosFrameBackgroundTexture:SetHorizTile(true)
edFrame.bosFrameBackgroundTexture:SetSize(790, 454)
edFrame.bosFrameBackgroundTexture:SetAllPoints()
4 years ago
--title bar
local titleBar = detailsFramework:CreateTitleBar(edFrame, Loc ["STRING_WINDOW_TITLE"])
titleBar.CloseButton:Hide()
4 years ago
--close button
titleBar.CloseButton = detailsFramework:CreateCloseButton(titleBar)
titleBar.CloseButton:SetScript("OnClick", function(self)
encounterDetails:CloseWindow()
end)
titleBar.CloseButton:SetPoint("right", titleBar, "right", -2, 0)
--header background
local headerFrame = CreateFrame("frame", "EncounterDetailsHeaderFrame", edFrame, "BackdropTemplate")
headerFrame:EnableMouse(false)
headerFrame:SetPoint("topleft", titleBar, "bottomleft", -1, -1)
headerFrame:SetPoint("topright", titleBar, "bottomright", 1, -1)
headerFrame:SetBackdrop({bgFile = [[Interface\AddOns\Details\images\background]], tileSize = 64, tile = true})
headerFrame:SetBackdropColor(.7, .7, .7, .4)
headerFrame:SetHeight(48)
edFrame.raidBackgroundTexture = edFrame:CreateTexture(nil, "border")
edFrame.raidBackgroundTexture:SetPoint("topleft", edFrame, "topleft", 0, -74)
edFrame.raidBackgroundTexture:SetPoint("bottomright", edFrame, "bottomright", 0, 0)
edFrame.raidBackgroundTexture:SetDrawLayer("border", 2)
edFrame.raidBackgroundTexture:SetAlpha(0.1)
local gradientBelow = detailsFramework:CreateTexture(headerFrame,
{gradient = "vertical", fromColor = {0, 0, 0, 0.5}, toColor = "transparent"}, 1, 48, "artwork", {0, 1, 0, 1})
gradientBelow:SetPoint("bottoms", 1, 1)
--boss icon in the top left corner
edFrame.bossIcon = headerFrame:CreateTexture(nil, "overlay")
edFrame.bossIcon:SetPoint("topleft", edFrame, "topleft", 9, -24)
edFrame.bossIcon:SetWidth(46)
edFrame.bossIcon:SetHeight(46)
--raid name
detailsFramework:NewLabel(headerFrame, headerFrame, nil, "raidNameLabel", "Unknown Raid", "GameFontHighlightSmall")
edFrame.raidNameLabel = headerFrame.raidNameLabel
edFrame.raidNameLabel:SetPoint("topleft", edFrame, "topleft", 60, -34)
--encounter name
detailsFramework:NewLabel(headerFrame, headerFrame, nil, "bossNameLabel", "Unknown Encounter", "QuestFont_Large")
edFrame.bossNameLabel = headerFrame.bossNameLabel
edFrame.bossNameLabel:SetPoint("topleft", edFrame.raidNameLabel, "bottomleft", 0, -2)
edFrame.bossIcon:Hide()
edFrame.raidNameLabel.show = false
edFrame.bossNameLabel.show = false
edFrame:SetScript("OnMouseDown", function(self, button)
if (button == "LeftButton") then
self:StartMoving()
self.isMoving = true
elseif (button == "RightButton" and not self.isMoving) then
encounterDetails:CloseWindow()
4 years ago
end
end)
4 years ago
edFrame:SetScript("OnMouseUp", function(self)
if (self.isMoving) then
self:StopMovingOrSizing()
self.isMoving = false
4 years ago
end
end)
4 years ago
edFrame.ShowType = "main"
--> revisar
edFrame.Reset = function()
edFrame.switch(nil, nil, "main")
if (encounterDetails.chartPanel) then
encounterDetails.chartPanel:ResetData()
4 years ago
end
edFrame.linhas = nil
4 years ago
end
local hide_Graph = function()
if (encounterDetails.chartPanel) then
encounterDetails.chartPanel:Hide()
4 years ago
end
end
local hide_Emote = function()
for _, widget in pairs(edFrame.EmoteWidgets) do
4 years ago
widget:Hide()
end
end
local hide_Summary = function()
for _, frame in ipairs(edFrame.encounterSummaryWidgets) do
4 years ago
frame:Hide()
frame:SetScript("OnShow", function()
--print(debugstack())
end)
4 years ago
end
end
local resetSelectedButtonTemplate = function()
edFrame.buttonSwitchNormal:SetTemplate(detailsFramework:GetTemplate("button", "DETAILS_PLUGIN_BUTTON_TEMPLATE"))
edFrame.buttonSwitchPhases:SetTemplate(detailsFramework:GetTemplate("button", "DETAILS_PLUGIN_BUTTON_TEMPLATE"))
edFrame.buttonSwitchGraphic:SetTemplate(detailsFramework:GetTemplate("button", "DETAILS_PLUGIN_BUTTON_TEMPLATE"))
edFrame.buttonSwitchBossEmotes:SetTemplate(detailsFramework:GetTemplate("button", "DETAILS_PLUGIN_BUTTON_TEMPLATE"))
4 years ago
end
edFrame.switch = function(buttonObject, _, tabName)
local tabSelected
if (type(buttonObject) == "string") then
tabSelected = buttonObject
elseif (type(tabName) == "string") then
tabSelected = tabName
4 years ago
end
if (not edFrame:IsShown()) then
Details:OpenPlugin("DETAILS_PLUGIN_ENCOUNTER_DETAILS")
4 years ago
end
EncounterDetailsPhaseFrame:Hide()
resetSelectedButtonTemplate()
4 years ago
if (tabSelected == "main") then
edFrame.raidBackgroundTexture:Show()
4 years ago
for _, frame in ipairs(edFrame.encounterSummaryWidgets) do
frame:Show()
end
4 years ago
hide_Graph()
hide_Emote()
4 years ago
edFrame.ShowType = "main"
edFrame.segmentsDropdown:Enable()
edFrame.buttonSwitchNormal:SetTemplate(detailsFramework:GetTemplate("button", "DETAILS_PLUGIN_BUTTONSELECTED_TEMPLATE"))
encounterDetails.db.last_section_selected = edFrame.ShowType
4 years ago
if (encounterDetails.LastSegmentShown) then
encounterDetails.RefreshSummaryPage(encounterDetails.LastSegmentShown)
else
encounterDetails.RefreshSummaryPage(Details:GetCurrentCombat())
4 years ago
end
elseif (tabSelected == "emotes") then
Details:SetTutorialCVar("ENCOUNTER_BREAKDOWN_EMOTES", true)
if (encounterDetails.Frame.buttonSwitchBossEmotes.AntsFrame) then
encounterDetails.Frame.buttonSwitchBossEmotes.AntsFrame:Hide()
end
4 years ago
--hide boss frames
for _, frame in ipairs(edFrame.encounterSummaryWidgets) do
frame:Hide()
end
4 years ago
edFrame.raidBackgroundTexture:Show()
--hide graph
if (encounterDetails.chartPanel) then
encounterDetails.chartPanel:Hide()
4 years ago
end
--show emote frames
for _, widget in pairs(edFrame.EmoteWidgets) do
widget:Show()
4 years ago
end
edFrame.ShowType = "emotes"
encounterDetails.EmoteScrollFrame:Update()
edFrame.EmotesSegment:Refresh()
edFrame.EmotesSegment:Select(encounterDetails.emoteSegmentIndex)
edFrame.segmentsDropdown:Disable()
edFrame.buttonSwitchBossEmotes:SetTemplate(detailsFramework:GetTemplate("button", "DETAILS_PLUGIN_BUTTONSELECTED_TEMPLATE"))
encounterDetails.db.last_section_selected = edFrame.ShowType
4 years ago
elseif (tabSelected == "phases") then
Details:SetTutorialCVar("ENCOUNTER_BREAKDOWN_PHASES", true)
if (encounterDetails.Frame.buttonSwitchPhases.AntsFrame) then
encounterDetails.Frame.buttonSwitchPhases.AntsFrame:Hide()
4 years ago
end
hide_Summary()
hide_Graph()
hide_Emote()
4 years ago
edFrame.ShowType = "phases"
4 years ago
EncounterDetailsPhaseFrame:Show()
4 years ago
edFrame.buttonSwitchPhases:SetTemplate(detailsFramework:GetTemplate("button", "DETAILS_PLUGIN_BUTTONSELECTED_TEMPLATE"))
4 years ago
encounterDetails.db.last_section_selected = edFrame.ShowType
4 years ago
elseif (tabSelected == "graph") then
Details:SetTutorialCVar("ENCOUNTER_BREAKDOWN_CHART", true)
if (encounterDetails.Frame.buttonSwitchGraphic.AntsFrame) then
encounterDetails.Frame.buttonSwitchGraphic.AntsFrame:Hide()
4 years ago
end
encounterDetails:ShowChartFrame()
4 years ago
if (not encounterDetails.chartPanel) then
return
4 years ago
end
edFrame.raidBackgroundTexture:Hide()
for _, frame in ipairs(edFrame.encounterSummaryWidgets) do
frame:Hide()
end
encounterDetails.chartPanel:Show()
edFrame.ShowType = "graph"
--hide emote frames
for _, widget in pairs(edFrame.EmoteWidgets) do
widget:Hide()
end
edFrame.segmentsDropdown:Enable()
edFrame.buttonSwitchGraphic:SetTemplate(detailsFramework:GetTemplate("button", "DETAILS_PLUGIN_BUTTONSELECTED_TEMPLATE"))
encounterDetails.db.last_section_selected = edFrame.ShowType
end
end
-- ~button ~menu
local BUTTON_WIDTH = 120
local BUTTON_HEIGHT = 20
local HEADER_MENUBUTTONS_SPACEMENT = 4
local HEADER_MENUBUTTONS_X = 290
local HEADER_MENUBUTTONS_Y = -38
--create selection tab buttons
do
--summary
edFrame.buttonSwitchNormal = detailsFramework:CreateButton(edFrame, edFrame.switch, BUTTON_WIDTH, BUTTON_HEIGHT, "Summary", "main")
edFrame.buttonSwitchNormal:SetIcon("Interface\\AddOns\\Details_EncounterDetails\\images\\boss_frame_buttons", 18, 18, "overlay", {0, 32/256, 0, 0.505625})
edFrame.buttonSwitchNormal:SetTemplate(detailsFramework:GetTemplate("button", "DETAILS_PLUGIN_BUTTONSELECTED_TEMPLATE"))
edFrame.buttonSwitchNormal:SetWidth(BUTTON_WIDTH)
--summary for the breakdown window
edFrame.buttonSwitchNormalBreakdown = detailsFramework:CreateButton(edFrame, edFrame.switch, BUTTON_WIDTH, BUTTON_HEIGHT, "Summary", "main")
edFrame.buttonSwitchNormalBreakdown:SetIcon("Interface\\AddOns\\Details_EncounterDetails\\images\\boss_frame_buttons", 18, 18, "overlay", {0, 32/256, 0, 0.505625})
edFrame.buttonSwitchNormalBreakdown:SetTemplate(detailsFramework:GetTemplate("button", "DETAILS_PLUGIN_BUTTONSELECTED_TEMPLATE"))
edFrame.buttonSwitchNormalBreakdown:SetWidth(BUTTON_WIDTH)
_G.DetailsBreakdownWindow.RegisterPluginButton(edFrame.buttonSwitchNormalBreakdown, edTable.PluginObject, edTable.PluginAbsoluteName)
--phases
edFrame.buttonSwitchPhases = detailsFramework:CreateButton(edFrame, edFrame.switch, BUTTON_WIDTH, BUTTON_HEIGHT, "Phases", "phases")
edFrame.buttonSwitchPhases:SetIcon("Interface\\AddOns\\Details_EncounterDetails\\images\\boss_frame_buttons", 18, 18, "overlay", {65/256, 96/256, 0, 0.505625})
edFrame.buttonSwitchPhases:SetTemplate(detailsFramework:GetTemplate("button", "DETAILS_PLUGIN_BUTTON_TEMPLATE"))
edFrame.buttonSwitchPhases:SetWidth(BUTTON_WIDTH)
--phases for the breakdown window
edFrame.buttonSwitchPhasesBreakdown = detailsFramework:CreateButton(edFrame, edFrame.switch, BUTTON_WIDTH, BUTTON_HEIGHT, "Phases", "phases")
edFrame.buttonSwitchPhasesBreakdown:SetIcon("Interface\\AddOns\\Details_EncounterDetails\\images\\boss_frame_buttons", 18, 18, "overlay", {65/256, 96/256, 0, 0.505625})
edFrame.buttonSwitchPhasesBreakdown:SetTemplate(detailsFramework:GetTemplate("button", "DETAILS_PLUGIN_BUTTON_TEMPLATE"))
edFrame.buttonSwitchPhasesBreakdown:SetWidth(BUTTON_WIDTH)
_G.DetailsBreakdownWindow.RegisterPluginButton(edFrame.buttonSwitchPhasesBreakdown, edTable.PluginObject, edTable.PluginAbsoluteName)
--chart
edFrame.buttonSwitchGraphic = detailsFramework:CreateButton(edFrame, edFrame.switch, BUTTON_WIDTH, BUTTON_HEIGHT, "Damage Graphic", "graph")
edFrame.buttonSwitchGraphic:SetIcon("Interface\\AddOns\\Details_EncounterDetails\\images\\boss_frame_buttons", 18, 18, "overlay", {97/256, 128/256, 0, 0.505625})
edFrame.buttonSwitchGraphic:SetTemplate(detailsFramework:GetTemplate("button", "DETAILS_PLUGIN_BUTTON_TEMPLATE"))
edFrame.buttonSwitchGraphic:SetWidth(BUTTON_WIDTH)
--charts for the breakdown window
edFrame.buttonSwitchGraphicBreakdown = detailsFramework:CreateButton(edFrame, edFrame.switch, BUTTON_WIDTH, BUTTON_HEIGHT, "Damage Graphic", "graph")
edFrame.buttonSwitchGraphicBreakdown:SetIcon("Interface\\AddOns\\Details_EncounterDetails\\images\\boss_frame_buttons", 18, 18, "overlay", {97/256, 128/256, 0, 0.505625})
edFrame.buttonSwitchGraphicBreakdown:SetTemplate(detailsFramework:GetTemplate("button", "DETAILS_PLUGIN_BUTTON_TEMPLATE"))
edFrame.buttonSwitchGraphicBreakdown:SetWidth(BUTTON_WIDTH)
_G.DetailsBreakdownWindow.RegisterPluginButton(edFrame.buttonSwitchGraphicBreakdown, edTable.PluginObject, edTable.PluginAbsoluteName)
--emotes
edFrame.buttonSwitchBossEmotes = detailsFramework:CreateButton(edFrame, edFrame.switch, BUTTON_WIDTH, BUTTON_HEIGHT, "Emotes", "emotes")
edFrame.buttonSwitchBossEmotes:SetIcon("Interface\\AddOns\\Details_EncounterDetails\\images\\boss_frame_buttons", 18, 18, "overlay", {129/256, 160/256, 0, 0.505625})
edFrame.buttonSwitchBossEmotes:SetTemplate(detailsFramework:GetTemplate("button", "DETAILS_PLUGIN_BUTTON_TEMPLATE"))
edFrame.buttonSwitchBossEmotes:SetWidth(BUTTON_WIDTH)
--emotes for the breakdown window
edFrame.buttonSwitchBossEmotesBreakdown = detailsFramework:CreateButton(edFrame, edFrame.switch, BUTTON_WIDTH, BUTTON_HEIGHT, "Emotes", "emotes")
edFrame.buttonSwitchBossEmotesBreakdown:SetIcon("Interface\\AddOns\\Details_EncounterDetails\\images\\boss_frame_buttons", 18, 18, "overlay", {129/256, 160/256, 0, 0.505625})
edFrame.buttonSwitchBossEmotesBreakdown:SetTemplate(detailsFramework:GetTemplate("button", "DETAILS_PLUGIN_BUTTON_TEMPLATE"))
edFrame.buttonSwitchBossEmotesBreakdown:SetWidth(BUTTON_WIDTH)
_G.DetailsBreakdownWindow.RegisterPluginButton(edFrame.buttonSwitchBossEmotesBreakdown, edTable.PluginObject, edTable.PluginAbsoluteName)
--anchors
edFrame.buttonSwitchNormal:SetPoint("topleft", edFrame, "topleft", 5, -26)
edFrame.buttonSwitchPhases:SetPoint("left", edFrame.buttonSwitchNormal, "right", HEADER_MENUBUTTONS_SPACEMENT, 0)
edFrame.buttonSwitchGraphic:SetPoint("topleft", edFrame.buttonSwitchNormal, "bottomleft", 0, -3)
edFrame.buttonSwitchBossEmotes:SetPoint("left", edFrame.buttonSwitchGraphic, "right", HEADER_MENUBUTTONS_SPACEMENT, 0)
edFrame.AllButtons = {edFrame.buttonSwitchNormal, edFrame.buttonSwitchGraphic, edFrame.buttonSwitchBossEmotes, edFrame.buttonSwitchPhases}
end
--segment selection
local buildSegmentosMenu = function(self)
local segmentList = Details:GetCombatSegments()
local resultTable = {}
for index, combate in ipairs(segmentList) do
if (combate.is_boss and combate.is_boss.index) then
--local l, r, t, b, icon = Details:GetBossIcon(combate.is_boss.mapid, combate.is_boss.index)
local bossIcon = Details:GetBossEncounterTexture(combate.is_boss.name)
resultTable[#resultTable+1] = {value = index, label = "#" .. index .. " " .. combate.is_boss.name, icon = bossIcon, iconsize = {32, 20}, texcoord = {0, 1, 0, 0.9}, onclick = encounterDetails.OpenAndRefresh}
4 years ago
end
end
return resultTable
4 years ago
end
--space between the 4 tab buttons and the segments and macro frames
local xSpacement = 20
4 years ago
--~dropdown
local segmentDropdown = detailsFramework:NewDropDown(edFrame, _, "$parentSegmentsDropdown", "segmentsDropdown", 218, 20, buildSegmentosMenu, nil)
segmentDropdown:SetPoint("left", edFrame.buttonSwitchPhases, "right", xSpacement, 0)
segmentDropdown:SetTemplate(detailsFramework:GetTemplate("dropdown", "OPTIONS_DROPDOWN_TEMPLATE"))
4 years ago
--options button
local optionsButton = detailsFramework:NewButton(edFrame, nil, "$parentOptionsButton", "OptionsButton", 120, 20, encounterDetails.OpenOptionsPanel, nil, nil, nil, "Options")
optionsButton:SetPoint("left", segmentDropdown, "right", 10, 0)
optionsButton:SetTemplate(detailsFramework:GetTemplate("button", "DETAILS_PLUGIN_BUTTON_TEMPLATE"))
optionsButton:SetIcon([[Interface\Buttons\UI-OptionsButton]], 14, 14, nil, {0, 1, 0, 1}, nil, 3)
4 years ago
--macro box
edFrame.MacroEditBox = detailsFramework:CreateTextEntry(edFrame, function()end, 300, 20)
edFrame.MacroEditBox:SetPoint("left", edFrame.buttonSwitchBossEmotes, "right", xSpacement, 0)
edFrame.MacroEditBox:SetAlpha(0.7)
edFrame.MacroEditBox:SetText("/run Details:OpenPlugin('Encounter Breakdown')")
edFrame.MacroEditBox:SetTemplate(detailsFramework:GetTemplate("button", "DETAILS_PLUGIN_BUTTON_TEMPLATE"))
edFrame.MacroEditBox:SetSize(348, 20)
4 years ago
edFrame.MacroEditBox:HookScript("OnEditFocusGained", function()
C_Timer.After(0, function() edFrame.MacroEditBox:HighlightText() end)
end)
4 years ago
edFrame.MacroEditBox.BackgroundLabel = detailsFramework:CreateLabel(edFrame.MacroEditBox, "macro")
edFrame.MacroEditBox.BackgroundLabel:SetPoint("left", edFrame.MacroEditBox, "left", 6, 0)
edFrame.MacroEditBox.BackgroundLabel:SetTextColor(.3, .3, .3, .98)
end
end