Compare with Previous | Blame | View Log
--[[ Addon: Taos Group Tools Author: TProg Taonnor Created by @Taonnor ]]-- --[[ Global callbacks ]]-- TGT_SHOW_ULTIMATE_GROUP_MENU = "TGT-ShowUltimateGroupMenu" TGT_SET_ULTIMATE_GROUP = "TGT-SetUltimateGroup" --[[ Local variables ]]-- local _logger = nil --[[ Table TGT_UltimateGroupMenu ]]-- TGT_UltimateGroupMenu = {} TGT_UltimateGroupMenu.__index = TGT_UltimateGroupMenu --[[ =============== PRIVATE METHODS =============== ]]-- --[[ SetUltimateGroup shows ultimate group menu ]]-- local function SetUltimateGroup(group, arg) FireCallbacksAsync(TGT_SET_ULTIMATE_GROUP, group, arg) end --[[ ShowUltimateGroupMenu shows ultimate group menu ]]-- local function ShowUltimateGroupMenu(control, arg) if (control ~= nil) then ClearMenu() local ultimateGroups = TGT_UltimateGroupHandler.GetUltimateGroups() for i, group in pairs(ultimateGroups) do AddMenuItem(group.GroupName .. " - " .. group.GroupDescription, function() SetUltimateGroup(group, arg) end) end ShowMenu(control) end end --[[ ============== PUBLIC METHODS ============== ]]-- --[[ Initialize initializes TGT_UltimateGroupMenu ]]-- function TGT_UltimateGroupMenu.Initialize() _logger = TGT_LOGGER CALLBACK_MANAGER:RegisterCallback(TGT_SHOW_ULTIMATE_GROUP_MENU, ShowUltimateGroupMenu) _logger:logTrace("TGT_UltimateGroupMenu -> Initialized") end