- Config: fix Addon Compartment
urnati [03-14-26 - 01:56]
- Config: fix Addon Compartment
- Gold: Update button on show/hide and add server to name
diff --git a/Titan/TitanConfig.lua b/Titan/TitanConfig.lua
index 0746d08..370a5e2 100644
--- a/Titan/TitanConfig.lua
+++ b/Titan/TitanConfig.lua
@@ -3750,5 +3750,5 @@ function Titan_Config.OpenConfig(reason)
Titan_Debug.Out('titan', 'config_flow', "Open : " .. reason)
TitanUpdateConfig("init")
- AceConfigDialog:Open("Titan")
+ AceConfigDialog:Open(config_parent)
end
diff --git a/TitanGold/TitanGold.lua b/TitanGold/TitanGold.lua
index 62a8049..16b1a7a 100644
--- a/TitanGold/TitanGold.lua
+++ b/TitanGold/TitanGold.lua
@@ -790,26 +790,42 @@ end
---@param faction string
---@param level table Menu description to attach to
local function ShowMenuButtons(faction, level)
+ -- create the list and sort by alpha with server
+ local list_alpha = {}
for index, money in pairs(TitanSettings.Players) do
local char = EvalIndexInfo(index)
if char.valid and char.faction == faction then
- Titan_Menu.AddSelectorGeneric(level, char.char_name,
- function(data)
- local toon_info = TitanSettings.Players[data.c_name].Info ---@class CharInfo
- local toon_gold = toon_info[TITAN_GOLD_ID] ---@class GoldData
- return toon_gold.show
- end,
- function(data)
- local toon_info = TitanSettings.Players[index].Info ---@class CharInfo
- local toon_gold = toon_info[TITAN_GOLD_ID] ---@class GoldData
- toon_gold.show = not toon_gold.show
- end,
- { c_name = index }
- )
+ table.insert(list_alpha, index);
else
-- ignore custom profiles or toons not logged into yet
end
end
+ table.sort(list_alpha, function(key1, key2)
+-- return key1.char_name < key2.char_name
+ return key1 < key2
+ end)
+
+ for i = 1, #list_alpha do
+ local toon = list_alpha[i]
+ --character = toon.char_name
+ --charserver = toon.server
+ --char_faction = toon.faction
+
+ Titan_Menu.AddSelectorGeneric(level, toon,
+ function(data)
+ local toon_info = TitanSettings.Players[data.c_name].Info ---@class CharInfo
+ local toon_gold = toon_info[TITAN_GOLD_ID] ---@class GoldData
+ return toon_gold.show
+ end,
+ function(data)
+ local toon_info = TitanSettings.Players[data.c_name].Info ---@class CharInfo
+ local toon_gold = toon_info[TITAN_GOLD_ID] ---@class GoldData
+ toon_gold.show = not toon_gold.show
+ TitanPanelButton_UpdateButton(TITAN_GOLD_ID);
+ end,
+ { c_name = toon }
+ )
+ end
end
local function GeneratorFunction(owner, rootDescription)
@@ -879,8 +895,8 @@ local function GeneratorFunction(owner, rootDescription)
end
Titan_Menu.AddDivider(root)
- local opts_show = Titan_Menu.AddButton(root, L["TITAN_GOLD_SHOW_PLAYER"]
- .." : "..L["TITAN_GOLD_FACTION_PLAYER_ALLY"])
+ local opts_show = Titan_Menu.AddButton(root, L["TITAN_GOLD_SHOW_PLAYER"])
+-- .." : "..L["TITAN_GOLD_FACTION_PLAYER_ALLY"])
do
local opts_alliance = Titan_Menu.AddButton(opts_show, L["TITAN_GOLD_FACTION_PLAYER_ALLY"])
ShowMenuButtons(TITAN_ALLIANCE, opts_alliance)