local Details = _G.Details local L = _G.LibStub("AceLocale-3.0"):GetLocale( "Details" ) function Details:OpenProfiler() --isn't first run, so just quit if (not Details.character_first_run) then return elseif (Details.is_first_run) then return elseif (Details.always_use_profile) then return else --check is this is the first run of the addon (after being installed) local amount = 0 for name, profile in pairs(_detalhes_global.__profiles) do amount = amount + 1 end if (amount == 1) then return end end local f = Details:CreateWelcomePanel (nil, nil, 250, 300, true) f:SetPoint("right", UIParent, "right", -5, 0) local logo = f:CreateTexture(nil, "artwork") logo:SetTexture([[Interface\AddOns\Details\images\logotipo]]) logo:SetSize(256*0.8, 128*0.8) logo:SetPoint("center", f, "center", 0, 0) logo:SetPoint("top", f, "top", 20, 20) local string_profiler = f:CreateFontString(nil, "artwork", "GameFontNormal") string_profiler:SetPoint("top", logo, "bottom", -20, 10) string_profiler:SetText("Profiler!") local string_profiler = f:CreateFontString(nil, "artwork", "GameFontNormal") string_profiler:SetPoint("topleft", f, "topleft", 10, -130) string_profiler:SetText(L["STRING_OPTIONS_PROFILE_SELECTEXISTING"]) string_profiler:SetWidth(230) Details:SetFontSize(string_profiler, 11) Details:SetFontColor(string_profiler, "white") --get the new profile name local current_profile = Details:GetCurrentProfileName() local on_select_profile = function(_, _, profilename) if (profilename ~= Details:GetCurrentProfileName()) then Details:ApplyProfile (profilename) if (_G.DetailsOptionsWindow and _G.DetailsOptionsWindow:IsShown()) then Details:OpenOptionsWindow (_G.DetailsOptionsWindow.instance) end end end local texcoord = {5/32, 30/32, 4/32, 28/32} local fill_dropdown = function() local t = { {value = current_profile, label = L["STRING_OPTIONS_PROFILE_USENEW"], onclick = on_select_profile, icon = [[Interface\FriendsFrame\UI-Toast-FriendRequestIcon]], texcoord = {4/32, 30/32, 4/32, 28/32}, iconcolor = "orange"} } for _, profilename in ipairs(Details:GetProfileList()) do if (profilename ~= current_profile) then t[#t+1] = {value = profilename, label = profilename, onclick = on_select_profile, icon = [[Interface\FriendsFrame\UI-Toast-FriendOnlineIcon]], texcoord = texcoord, iconcolor = "yellow"} end end return t end local dropdown = Details.gump:NewDropDown (f, f, "DetailsProfilerProfileSelectorDropdown", "dropdown", 220, 20, fill_dropdown, 1) dropdown:SetPoint(15, -190) local confirm_func = function() if (current_profile ~= Details:GetCurrentProfileName()) then Details:EraseProfile (current_profile) end f:Hide() end local confirm = Details.gump:NewButton(f, f, "DetailsProfilerProfileConfirmButton", "button", 150, 20, confirm_func, nil, nil, nil, "Okey!") confirm:SetPoint(50, -250) confirm:InstallCustomTexture() end