Added Search into the options panel

This commit is contained in:
Tercio Jose
2021-09-24 22:07:13 -03:00
parent e607f32edb
commit 1c20f166cb
14 changed files with 503 additions and 335 deletions
File diff suppressed because it is too large Load Diff
@@ -1,5 +1,5 @@
## Interface: 90002
## Title: Library Raid Status
## Title: Library Open Raid
## Notes: This is a library used by addons.
lib.xml
@@ -1,20 +1,20 @@
--data which main need maintenance over time
if (not LIB_RAID_STATUS_CAN_LOAD) then
if (not LIB_OPEN_RAID_CAN_LOAD) then
return
end
LIB_RAID_STATUS_AUGMENTATED_RUNE = 347901
LIB_OPEN_RAID_AUGMENTATED_RUNE = 347901
LIB_RAID_STATUS_COVENANT_ICONS = {
LIB_OPEN_RAID_COVENANT_ICONS = {
[[Interface\ICONS\UI_Sigil_Kyrian]], --kyrian
[[Interface\ICONS\UI_Sigil_Venthyr]], --venthyr
[[Interface\ICONS\UI_Sigil_NightFae]], --nightfae
[[Interface\ICONS\UI_Sigil_Necrolord]], --necrolords
}
LIB_RAID_STATUS_MELEE_SPECS = {
LIB_OPEN_RAID_MELEE_SPECS = {
[251] = "DEATHKNIGHT",
[252] = "DEATHKNIGHT",
[577] = "DEMONHUNTER",
@@ -32,7 +32,7 @@ LIB_RAID_STATUS_MELEE_SPECS = {
--which gear slots can be enchanted on the latest retail version of the game
--when the value is a number, the slot only receives enchants for a specific attribute
LIB_RAID_STATUS_ENCHANT_SLOTS = {
LIB_OPEN_RAID_ENCHANT_SLOTS = {
--[INVSLOT_NECK] = true,
[INVSLOT_BACK] = true, --for all
@@ -50,7 +50,7 @@ LIB_RAID_STATUS_ENCHANT_SLOTS = {
-- local itemLink = GetInventoryItemLink("player", slotId)
-- local enchandId = select (3, strsplit(":", itemLink))
-- print("enchantId:", enchandId)
LIB_RAID_STATUS_ENCHANT_IDS = {
LIB_OPEN_RAID_ENCHANT_IDS = {
--FEET
--[6207] = INVSLOT_FEET, --[Enchant Boots - Speed of Soul]
[6211] = INVSLOT_FEET, --[Enchant Boots - Eternal Agility] + 15 agi
@@ -91,13 +91,21 @@ LIB_RAID_STATUS_ENCHANT_IDS = {
[6227] = INVSLOT_MAINHAND, --[Enchant Weapon - Ascended Vigor] + healing received increased
[6228] = INVSLOT_MAINHAND, --[Enchant Weapon - Sinful Revelation] + 6% bleed damage
[6229] = INVSLOT_MAINHAND, --[Enchant Weapon - Celestial Guidance] + 5% agility
[6243] = INVSLOT_MAINHAND, --[Runeforging: Rune of Hysteria]
[3370] = INVSLOT_MAINHAND, --[Runeforging: Rune of Razorice]
[6241] = INVSLOT_MAINHAND, --[Runeforging: Rune of Sanguination]
[6242] = INVSLOT_MAINHAND, --[Runeforging: Rune of Spellwarding]
[6245] = INVSLOT_MAINHAND, --[Runeforging: Rune of the Apocalypse]
[3368] = INVSLOT_MAINHAND, --[Runeforging: Rune of the Fallen Crusader]
[3847] = INVSLOT_MAINHAND, --[Runeforging: Rune of the Stoneskin Gargoyle]
[6244] = INVSLOT_MAINHAND, --[Runeforging: Rune of Unending Thirst]
}
-- how to get the gemId:
-- local itemLink = GetInventoryItemLink("player", slotId)
-- local gemId = select (4, strsplit(":", itemLink))
-- print("gemId:", gemId)
LIB_RAID_STATUS_GEM_IDS = {
LIB_OPEN_RAID_GEM_IDS = {
[173126] = true, --Straddling Jewel Doublet (green, +12 speed)
[173125] = true, --Revitalizing Jewel Doublet (green, +100 health)
[173130] = true, --Masterful Jewel Cluster (blue, master)
@@ -106,7 +114,8 @@ LIB_RAID_STATUS_GEM_IDS = {
[173128] = true, --Quick Jewel Cluster (blue, haste)
}
LIB_RAID_STATUS_WEAPON_ENCHANT_IDS = {
--/dump GetWeaponEnchantInfo()
LIB_OPEN_RAID_WEAPON_ENCHANT_IDS = {
[6188] = true, --shadowcore oil
[6190] = true, --embalmer's oil
[6201] = true, --weighted
@@ -115,7 +124,7 @@ LIB_RAID_STATUS_WEAPON_ENCHANT_IDS = {
[5401] = true, --windfury
}
LIB_RAID_STATUS_COOLDOWNS_BY_SPEC = {
LIB_OPEN_RAID_COOLDOWNS_BY_SPEC = {
-- 1 attack cooldown
-- 2 personal defensive cooldown
-- 3 targetted defensive cooldown
@@ -591,7 +600,7 @@ LIB_RAID_STATUS_COOLDOWNS_BY_SPEC = {
--if talent is required, use the command:
--/dump GetTalentInfo (talentTier, talentColumn, 1)
--example: to get the second talent of the last talent line, use: /dump GetTalentInfo (7, 2, 1)
LIB_RAID_STATUS_COOLDOWNS_INFO = {
LIB_OPEN_RAID_COOLDOWNS_INFO = {
--> paladin
[31884] = {cooldown = 120, duration = 20, talent = false, charges = 1, class = "PALADIN", type = 1}, --Avenging Wrath
[216331] = {cooldown = 120, duration = 20, talent = 22190, charges = 1, class = "PALADIN", type = 1}, --Avenging Crusader (talent)
@@ -1,32 +1,32 @@
Raid Status is a library to share the player information while playing in a group or raid.
Open Raid is a library to share the player information while playing in a group or raid.
Install:
Place the library at your addon folder/libs/LibRaidStatus/
Inside LibRaidStatus there's 5 files.
Add <Include file="Libs\LibRaidStatus\lib.xml"/> to your libs.xml located in the root folder of the addon or
<Include file="LibRaidStatus\lib.xml"/> if it is located inside the Libs folder.
Place the library at your addon folder/libs/LibOpenRaid/
Inside LibOpenRaid there's 5 files.
Add <Include file="Libs\LibOpenRaid\lib.xml"/> to your libs.xml located in the root folder of the addon or
<Include file="LibOpenRaid\lib.xml"/> if it is located inside the Libs folder.
Close and open the game client.
Inside your lua file, get the library object, you need to do this in order to grab a reference of the library:
local raidStatusLib = LibStub:GetLibrary("LibRaidStatus-1.0")
local openRaidLib = LibStub:GetLibrary("LibOpenRaid-1.0")
With this object, you can start querying the library for information.
Functions:
local sentRequest = raidStatusLib.RequestAllPlayersInfo()
local sentRequest = openRaidLib.RequestAllPlayersInfo()
Request to all players to send all data infomation: cooldowns, gear and player data.
Instants after calling this, expect to receive several callbacks.
local allPlayersGear = raidStatusLib.gearManager.GetAllPlayersGear()
local allPlayersGear = openRaidLib.gearManager.GetAllPlayersGear()
allPlayersGear = {
["playerName1"] = playerGear,
["playerName2"] = playerGear,
["playerName3"] = playerGear,
}
local playerGear = raidStatusLib.gearManager.GetPlayerGear(playerName)
local playerGear = openRaidLib.gearManager.GetPlayerGear(playerName)
playerGear = {
.durability = number
.ilevel = number
@@ -36,14 +36,14 @@ playerGear = {
}
local allPlayersCooldowns = raidStatusLib.cooldownManager.GetAllPlayersCooldown()
local allPlayersCooldowns = openRaidLib.cooldownManager.GetAllPlayersCooldown()
allPlayersCooldowns = {
["playerName1"] = playerCooldows,
["playerName2"] = playerCooldows,
["playerName3"] = playerCooldows,
}
local playerCooldows = raidStatusLib.cooldownManager.GetPlayerCooldowns(playerName)
local playerCooldows = openRaidLib.cooldownManager.GetPlayerCooldowns(playerName)
playerCooldows = {
[cooldownSpellId] = {
[1] = time left (number),
@@ -54,14 +54,14 @@ playerCooldows = {
}
local allPlayersInfo = raidStatusLib.playerInfoManager.GetAllPlayersInfo()
local allPlayersInfo = openRaidLib.playerInfoManager.GetAllPlayersInfo()
allPlayersInfo = {
["playerName1"] = playerInfo,
["playerName2"] = playerInfo,
["playerName3"] = playerInfo,
}
local playerInfo = raidStatusLib.playerInfoManager.GetPlayerInfo(playerName)
local playerInfo = openRaidLib.playerInfoManager.GetPlayerInfo(playerName)
playerInfo = {
.specId = number
.renown = number,
@@ -106,7 +106,7 @@ function MyAddonObject.OnReceiveCooldownListUpdate(unitName, playerCooldows, all
end
--registering the callback:
raidStatusLib.RegisterCallback(MyAddonObject, "CooldownListUpdate", "OnReceiveCooldownListUpdate")
openRaidLib.RegisterCallback(MyAddonObject, "CooldownListUpdate", "OnReceiveCooldownListUpdate")
===================================================================================================================================
"CooldownUpdate": triggered when any unit in the group used a cooldown or the timeleft got an update
@@ -129,7 +129,7 @@ function MyAddonObject.OnReceiveCooldownUpdate(unitName, spellId, cooldownTimeLe
end
--registering the callback:
raidStatusLib.RegisterCallback(MyAddonObject, "CooldownUpdate", "OnReceiveCooldownUpdate")
openRaidLib.RegisterCallback(MyAddonObject, "CooldownUpdate", "OnReceiveCooldownUpdate")
===================================================================================================================================
"CooldownListWiped": when the list of cooldowns get a wipe, usually when the player leave the group
@@ -140,7 +140,7 @@ function MyAddonObject.OnCooldownListWipe(allPlayersCooldowns)
end
--registering the callback:
raidStatusLib.RegisterCallback(MyAddonObject, "CooldownListWiped", "OnCooldownListWipe")
openRaidLib.RegisterCallback(MyAddonObject, "CooldownListWiped", "OnCooldownListWipe")
===================================================================================================================================
@@ -163,7 +163,7 @@ function MyAddonObject.OnGearUpdate(playerName, playerGear, allPlayersGear)
end
--registering the callback:
raidStatusLib.RegisterCallback(MyAddonObject, "GearUpdate", "OnGearUpdate")
openRaidLib.RegisterCallback(MyAddonObject, "GearUpdate", "OnGearUpdate")
===================================================================================================================================
"GearDurabilityUpdate": when the gear durability of a player in the group changes
@@ -174,7 +174,7 @@ function MyAddonObject.OnGearDurabilityUpdate(playerName, durability, playerGear
end
--registering the callback:
raidStatusLib.RegisterCallback(MyAddonObject, "GearDurabilityUpdate", "OnGearDurabilityUpdate")
openRaidLib.RegisterCallback(MyAddonObject, "GearDurabilityUpdate", "OnGearDurabilityUpdate")
===================================================================================================================================
"GearListWiped": when the list of gear get a wipe, usually when the player leave the group
@@ -185,7 +185,7 @@ function MyAddonObject.OnGearListWiped(allPlayersGear)
end
--registering the callback:
raidStatusLib.RegisterCallback(MyAddonObject, "GearListWiped", "OnGearListWiped")
openRaidLib.RegisterCallback(MyAddonObject, "GearListWiped", "OnGearListWiped")
===================================================================================================================================
"PlayerUpdate": received a player information about its spec, talents, etc...
@@ -202,7 +202,7 @@ function MyAddonObject.OnPlayerUpdate(playerName, playerInfo, allPlayersInfo)
end
--registering the callback:
raidStatusLib.RegisterCallback(MyAddonObject, "PlayerUpdate", "OnPlayerUpdate")
openRaidLib.RegisterCallback(MyAddonObject, "PlayerUpdate", "OnPlayerUpdate")
===================================================================================================================================
"TalentsUpdate": when a unit changed a talent
@@ -217,7 +217,7 @@ function MyAddonObject.OnTalentUpdate(playerName, talents, playerInfo, allPlayer
end
--registering the callback:
raidStatusLib.RegisterCallback(MyAddonObject, "TalentUpdate", "OnTalentUpdate")
openRaidLib.RegisterCallback(MyAddonObject, "TalentUpdate", "OnTalentUpdate")
===================================================================================================================================
@@ -229,7 +229,7 @@ function MyAddonObject.OnPlayerDeath(playerName)
end
--registering the callback:
raidStatusLib.RegisterCallback(MyAddonObject, "OnPlayerDeath", "OnPlayerDeath")
openRaidLib.RegisterCallback(MyAddonObject, "OnPlayerDeath", "OnPlayerDeath")
===================================================================================================================================
"OnPlayerRess": when a player revives
@@ -240,5 +240,5 @@ function MyAddonObject.OnPlayerRess(playerName)
end
--registering the callback:
raidStatusLib.RegisterCallback(MyAddonObject, "OnPlayerRess", "OnPlayerRess")
openRaidLib.RegisterCallback(MyAddonObject, "OnPlayerRess", "OnPlayerRess")
@@ -1,5 +1,5 @@
<Ui xmlns="http://www.blizzard.com/wow/ui/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.blizzard.com/wow/ui/
..\FrameXML\UI.xsd">
<Script file="LibRaidStatus.lua" />
<Script file="LibOpenRaid.lua" />
<Script file="ThingsToMantain.lua" />
</Ui>
+1 -1
View File
@@ -17,7 +17,7 @@
<Include file="LibDeflate\lib.xml"/>
<Include file="LibItemUpgradeInfo-1.0\LibItemUpgradeInfo-1.0.xml"/>
<!-- <Include file="LibGroupInSpecT-1.1\lib.xml"/> temp disabled due to classic-->
<Include file="LibRaidStatus\lib.xml"/>
<Include file="LibOpenRaid\lib.xml"/>
<Include file="DF\load.xml"/>
<Include file="LibTranslit\LibTranslit-1.0.xml"/>
</Ui>
+9 -9
View File
@@ -2,7 +2,7 @@
local Details = _G.Details
local DF = _G.DetailsFramework
local raidStatusLib = LibStub:GetLibrary("LibRaidStatus-1.0")
local openRaidLib = LibStub:GetLibrary("LibOpenRaid-1.0")
local width = 170
local height = 300
@@ -42,9 +42,9 @@ function Details.CooldownTracking.EnableTracker()
Details.ocd_tracker.enabled = true
--register callbacks
raidStatusLib.RegisterCallback(Details.CooldownTracking, "CooldownListUpdate", "CooldownListUpdateFunc")
raidStatusLib.RegisterCallback(Details.CooldownTracking, "CooldownListWiped", "CooldownListWipedFunc")
raidStatusLib.RegisterCallback(Details.CooldownTracking, "CooldownUpdate", "CooldownUpdateFunc")
openRaidLib.RegisterCallback(Details.CooldownTracking, "CooldownListUpdate", "CooldownListUpdateFunc")
openRaidLib.RegisterCallback(Details.CooldownTracking, "CooldownListWiped", "CooldownListWipedFunc")
openRaidLib.RegisterCallback(Details.CooldownTracking, "CooldownUpdate", "CooldownUpdateFunc")
--Details.CooldownTracking.RefreshCooldownFrames()
end
@@ -58,9 +58,9 @@ function Details.CooldownTracking.DisableTracker()
end
--unregister callbacks
raidStatusLib.UnregisterCallback(Details.CooldownTracking, "CooldownListUpdate", "CooldownUpdateFunc")
raidStatusLib.UnregisterCallback(Details.CooldownTracking, "CooldownListWiped", "CooldownUpdateFunc")
raidStatusLib.UnregisterCallback(Details.CooldownTracking, "CooldownUpdate", "CooldownUpdateFunc")
openRaidLib.UnregisterCallback(Details.CooldownTracking, "CooldownListUpdate", "CooldownUpdateFunc")
openRaidLib.UnregisterCallback(Details.CooldownTracking, "CooldownListWiped", "CooldownUpdateFunc")
openRaidLib.UnregisterCallback(Details.CooldownTracking, "CooldownUpdate", "CooldownUpdateFunc")
end
function Details.CooldownTracking.CooldownUpdateFunc()
Details.CooldownTracking.RefreshCooldowns()
@@ -116,7 +116,7 @@ function Details.CooldownTracking.ProcessUnitCooldowns(unitId, statusBarFrameId,
return
end
local allPlayersInfo = raidStatusLib.playerInfoManager.GetAllPlayersInfo()
local allPlayersInfo = openRaidLib.playerInfoManager.GetAllPlayersInfo()
local allCooldownsFromLib = LIB_RAID_STATUS_COOLDOWNS_BY_SPEC
local cooldownsEnabled = Details.ocd_tracker.cooldowns
@@ -249,7 +249,7 @@ function Details.CooldownTracking.RefreshCooldowns()
--local cache saved with the character savedVariables
local cooldownCache = screenPanel.cooldownCache
local cooldownStatus = raidStatusLib.cooldownManager.GetAllPlayersCooldown()
local cooldownStatus = openRaidLib.cooldownManager.GetAllPlayersCooldown()
local cooldownIndex = 1
for unitName, allPlayerCooldowns in pairs(cooldownStatus) do
+92 -2
View File
@@ -190,6 +190,88 @@ function Details.options.InitializeOptionsWindow(instance)
changelog:SetTemplate (options_button_template)
changelog:SetIcon ("Interface\\AddOns\\Details\\images\\icons", nil, nil, nil, {367/512, 399/512, 43/512, 76/512}, {1, 1, 1, 0.8}, 4, 2)
--search field
local searchBox = DF:CreateTextEntry(f, function()end, 150, 20, _, _, _, options_dropdown_template)
searchBox:SetHook ("OnChar", f.OnSearchBoxTextChanged)
searchBox:SetHook ("OnTextChanged", f.OnSearchBoxTextChanged)
searchBox:SetPoint ("topright", f, "topright", -5, -30)
local searchLabel = DF:CreateLabel(f, "Search:", DF:GetTemplate ("font", "ORANGE_FONT_TEMPLATE"))
searchLabel:SetPoint ("right", searchBox, "left", -2, 0)
searchBox:SetHook("OnChar", function()
if (searchBox.text ~= "") then
local searchSection = f.sectionFramesContainer[19]
searchSection.sectionButton:Enable()
searchSection.sectionButton:Click()
local searchingFor = searchBox.text
local allSectionFrames = f.sectionFramesContainer
local allSectionNames = {}
local allSectionOptions = {}
for i = 1, #allSectionFrames do
local sectionFrame = allSectionFrames[i]
local sectionOptionsTable = sectionFrame.sectionOptions
allSectionNames[#allSectionNames+1] = sectionFrame.name
allSectionOptions[#allSectionOptions+1] = sectionOptionsTable
end
--this table will hold all options
local allOptions = {}
--start the fill process filling 'allOptions' with each individual option from each tab
for i = 1, #allSectionOptions do
local sectionOptions = allSectionOptions[i]
local lastLabel = nil
for k, setting in pairs(sectionOptions) do
if (setting.type == "label") then
lastLabel = setting
end
if (setting.name) then
allOptions[#allOptions+1] = {setting = setting, label = lastLabel, header = allSectionNames[i]}
end
end
end
local searchingText = string.lower(searchingFor)
searchBox:SetFocus()
local options = {}
local lastTab = nil
local lastLabel = nil
for i = 1, #allOptions do
local optionData = allOptions[i]
local optionName = string.lower(optionData.setting.name)
if (optionName:find(searchingText)) then
if optionData.header ~= lastTab then
if lastTab ~= nil then
options[#options+1] = {type = "label", get = function() return "" end, text_template = DF:GetTemplate ("font", "OPTIONS_FONT_TEMPLATE")} -- blank
end
options[#options+1] = {type = "label", get = function() return optionData.header end, text_template = {color = "silver", size = 14, font = DF:GetBestFontForLanguage()}}
lastTab = optionData.header
lastLabel = nil
end
if optionData.label ~= lastLabel then
options[#options+1] = optionData.label
lastLabel = optionData.label
end
options[#options+1] = optionData.setting
end
end
local startX = 200
local startY = -40
DF:BuildMenuVolatile(searchSection, options, startX, startY, 500, true, options_text_template, options_dropdown_template, options_switch_template, true, options_slider_template, options_button_template, globalCallback)
else
f.sectionFramesContainer[19].sectionButton:Disable()
end
end)
local sectionsName = { --section names
[1] = Loc ["STRING_OPTIONSMENU_DISPLAY"],
[3] = Loc ["STRING_OPTIONSMENU_ROWSETTINGS"],
@@ -214,12 +296,15 @@ function Details.options.InitializeOptionsWindow(instance)
[18] = "Mythic Dungeon",
[19] = "Search Results",
}
local optionsSectionsOrder = {
1, "", 3, 4, "", 5, 6, 7, 12, 13, "", 9, 2, 8, 10, 11, 18, "", 14, 15, 16, 17--, 18, 19
1, "", 3, 4, "", 5, 6, 7, 12, 13, "", 9, 2, 8, 10, 11, 18, "", 14, 15, 16, 17, "", 19
}
local maxSectionIds = 18
local maxSectionIds = 19
Details.options.maxSectionIds = maxSectionIds
local buttonYPosition = -40
@@ -248,6 +333,7 @@ function Details.options.InitializeOptionsWindow(instance)
local sectionFrame = CreateFrame("frame", "$parentTab" .. sectionId, f, "BackdropTemplate")
sectionFrame:SetAllPoints()
sectionFrame:EnableMouse(false)
sectionFrame.name = sectionsName[sectionId]
--tinsert(f.sectionFramesContainer, sectionFrame)
f.sectionFramesContainer[sectionId] = sectionFrame
@@ -261,6 +347,10 @@ function Details.options.InitializeOptionsWindow(instance)
sectionButton:SetPoint("topleft", f, "topleft", 10, buttonYPosition)
buttonYPosition = buttonYPosition - (section_menu_button_height + 1)
sectionFrame.sectionButton = sectionButton
if (sectionId == 19) then --search results
sectionButton:Disable()
end
end
else
buttonYPosition = buttonYPosition - 15
+35
View File
@@ -23,6 +23,7 @@ end
~16 - custom spells
~17 - charts data
~18 - mythic dungeon
~19 - search results
--]]
@@ -657,6 +658,7 @@ do
}
sectionFrame.sectionOptions = sectionOptions
DF:BuildMenu(sectionFrame, sectionOptions, startX, startY-20, heightSize+20, true, options_text_template, options_dropdown_template, options_switch_template, true, options_slider_template, options_button_template)
end
@@ -1010,6 +1012,7 @@ do
},
}
sectionFrame.sectionOptions = sectionOptions
DF:BuildMenu(sectionFrame, sectionOptions, startX, startY-20, heightSize, true, options_text_template, options_dropdown_template, options_switch_template, true, options_slider_template, options_button_template)
end
@@ -1564,6 +1567,7 @@ do
},
}
sectionFrame.sectionOptions = sectionOptions
DF:BuildMenu(sectionFrame, sectionOptions, startX, startY-20, heightSize+20, true, options_text_template, options_dropdown_template, options_switch_template, true, options_slider_template, options_button_template)
end
@@ -1921,6 +1925,7 @@ do
},
}
sectionFrame.sectionOptions = sectionOptions
DF:BuildMenu(sectionFrame, sectionOptions, startX, startY-20, heightSize, true, options_text_template, options_dropdown_template, options_switch_template, true, options_slider_template, options_button_template)
end
@@ -2378,6 +2383,7 @@ do
}
sectionFrame.sectionOptions = sectionOptions
DF:BuildMenu(sectionFrame, sectionOptions, startX, startY-20, heightSize, true, options_text_template, options_dropdown_template, options_switch_template, true, options_slider_template, options_button_template)
end
@@ -2675,6 +2681,7 @@ do
},
}
sectionFrame.sectionOptions = sectionOptions
DF:BuildMenu(sectionFrame, sectionOptions, startX, startY-20, heightSize, true, options_text_template, options_dropdown_template, options_switch_template, true, options_slider_template, options_button_template)
end
@@ -2787,6 +2794,8 @@ do
},
}
sectionFrame.sectionOptions = sectionOptions
DF:BuildMenu(sectionFrame, sectionOptions, startX, startY-20, heightSize, true, options_text_template, options_dropdown_template, options_switch_template, true, options_slider_template, options_button_template)
do --> micro displays
@@ -3419,6 +3428,7 @@ do
}
sectionFrame.sectionOptions = sectionOptions
DF:BuildMenu(sectionFrame, sectionOptions, startX, startY-20, heightSize, true, options_text_template, options_dropdown_template, options_switch_template, true, options_slider_template, options_button_template)
end
@@ -3657,6 +3667,7 @@ do
}
sectionFrame.sectionOptions = sectionOptions
DF:BuildMenu(sectionFrame, sectionOptions, startX, startY-20, heightSize, true, options_text_template, options_dropdown_template, options_switch_template, true, options_slider_template, options_button_template)
end
@@ -4032,6 +4043,7 @@ do
}
sectionFrame.sectionOptions = sectionOptions
DF:BuildMenu(sectionFrame, sectionOptions, startX, startY-20, heightSize, true, options_text_template, options_dropdown_template, options_switch_template, true, options_slider_template, options_button_template)
refreshToggleAnchor()
end
@@ -4179,6 +4191,7 @@ do
},
}
sectionFrame.sectionOptions = sectionOptions
DF:BuildMenu(sectionFrame, sectionOptions, startX, startY-20, heightSize, true, options_text_template, options_dropdown_template, options_switch_template, true, options_slider_template, options_button_template)
end
@@ -4582,6 +4595,7 @@ do
}
sectionFrame.sectionOptions = sectionOptions
DF:BuildMenu(sectionFrame, sectionOptions, startX, startY-20, heightSize, true, options_text_template, options_dropdown_template, options_switch_template, true, options_slider_template, options_button_template)
sectionFrame:SetScript("OnShow", function()
@@ -4912,6 +4926,7 @@ do
}
sectionFrame.sectionOptions = sectionOptions
DF:BuildMenu(autoSwitchFrame, sectionOptions, startX, startY-20, heightSize, true, options_text_template, options_dropdown_template, options_switch_template, true, options_slider_template, options_button_template)
@@ -5491,6 +5506,7 @@ do --raid tools
},
}
sectionFrame.sectionOptions = sectionOptions
DF:BuildMenu(sectionFrame, sectionOptions, startX, startY-20, heightSize, true, options_text_template, options_dropdown_template, options_switch_template, true, options_slider_template, options_button_template)
end
@@ -5729,6 +5745,7 @@ do
}
sectionFrame.sectionOptions = sectionOptions
DF:BuildMenu(sectionFrame, sectionOptions, startX + 350, startY - 20 - 200, heightSize + 300, true, options_text_template, options_dropdown_template, options_switch_template, true, options_slider_template, options_button_template)
end
@@ -5889,6 +5906,7 @@ do
}
sectionFrame.sectionOptions = sectionOptions
DF:BuildMenu(sectionFrame, sectionOptions, startX, startY-20, heightSize, true, options_text_template, options_dropdown_template, options_switch_template, true, options_slider_template, options_button_template)
end
@@ -6308,6 +6326,7 @@ do
}
sectionFrame.sectionOptions = sectionOptions
DF:BuildMenu(sectionFrame, sectionOptions, startX, startY-20, heightSize, true, options_text_template, options_dropdown_template, options_switch_template, true, options_slider_template, options_button_template)
end
@@ -6391,6 +6410,21 @@ do
},
}
sectionFrame.sectionOptions = sectionOptions
DF:BuildMenu(sectionFrame, sectionOptions, startX, startY-20, heightSize, true, options_text_template, options_dropdown_template, options_switch_template, true, options_slider_template, options_button_template)
end
tinsert(Details.optionsSection, buildSection)
end
-- ~19 - search results
do
local buildSection = function(sectionFrame)
local sectionOptions = {
}
DF:BuildMenu(sectionFrame, sectionOptions, startX, startY-20, heightSize, true, options_text_template, options_dropdown_template, options_switch_template, true, options_slider_template, options_button_template)
@@ -6414,3 +6448,4 @@ do
tinsert(Details.optionsSection, buildSection)
end
--]]
+3 -3
View File
@@ -510,9 +510,9 @@ function Details.UnitInfo (unitId, segment)
local playerInfo = {}
local raidStatusLib = LibStub:GetLibrary("LibRaidStatus-1.0")
if (raidStatusLib) then
playerInfo = raidStatusLib.playerInfoManager.GetPlayerInfo(unitName)
local openRaidLib = LibStub:GetLibrary("LibOpenRaid-1.0")
if (openRaidLib) then
playerInfo = openRaidLib.playerInfoManager.GetPlayerInfo(unitName)
end
unitInfo.class = playerObject.classe or class or "UNKNOW"
@@ -256,7 +256,7 @@ end
{text = "Flask", width = 45},
{text = "Rune", width = 45},
--{text = "Pre-Pot Last Try", width = 100},
{text = "Using Details!", width = 100},
--{text = "Using Details!", width = 100},
}
local headerOptions = {
padding = 2,
@@ -334,7 +334,7 @@ end
--no pre pot
--local PrePotIndicator = DF:CreateImage (line, "", scroll_line_height, scroll_line_height)
--using details!
local DetailsIndicator = DF:CreateImage(line, "", scroll_line_height, scroll_line_height)
--local DetailsIndicator = DF:CreateImage(line, "", scroll_line_height, scroll_line_height)
line:AddFrameToHeaderAlignment(roleIcon)
line:AddFrameToHeaderAlignment(talentsRow)
@@ -344,7 +344,7 @@ end
line:AddFrameToHeaderAlignment(FlaskIndicator)
line:AddFrameToHeaderAlignment(RuneIndicator)
--line:AddFrameToHeaderAlignment(PrePotIndicator)
line:AddFrameToHeaderAlignment(DetailsIndicator)
--line:AddFrameToHeaderAlignment(DetailsIndicator)
line:AlignWithHeader (DetailsRaidCheck.Header, "left")
@@ -359,7 +359,7 @@ end
line.FlaskIndicator = FlaskIndicator
line.RuneIndicator = RuneIndicator
--line.PrePotIndicator = PrePotIndicator
line.DetailsIndicator = DetailsIndicator
--line.DetailsIndicator = DetailsIndicator
return line
end
@@ -380,12 +380,10 @@ end
--table.sort (dataInOrder, DF.SortOrder1R) --alphabetical
data = dataInOrder
local raidStatusLib = LibStub:GetLibrary("LibRaidStatus-1.0")
local openRaidLib = LibStub:GetLibrary("LibOpenRaid-1.0")
--get the information of all players
local playersInfoData = raidStatusLib.playerInfoManager.GetAllPlayersInfo()
local playersGearData = raidStatusLib.gearManager.GetAllPlayersGear()
local libRaidStatus = 0
local playersInfoData = openRaidLib.playerInfoManager.GetAllPlayersInfo()
local playersGearData = openRaidLib.gearManager.GetAllPlayersGear()
for i = 1, total_lines do
local index = i + offset
@@ -466,7 +464,7 @@ end
line.FlaskIndicator.texture = playerTable.Flask and [[Interface\Scenarios\ScenarioIcon-Check]] or ""
line.RuneIndicator.texture = playerTable.Rune and [[Interface\Scenarios\ScenarioIcon-Check]] or ""
--line.PrePotIndicator.texture = playerTable.PrePot and [[Interface\Scenarios\ScenarioIcon-Check]] or ""
line.DetailsIndicator.texture = playerTable.UseDetails and [[Interface\Scenarios\ScenarioIcon-Check]] or ""
--line.DetailsIndicator.texture = playerTable.UseDetails and [[Interface\Scenarios\ScenarioIcon-Check]] or ""
end
end
end
@@ -0,0 +1,11 @@
## Interface: 20501
## Title: Details!: Streamer (plugin)
## Notes: Show which spells you are casting, viewers can see what are you doing and follow your steps.
## RequiredDeps: Details
## SavedVariables: Details_StreamerDB
#@no-lib-strip@
embeds.xml
#@end-no-lib-strip@
Details_Streamer.lua
+12 -1
View File
@@ -767,6 +767,11 @@ local function CreatePluginFrames()
if (StreamOverlay.db.use_square_mode) then
--hide any line created
for i = 1, #StreamOverlay.battle_lines do
StreamOverlay.battle_lines[i]:Hide()
end
local amt = StreamOverlay.db.square_amount
StreamOverlay.total_lines = amt
@@ -794,7 +799,12 @@ local function CreatePluginFrames()
StreamOverlay:UpdateSquares()
StreamOverlay:RefreshInUse()
else
else --showing lines
--hide any square created
for i = 1, #StreamOverlay.squares do
StreamOverlay.squares[i]:Hide()
end
--> how many lines fit in the frame
local amt = math.floor (SOF:GetHeight() / StreamOverlay.db.row_spacement)
@@ -1756,6 +1766,7 @@ function StreamOverlay.OpenOptionsPanel (from_options_panel)
get = function() return StreamOverlay.db.use_square_mode end,
set = function (self, fixedParam, value)
StreamOverlay.db.use_square_mode = value
StreamOverlay:Refresh()
end,
type = "toggle",
name = "Use Square Mode",
@@ -0,0 +1,14 @@
## Interface: 20501
## Title: Details!: Tiny Threat (plugin)
## Notes: Threat meter plugin, show threat for group members in the window. Select it from the Plugin menu in the Orange Cogwheel.
## RequiredDeps: Details
## OptionalDeps: Ace3
#@no-lib-strip@
embeds.xml
#@end-no-lib-strip@
enUS.lua
ptBR.lua
Details_TinyThreat.lua