From 6d977f6963aa78d666c8dd2c005d93813c2e679f Mon Sep 17 00:00:00 2001 From: Bluewhale1337 <295648290+Bluewhale1337@users.noreply.github.com> Date: Mon, 24 Aug 2026 12:42:23 +0200 Subject: [PATCH] docs: add function-level documentation comments across various source files to improve the readability of codebase --- HealBot.lua | 16 ++++++++++++ HealBot_Action.lua | 33 +++++++++++++++++++++++ HealBot_BonusScanner.lua | 10 +++++++ HealBot_Controller_Aura.lua | 4 +++ HealBot_Controller_Comms.lua | 7 +++++ HealBot_Controller_Events.lua | 22 ++++++++++++++++ HealBot_Controller_Range.lua | 2 ++ HealBot_Controller_Spells.lua | 28 ++++++++++++++++++++ HealBot_Data.lua | 2 ++ HealBot_Errors.lua | 6 +++++ HealBot_Integrations.lua | 2 ++ HealBot_Model.lua | 8 ++++++ HealBot_Options.lua | 14 ++++++++++ HealBot_Options_Auto.lua | 4 +++ HealBot_Options_Buffs.lua | 8 ++++++ HealBot_Options_CDC.lua | 27 +++++++++++++++++++ HealBot_Options_Chat.lua | 2 ++ HealBot_Options_General.lua | 41 +++++++++++++++++++++++++++++ HealBot_Options_Healing.lua | 45 +++++++++++++++++++++++--------- HealBot_Options_Integrations.lua | 1 + HealBot_Options_Skins.lua | 10 +++++++ HealBot_Options_Spells.lua | 40 +++++++++++++++++----------- HealBot_View_Layout.lua | 20 ++++++++++++++ HealBot_View_Tooltip.lua | 10 +++++++ 24 files changed, 335 insertions(+), 27 deletions(-) diff --git a/HealBot.lua b/HealBot.lua index 28020e0..a24b6b3 100644 --- a/HealBot.lua +++ b/HealBot.lua @@ -15,6 +15,7 @@ HealBot_Delay_RecalcParty=0; -- Debugging and Error functions moved to HealBot_Controller_Comms.lua +-- HealBot_TogglePanel: Toggles visibility of a frame panel. function HealBot_TogglePanel(panel) if (not panel) then return end if ( panel:IsVisible() ) then @@ -24,6 +25,7 @@ function HealBot_TogglePanel(panel) end end +-- HealBot_StartMoving: Initiates frame dragging when unlocked. function HealBot_StartMoving(frame) if ( not frame.isMoving ) and ( frame.isLocked ~= 1 ) then frame:StartMoving(); @@ -31,6 +33,7 @@ function HealBot_StartMoving(frame) end end +-- HealBot_StopMoving: Stops frame dragging. function HealBot_StopMoving(frame) if ( frame.isMoving ) then frame:StopMovingOrSizing(); @@ -47,6 +50,7 @@ function HealBot_StopMoving(frame) end +-- HealBot_SlashCmd: Handles '/hb' or '/healbot' chat commands. function HealBot_SlashCmd(cmd) if (cmd=="") then HealBot_TogglePanel(HealBot_Action); @@ -103,6 +107,7 @@ end -- HealBot_SendAddonMessage moved to HealBot_Controller_Comms.lua +-- HealBot_TargetName: Retrieves the name of the current target, ignoring enemies. function HealBot_TargetName() if UnitIsEnemy("target","player") then return nil end -- if not UnitPlayerControlled("target") then return nil end @@ -136,14 +141,17 @@ end +-- HealBot_PackBagSlot: Combines bag and slot into a single ID. function HealBot_PackBagSlot(bag,slot) return bag*100+slot; end +-- HealBot_UnpackBagSlot: Extracts bag and slot from a combined ID. function HealBot_UnpackBagSlot(bagslot) return math.floor(bagslot/100),math.mod(bagslot,100); end +-- HealBot_GetItemName: Gets item name from bag slot link. function HealBot_GetItemName(bag,slot) local link = GetContainerItemLink(bag,slot); if not link then return nil end; @@ -152,6 +160,7 @@ function HealBot_GetItemName(bag,slot) return item,count; end +-- HealBot_GetBagSlot: Finds bag slot ID for an item name. function HealBot_GetBagSlot(item) local BagSlot,BestCount; for bag=0,NUM_BAG_FRAMES do @@ -168,6 +177,7 @@ function HealBot_GetBagSlot(item) return BagSlot; end +-- HealBot_UseItem: Uses an item from inventory. function HealBot_UseItem(item) local bagslot = HealBot_GetBagSlot(item); if not bagslot then return end; @@ -178,6 +188,7 @@ end -- Spell parsing and casting functions moved to HealBot_Controller_Spells.lua +-- HealBot_UnitClass: Returns English class string for a unit. function HealBot_UnitClass(unit) local playerClass, englishClass = UnitClass(unit); return englishClass; @@ -197,6 +208,7 @@ end -- SpiBonus and GetBonus functions moved to HealBot_Controller_Spells.lua +-- HealBot_FindUnitID: Finds a unit token for a given player name. function HealBot_FindUnitID(unitname) local text; for _,unit in ipairs(HealBot_Action_HealGroup) do @@ -219,6 +231,7 @@ function HealBot_FindUnitID(unitname) return nil; end +-- HealBot_PlaySound: Plays an audio alert based on ID. function HealBot_PlaySound(id) if id==1 then PlaySoundFile("Sound\\Doodad\\BellTollTribal.wav"); @@ -231,6 +244,7 @@ end -- HealBot_InitSpells moved to HealBot_Controller_Spells.lua +-- HealBot_InitData: Registers options and basic setup on variables loaded. function HealBot_InitData() HealBot_Skins = HealBot_Config.Skins; if(CT_RegisterMod) then @@ -246,6 +260,7 @@ function HealBot_InitData() HealBot_Options_Debuff_Reset() end +-- HealBot_ToggleOptions: Toggles the main options menu. function HealBot_ToggleOptions() HealBot_TogglePanel(HealBot_Options) end @@ -262,6 +277,7 @@ end do local pass = function() end local orig = UseAction + -- UseAction: Intercepts standard clicks for mouseover support. function UseAction(slot, checkCursor, onSelf) if HealBot_Config.ActionMouseover == 1 then local mouseover = HealBot_Action_TooltipUnit diff --git a/HealBot_Action.lua b/HealBot_Action.lua index 2c9489d..69ef209 100644 --- a/HealBot_Action.lua +++ b/HealBot_Action.lua @@ -1,9 +1,11 @@ -- Status bar layout functions and tables moved to HealBot_View_Layout.lua +-- HealBot_AlwaysHeal: Returns true if healthy units should be shown. function HealBot_AlwaysHeal() return HealBot_Config.EnableHealthy==1 end +-- HealBot_MayHeal: Checks if unit is eligible for healing UI. function HealBot_MayHeal(unit) if not UnitName(unit) or not HealBot_Heals[unit] then return false end if unit ~= 'target' then return true end @@ -11,6 +13,7 @@ function HealBot_MayHeal(unit) return true; end +-- HealBot_ShouldHeal: Checks if unit needs immediate healing. function HealBot_ShouldHeal(unit) if HealBot_UnitDebuff[unit] and not UnitIsDeadOrGhost(unit) then if HealBot_Range_Check(unit, 30)==1 then @@ -21,22 +24,26 @@ function HealBot_ShouldHeal(unit) and (UnitHealth(unit) 0) then @@ -10,6 +11,7 @@ function HealBot_Get_DebugChan() end end +-- HealBot_AddChat: Prints standard messages to default chat frame. function HealBot_AddChat(msg) local chanid = HealBot_Get_DebugChan(); if chanid and HealBot_SpamCnt < 3 then @@ -28,6 +30,7 @@ function HealBot_AddChat(msg) end end +-- HealBot_AddDebug: Prints debug messages to internal chat channel. function HealBot_AddDebug(msg) local chanid = HealBot_Get_DebugChan(); if chanid and HealBot_SpamCnt < 3 then @@ -44,6 +47,7 @@ function HealBot_AddDebug(msg) end end +-- HealBot_Report_Error: Formats and prints error logs. function HealBot_Report_Error(msg) if HealBot_ErrorCnt < 28 then HealBot_ErrorCnt = HealBot_ErrorCnt + 1; @@ -52,11 +56,13 @@ function HealBot_Report_Error(msg) end end +-- HealBot_AddError: Displays error text in the UI frame. function HealBot_AddError(msg) UIErrorsFrame:AddMessage(msg, 1.0, 1.0, 1.0, 1.0, UIERRORS_HOLD_TIME); HealBot_AddDebug(msg); end +-- HealBot_SendAddonMessage: Broadcasts data to party/raid channels. function HealBot_SendAddonMessage(prefix, text) if GetNumRaidMembers() > 0 then SendAddonMessage(prefix, text, "RAID") @@ -65,6 +71,7 @@ function HealBot_SendAddonMessage(prefix, text) end end +-- HealBot_OnEvent_AddonMsg: Parses incoming heal data from other clients. function HealBot_OnEvent_AddonMsg(this, addon_id, inc_msg, dist_target, sender_id) if addon_id == HEALBOT_ADDON_ID then local tmpTest, unitname, heal_val diff --git a/HealBot_Controller_Events.lua b/HealBot_Controller_Events.lua index 2ea3668..2760a2e 100644 --- a/HealBot_Controller_Events.lua +++ b/HealBot_Controller_Events.lua @@ -6,6 +6,7 @@ HealBot_View_DirtyPower = {} local HealBot_Timer1, HealsIn_Timer = 0, 0; HealBot_LastModState = "" +-- HealBot_OnLoad: Registers core events and observers on addon load. function HealBot_OnLoad(this) this:RegisterEvent("VARIABLES_LOADED"); @@ -36,10 +37,12 @@ function HealBot_OnLoad(this) end) end +-- HealBot_RegisterThis: Internal utility: HealBot_RegisterThis function HealBot_RegisterThis(this) -- Deprecated / not used end +-- HealBot_OnUpdate: Main loop: processes dirty queues and timers. function HealBot_OnUpdate(this, arg1) if HealBot_Action_TooltipUnit and HealBot_Tooltip:IsVisible() then local s = IsShiftKeyDown() and true or false @@ -243,6 +246,7 @@ local HealBot_EventHandlers = { ["UPDATE_SHAPESHIFT_FORMS"] = function(this) HealBot_UpdateShapeshiftForm() end } +-- HealBot_OnEvent: Event dispatcher for WoW UI events. function HealBot_OnEvent(this, event, arg1, arg2, arg3, arg4) local handler = HealBot_EventHandlers[event] if handler then @@ -252,6 +256,7 @@ function HealBot_OnEvent(this, event, arg1, arg2, arg3, arg4) end end +-- HealBot_OnEvent_VariablesLoaded: Applies config defaults and initializes state. function HealBot_OnEvent_VariablesLoaded(this) local class = HealBot_UnitClass("player") @@ -335,6 +340,7 @@ function HealBot_OnEvent_VariablesLoaded(this) end end +-- HealBot_OnEvent_UnitHealth: Internal utility: HealBot_OnEvent_UnitHealth function HealBot_OnEvent_UnitHealth(this, unit) if (not HealBot_Heals[unit]) then return end HealBot_CheckCasting(unit); @@ -343,16 +349,19 @@ function HealBot_OnEvent_UnitHealth(this, unit) end end +-- HealBot_OnEvent_UnitMana: Internal utility: HealBot_OnEvent_UnitMana function HealBot_OnEvent_UnitMana(this, unit) if (unit ~= "player") then return end HealBot_RecalcHeals(); end +-- HealBot_OnEvent_ZoneChanged: Internal utility: HealBot_OnEvent_ZoneChanged function HealBot_OnEvent_ZoneChanged(this) HealBot_ResetRangeScale(); HealBot_Delay_RecalcParty = 1; end +-- HealBot_OnEvent_PlayerRegenDisabled: Internal utility: HealBot_OnEvent_PlayerRegenDisabled function HealBot_OnEvent_PlayerRegenDisabled(this) -- Removed HealBot_RecalcParty(); if (UnitIsDeadOrGhost("player")) or (UnitOnTaxi("player")) then @@ -388,11 +397,13 @@ function HealBot_OnEvent_PlayerRegenDisabled(this) -- HealBot_RecalcHeals(); end +-- HealBot_OnEvent_PlayerRegenEnabled: Internal utility: HealBot_OnEvent_PlayerRegenEnabled function HealBot_OnEvent_PlayerRegenEnabled(this) HealBot_IsFighting = false; HealBot_Delay_RecalcParty = 1; end +-- HealBot_OnEvent_PlayerTargetChanged: Internal utility: HealBot_OnEvent_PlayerTargetChanged function HealBot_OnEvent_PlayerTargetChanged(this) if HealBot_Action_UnitButtons and HealBot_Action_UnitButtons["target"] then HealBot_View_DirtyUnits["target"] = true @@ -400,6 +411,7 @@ function HealBot_OnEvent_PlayerTargetChanged(this) end end +-- HealBot_OnEvent_PartyMembersChanged: Internal utility: HealBot_OnEvent_PartyMembersChanged function HealBot_OnEvent_PartyMembersChanged(this) HealBot_Model:PreserveStateByGUID() HealBot_Integrations_PruneNampower() @@ -409,10 +421,12 @@ function HealBot_OnEvent_PartyMembersChanged(this) HealBot_Delay_RecalcParty = 1; end +-- HealBot_OnEvent_PartyMemberDisable: Internal utility: HealBot_OnEvent_PartyMemberDisable function HealBot_OnEvent_PartyMemberDisable(this, unit) HealBot_RecalcHeals(); end +-- HealBot_OnEvent_SystemMsg: Internal utility: HealBot_OnEvent_SystemMsg function HealBot_OnEvent_SystemMsg(this, msg) if type(msg) == "string" then local tmpTest, tmpTest, deserter = string.find(msg, HEALBOT_HASLEFTRAID); @@ -439,30 +453,36 @@ function HealBot_OnEvent_SystemMsg(this, msg) end end +-- HealBot_OnEvent_PartyMemberEnable: Internal utility: HealBot_OnEvent_PartyMemberEnable function HealBot_OnEvent_PartyMemberEnable(this, unit) HealBot_RecalcHeals(); end +-- HealBot_OnEvent_PlayerEquipmentChanged: Internal utility: HealBot_OnEvent_PlayerEquipmentChanged function HealBot_OnEvent_PlayerEquipmentChanged(this) HealBot_EquipChangeTimer = 1; end +-- HealBot_OnEvent_PlayerEquipmentChanged2: Internal utility: HealBot_OnEvent_PlayerEquipmentChanged2 function HealBot_OnEvent_PlayerEquipmentChanged2(this, unit) if unit == "player" then HealBot_EquipChangeTimer = 1; end end +-- HealBot_OnEvent_SpellsChanged: Internal utility: HealBot_OnEvent_SpellsChanged function HealBot_OnEvent_SpellsChanged(this, arg1) if arg1 then return; end HealBot_AddDebug("HB: SpellsChanged"); HealBot_SpellsInitFlag = 2; end +-- HealBot_OnEvent_TalentsChanged: Internal utility: HealBot_OnEvent_TalentsChanged function HealBot_OnEvent_TalentsChanged(this, arg1) HealBot_AddDebug("HB: TalentsChanged"); end +-- HealBot_OnEvent_PlayerEnteringWorld: Internal utility: HealBot_OnEvent_PlayerEnteringWorld function HealBot_OnEvent_PlayerEnteringWorld(this) HealBot_IsFighting = false; -- Re-apply the refresh hook late in case another addon overrode it during load @@ -471,6 +491,7 @@ function HealBot_OnEvent_PlayerEnteringWorld(this) end end +-- HealBot_OnEvent_SpellcastStart: Internal utility: HealBot_OnEvent_SpellcastStart function HealBot_OnEvent_SpellcastStart(this, spell, duration) HealBot_IsCasting = true; HealBot_RecalcHeals(); @@ -483,6 +504,7 @@ function HealBot_OnEvent_SpellcastStart(this, spell, duration) end end +-- HealBot_OnEvent_SpellcastStop: Internal utility: HealBot_OnEvent_SpellcastStop function HealBot_OnEvent_SpellcastStop(this, eventName) HealBot_IsCasting = false; if eventName == "SPELLCAST_FAILED" then diff --git a/HealBot_Controller_Range.lua b/HealBot_Controller_Range.lua index aff7caf..f37c7b2 100644 --- a/HealBot_Controller_Range.lua +++ b/HealBot_Controller_Range.lua @@ -3,10 +3,12 @@ local _scale = 0 +-- HealBot_ResetRangeScale: Resets map range scaling on zone change. function HealBot_ResetRangeScale() _scale = 0 end +-- HealBot_Range_Check: Checks if unit is in range via map distance or API. function HealBot_Range_Check(unit, range) local return_val = 0; if not range then diff --git a/HealBot_Controller_Spells.lua b/HealBot_Controller_Spells.lua index e819867..45f2fcd 100644 --- a/HealBot_Controller_Spells.lua +++ b/HealBot_Controller_Spells.lua @@ -18,6 +18,7 @@ local HealBot_Health60 = { ["WARRIOR"] = 5000, } +-- HealBot_GetSpellName: Internal utility: HealBot_GetSpellName function HealBot_GetSpellName(id) if (not id) then return nil; @@ -32,6 +33,7 @@ function HealBot_GetSpellName(id) return spellName .. " (" .. subSpellName .. ")"; end +-- HealBot_GetSpellId: Internal utility: HealBot_GetSpellId function HealBot_GetSpellId(spell) local id, idd = 1, 0; while true do @@ -55,6 +57,7 @@ function HealBot_GetSpellId(spell) end end +-- HealBot_CastSpellByName: Internal utility: HealBot_CastSpellByName function HealBot_CastSpellByName(spell) if (HealBot_Spells[spell] and HealBot_Spells[spell].BagSlot) then HealBot_UseItem(spell); @@ -74,6 +77,7 @@ function HealBot_CastSpellByName(spell) CastSpell(id, BOOKTYPE_SPELL); end +-- HealBot_AnnounceCast: Internal utility: HealBot_AnnounceCast function HealBot_AnnounceCast(spell, target) if not spell or not target then return end @@ -127,6 +131,7 @@ function HealBot_AnnounceCast(spell, target) end end +-- HealBot_Process_HealValue: Internal utility: HealBot_Process_HealValue function HealBot_Process_HealValue(spell, target) if HealBot_Spells[spell] and HealBot_Spells[spell].CastTime > 1 then HealBot_HealValue = HealBot_Spells[spell].HealsDur; @@ -163,6 +168,7 @@ function HealBot_Process_HealValue(spell, target) end end +-- HealBot_StartCasting: Initiates spell cast and broadcasts incoming heal. function HealBot_StartCasting(spell, target, ttype) HealBot_CastFailed = false; HealBot_CastSpellByName(spell); @@ -188,6 +194,7 @@ function HealBot_StartCasting(spell, target, ttype) end end +-- HealBot_StopCasting: Internal utility: HealBot_StopCasting function HealBot_StopCasting() if HealBot_CastingTarget then if HealBot_HealValue > 0 then @@ -221,6 +228,7 @@ function HealBot_StopCasting() bar.txt:SetTextColor(sr, sg, sb, sa); end +-- HealBot_UnitHealth: Internal utility: HealBot_UnitHealth function HealBot_UnitHealth(unit) local Current, Desired = UnitHealth(unit), UnitHealthMax(unit); if unit == 'target' and Desired == 100 then @@ -235,6 +243,7 @@ function HealBot_UnitHealth(unit) return Current, Desired; end +-- HealBot_CheckCasting: Internal utility: HealBot_CheckCasting function HealBot_CheckCasting(unit) if not HealBot_CastingSpell or HealBot_AlwaysHeal() then return nil end if not HealBot_Spells[HealBot_CastingSpell] then return nil end @@ -281,6 +290,7 @@ function HealBot_CheckCasting(unit) end end +-- HealBot_CastSpellOnFriend: Target-safe wrapper for casting spells on allies. function HealBot_CastSpellOnFriend(spell, target) if (not spell or not target or not UnitName(target)) then return; @@ -308,6 +318,7 @@ function HealBot_CastSpellOnFriend(spell, target) HealBot_TargetRestoreTimer = 0; end +-- HealBot_SetItemDefaults: Internal utility: HealBot_SetItemDefaults function HealBot_SetItemDefaults(spell) if not HealBot_Spells[spell].Target then HealBot_Spells[spell].Target = {"player", "party", "pet"}; @@ -340,6 +351,7 @@ function HealBot_SetItemDefaults(spell) end end +-- HealBot_SetSpellDefaults: Internal utility: HealBot_SetSpellDefaults function HealBot_SetSpellDefaults(spell) local baseHeal = HealBot_Spells[spell].HealsCast or 0 local extHeal = HealBot_Spells[spell].HealsExt or 0 @@ -383,6 +395,7 @@ function HealBot_SetSpellDefaults(spell) HealBot_Spells[spell].HealsDur = math.floor(baseHeal + extHeal + realHeal); end +-- HealBot_AddHeal: Internal utility: HealBot_AddHeal function HealBot_AddHeal(spell) HealBot_SetSpellDefaults(spell); table.foreachi(HealBot_Spells[spell].Target, function (i, val) @@ -391,6 +404,7 @@ function HealBot_AddHeal(spell) HealBot_Spells[spell].BagSlot = HealBot_GetBagSlot(spell); end +-- HealBot_FindHealSpells: Maps best heal ranks to UI buttons. function HealBot_FindHealSpells() local id = 1; if HealBot_SpellsInitFlag > 0 then NeedEquipUpdate = 1; return; end @@ -460,6 +474,7 @@ function HealBot_FindHealSpells() HealBot_CalcEquipBonus = false; end +-- HealBot_CanCastSpell: Internal utility: HealBot_CanCastSpell function HealBot_CanCastSpell(spell, unit) local this = HealBot_Spells[spell]; -- Removed manual mana check so WoW can properly handle 0-cost buffs (Clearcasting/Inner Focus) @@ -474,6 +489,7 @@ function HealBot_CanCastSpell(spell, unit) return true; end +-- HealBot_GetHealSpell: Resolves spell rank based on health deficit. function HealBot_GetHealSpell(unit, pattern) if (not UnitName(unit)) then return nil end; if not pattern then return nil end; @@ -515,14 +531,17 @@ function HealBot_GetHealSpell(unit, pattern) return nil; end +-- HealBot_HealUnit: Main entry point for healing a unit. function HealBot_HealUnit(unit, pattern) HealBot_CastSpellOnFriend(HealBot_GetHealSpell(unit, pattern), unit); end +-- HealBot_RecalcHeals: Flags unit for visual refresh. function HealBot_RecalcHeals(unit) HealBot_Action_Refresh(unit); end +-- HealBot_RecalcParty: Triggers group layout rebuild. function HealBot_RecalcParty() HealBot_Action_PartyChanged(); if HealBot_Action_HealButtons then @@ -535,11 +554,13 @@ function HealBot_RecalcParty() HealBot_Action_RefreshButtons(); end +-- HealBot_RecalcSpells: Recalculates spells and updates layout. function HealBot_RecalcSpells() HealBot_FindHealSpells(); HealBot_RecalcParty(); end +-- HealBot_GetTalentRank: Internal utility: HealBot_GetTalentRank function HealBot_GetTalentRank(talentName) for t = 1, GetNumTalentTabs() do for i = 1, GetNumTalents(t) do @@ -552,6 +573,7 @@ function HealBot_GetTalentRank(talentName) return 0; end +-- HealBot_SpiBonus: Internal utility: HealBot_SpiBonus function HealBot_SpiBonus(spell) local heals_modifer = 0; local base, stat, posBuff, negBuff = UnitStat("player", 5); @@ -563,6 +585,7 @@ function HealBot_SpiBonus(spell) return heals_modifer; end +-- HealBot_GetBonus: Internal utility: HealBot_GetBonus function HealBot_GetBonus() local HealBonus = 0; if HealBot_Integrations_ClassicAPI_Active and GetSpellBonusHealing then @@ -580,6 +603,7 @@ function HealBot_GetBonus() return HealBonus; end +-- HealBot_InitSpells: Scans spellbook to find available heals. function HealBot_InitSpells() local id = 1 local cnt = 0; @@ -602,6 +626,7 @@ function HealBot_InitSpells() return cnt; end +-- HealBot_InitGetSpellData: Extracts mana and cast time from spell tooltips. function HealBot_InitGetSpellData(spell, id, class) local i, _mana, _cast, _HealsMin, _HealsMax, _HealsExt, _duration, _range, _shield, _channel; local tooltip = getglobal("HealBot_ScanTooltip"); @@ -791,6 +816,7 @@ function HealBot_InitGetSpellData(spell, id, class) end end +-- HealBot_Generic_Patten: Internal utility: HealBot_Generic_Patten function HealBot_Generic_Patten(matchStr, matchPattern) local tmpTest, _HealsMin, _HealsMax, _HealsExt, _duration tmpTest, tmpTest, _HealsMin, _HealsMax = string.find(matchStr, matchPattern); @@ -805,10 +831,12 @@ end HealBot_ActiveShapeshiftStance = nil; +-- HealBot_UpdateShapeshiftForm: Internal utility: HealBot_UpdateShapeshiftForm function HealBot_UpdateShapeshiftForm() HealBot_ActiveShapeshiftStance = HealBot_GetShapeshiftForm(); end +-- HealBot_GetShapeshiftForm: Detects active druid form to prevent invalid casts. function HealBot_GetShapeshiftForm() local forms = GetNumShapeshiftForms(); if forms then diff --git a/HealBot_Data.lua b/HealBot_Data.lua index 15fac96..167c706 100644 --- a/HealBot_Data.lua +++ b/HealBot_Data.lua @@ -579,6 +579,7 @@ HealBot_IamRessing = false; -- Table Recycling Pool local tablePool = {} +-- HealBot_GetTable: Internal utility: HealBot_GetTable function HealBot_GetTable() local t = table.remove(tablePool) if not t then @@ -587,6 +588,7 @@ function HealBot_GetTable() return t end +-- HealBot_ReleaseTable: Internal utility: HealBot_ReleaseTable function HealBot_ReleaseTable(t) if type(t) == "table" then for k in pairs(t) do diff --git a/HealBot_Errors.lua b/HealBot_Errors.lua index 6049ecb..426c3d2 100644 --- a/HealBot_Errors.lua +++ b/HealBot_Errors.lua @@ -1,7 +1,9 @@ +-- HealBot_Errors_OnLoad: Internal utility: HealBot_Errors_OnLoad function HealBot_Errors_OnLoad(this) -- do nothing end +-- HealBot_Errors_OnShow: Show event handler. function HealBot_Errors_OnShow(this) local client = getglobal("HealBot_Error_Clientx") client:SetText("Client="..GetLocale()) @@ -9,6 +11,7 @@ function HealBot_Errors_OnShow(this) HealBot_Error_Classx:SetText("Player class="..HealBot_UnitClass("player")) end +-- HealBot_Errors_OnHide: Hide event handler. function HealBot_Errors_OnHide(this) local errtext; HealBot_StopMoving(this); @@ -19,14 +22,17 @@ function HealBot_Errors_OnHide(this) HealBot_ErrorCnt=0; end +-- HealBot_Errors_OnDragStart: Internal utility: HealBot_Errors_OnDragStart function HealBot_Errors_OnDragStart(this,arg1) HealBot_StartMoving(this); end +-- HealBot_Errors_OnDragStop: Internal utility: HealBot_Errors_OnDragStop function HealBot_Errors_OnDragStop(this) HealBot_StopMoving(this); end +-- HealBot_ErrorsIn: Internal utility: HealBot_ErrorsIn function HealBot_ErrorsIn(msg,id) local errtext = getglobal("HealBot_Error"..id); errtext:SetText(msg) diff --git a/HealBot_Integrations.lua b/HealBot_Integrations.lua index 0a1a24b..f0f8cfb 100644 --- a/HealBot_Integrations.lua +++ b/HealBot_Integrations.lua @@ -3,6 +3,7 @@ HealBot_Integrations_Nampower_Active = false; HealBot_Integrations_SuperWoW_Active = false; HealBot_Integrations_ClassicAPI_Active = false; +-- HealBot_GetUnitGUID: Internal utility: HealBot_GetUnitGUID function HealBot_GetUnitGUID(unit) if not unit then return nil end if HealBot_Integrations_ClassicAPI_Active and UnitGUID then @@ -13,6 +14,7 @@ function HealBot_GetUnitGUID(unit) return nil end +-- HealBot_Integrations_Toggle: Enables or disables external addon APIs on load/click. function HealBot_Integrations_Toggle() -- UnitXP if HealBot_Config.HealBot_Integrations_UnitXP == 1 and UnitXP ~= nil then diff --git a/HealBot_Model.lua b/HealBot_Model.lua index 830e2c5..f808ce5 100644 --- a/HealBot_Model.lua +++ b/HealBot_Model.lua @@ -15,6 +15,7 @@ function HealBot_UIDropDownMenu_SetSelectedID(frame, id, useValue) end end +-- HealBot_UIDropDownMenu_SetSelectedValue: Internal utility: HealBot_UIDropDownMenu_SetSelectedValue function HealBot_UIDropDownMenu_SetSelectedValue(frame, value, useValue) local wasNil = false if not UIDROPDOWNMENU_OPEN_MENU then @@ -55,6 +56,7 @@ HealBot_Model = { -- "EQUIPMENT_CHANGED" -- "INCOMING_HEAL_CHANGED" +-- HealBot_Model:RegisterObserver: Registers an observer callback for an event. function HealBot_Model:RegisterObserver(event, callback) if not self.observers[event] then self.observers[event] = {} @@ -62,6 +64,7 @@ function HealBot_Model:RegisterObserver(event, callback) table.insert(self.observers[event], callback) end +-- HealBot_Model:NotifyObservers: Fires all registered callbacks for an event. function HealBot_Model:NotifyObservers(event, unitID, arg1, arg2) if self.observers[event] then local len = table.getn(self.observers[event]) @@ -75,6 +78,7 @@ end -- Model Initialization -------------------------------------------------------------------------------- +-- HealBot_Model:Initialize: Pre-allocates the unit state dictionary. function HealBot_Model:Initialize() self:InitUnitState("player") self:InitUnitState("target") @@ -93,6 +97,7 @@ function HealBot_Model:Initialize() end end +-- HealBot_Model:InitUnitState: Internal utility: HealBot_Model:InitUnitState function HealBot_Model:InitUnitState(unit) if not self.units[unit] then self.units[unit] = { @@ -156,11 +161,13 @@ function HealBot_Model:UpdateUnitIdentity(unit) return false end +-- HealBot_Model:GetUnitByGUID: Internal utility: HealBot_Model:GetUnitByGUID function HealBot_Model:GetUnitByGUID(guid) if not guid then return nil end return self.guidUnits[guid] end +-- HealBot_Model:GetUnitIDByName: Looks up a group unit token by player name. function HealBot_Model:GetUnitIDByName(name) if not name then return nil end for unit, data in pairs(self.units) do @@ -169,6 +176,7 @@ function HealBot_Model:GetUnitIDByName(name) return nil end +-- HealBot_Model:PreserveStateByGUID: Preserves icon and debuff state when group indices shift during combat. function HealBot_Model:PreserveStateByGUID() if not (HealBot_Integrations_SuperWoW_Active or HealBot_Integrations_ClassicAPI_Active) or not HealBot_GetUnitGUID then return end diff --git a/HealBot_Options.lua b/HealBot_Options.lua index 815af55..e796ad1 100644 --- a/HealBot_Options.lua +++ b/HealBot_Options.lua @@ -14,10 +14,12 @@ HealBot_Options_EmergencyFilter_List = { HEALBOT_OPTIONS_MONITORCUSTOM, } +-- HealBot_Options_AddDebug: UI handler for AddDebug options panel. function HealBot_Options_AddDebug(msg) HealBot_AddDebug("Options: " .. msg); end +-- HealBot_Options_Pct_OnLoad: UI handler for OnLoad options panel. function HealBot_Options_Pct_OnLoad(this,text) this.text = text; getglobal(this:GetName().."Text"):SetText(text); @@ -27,6 +29,7 @@ function HealBot_Options_Pct_OnLoad(this,text) this:SetValueStep(0.01); end +-- HealBot_Options_Pct_OnLoad_MinMax: UI handler for MinMax options panel. function HealBot_Options_Pct_OnLoad_MinMax(this,text,Min,Max) this.text = text; local MinTxt,MaxTxt @@ -41,6 +44,7 @@ function HealBot_Options_Pct_OnLoad_MinMax(this,text,Min,Max) this:SetValueStep(0.01); end +-- HealBot_Options_val_OnLoad: UI handler for OnLoad options panel. function HealBot_Options_val_OnLoad(this,text,Min,Max) this.text = text; @@ -51,6 +55,7 @@ function HealBot_Options_val_OnLoad(this,text,Min,Max) this:SetValueStep(1); end +-- HealBot_Options_Pct_OnValueChanged: UI handler for OnValueChanged options panel. function HealBot_Options_Pct_OnValueChanged(this) local pct = math.floor(this:GetValue()*100+0.5); getglobal(this:GetName().."Text"):SetText(this.text .. " (" .. pct .. "%)"); @@ -106,10 +111,12 @@ end +-- HealBot_Options_CastNotify_OnLoad: UI handler for OnLoad options panel. function HealBot_Options_CastNotify_OnLoad(this,text) getglobal(this:GetName().."Text"):SetText(text); end +-- HealBot_Options_CastNotify_OnClick: UI handler for OnClick options panel. function HealBot_Options_CastNotify_OnClick(this,id) -- CastNotify UI elements were removed and replaced by Custom Chat Messages end @@ -147,6 +154,7 @@ end -------------------------------------------------------------------------------- +-- HealBot_Returned_Colours: Internal utility: HealBot_Returned_Colours function HealBot_Returned_Colours() local A = OpacitySliderFrame:GetValue(); A = ((0-A)+1); @@ -188,6 +196,7 @@ function HealBot_Returned_Colours() HealBot_SetSkinColours() HealBot_SetCDCBarColours() end +-- HealBot_UseColourPick: Internal utility: HealBot_UseColourPick function HealBot_UseColourPick(R, G, B, A) if ColorPickerFrame:IsVisible() then ColorPickerFrame:Hide(); @@ -208,6 +217,7 @@ function HealBot_UseColourPick(R, G, B, A) end return ColorPickerFrame:GetColorRGB(); end +-- HealBot_Options_Defaults_OnClick: UI handler for OnClick options panel. function HealBot_Options_Defaults_OnClick(this) HealBot_Options_CastNotify_OnClick(nil,0); -- HealBot_Config = HealBot_ConfigDefaults; @@ -219,6 +229,7 @@ function HealBot_Options_Defaults_OnClick(this) HealBot_Action_Reset(); HealBot_Config.ActionVisible = HealBot_Action:IsVisible(); end +-- HealBot_Options_OnLoad: UI handler for OnLoad options panel. function HealBot_Options_OnLoad(this) table.insert(UISpecialFrames,this:GetName()); @@ -228,6 +239,7 @@ function HealBot_Options_OnLoad(this) PanelTemplates_UpdateTabs(this); HealBot_Options_ShowPanel(this.selectedTab); end +-- HealBot_Options_OnShow: UI handler for OnShow options panel. function HealBot_Options_OnShow(this) HealBot_Skins = HealBot_Config.Skins; HealBot_Options_SetSkins() @@ -295,6 +307,7 @@ function HealBot_Options_OnShow(this) HealBot_Options_SetChatMessages(); HealBot_Options_ShowPanel(this.selectedTab or 1); end +-- HealBot_Options_SetSkins: UI handler for SetSkins options panel. function HealBot_Options_SetSkins() HealBot_Options_Skins_Refresh() HealBot_Options_BarAlpha:SetValue(HealBot_Config.Barcola[HealBot_Config.Current_Skin]); @@ -334,6 +347,7 @@ function HealBot_Options_SetSkins() HealBot_Options_DeleteSkin:Enable(); end end +-- HealBot_Options_ShowPanel: UI handler for ShowPanel options panel. function HealBot_Options_ShowPanel(id) if HealBot_Options_CurrentPanel>0 then local panel = getglobal("HealBot_Options_Panel"..HealBot_Options_CurrentPanel); diff --git a/HealBot_Options_Auto.lua b/HealBot_Options_Auto.lua index 2ebe79c..6790c7f 100644 --- a/HealBot_Options_Auto.lua +++ b/HealBot_Options_Auto.lua @@ -1,3 +1,4 @@ +-- HealBot_Options_AutoSwap_OnClick: UI handler for OnClick options panel. function HealBot_Options_AutoSwap_OnClick(this) if this:GetChecked() then HealBot_Config.AutoSwap_Enabled = 1 @@ -7,6 +8,7 @@ function HealBot_Options_AutoSwap_OnClick(this) HealBot_Action_PartyChanged() end +-- HealBot_Options_Auto_Initialize: UI handler for Initialize options panel. function HealBot_Options_Auto_Initialize() local dropdownName = UIDROPDOWNMENU_OPEN_MENU if not dropdownName then return end @@ -30,6 +32,7 @@ function HealBot_Options_Auto_Initialize() end end +-- HealBot_Options_Auto_OnSelect: UI handler for OnSelect options panel. function HealBot_Options_Auto_OnSelect() local skin = this:GetText() local id = this.value @@ -53,6 +56,7 @@ function HealBot_Options_Auto_OnSelect() HealBot_Action_PartyChanged() end +-- HealBot_Options_Auto_OnShow: UI handler for OnShow options panel. function HealBot_Options_Auto_OnShow(this) if HealBot_Config.AutoSwap_Enabled == 1 then HealBot_Options_AutoSwap:SetChecked(1) diff --git a/HealBot_Options_Buffs.lua b/HealBot_Options_Buffs.lua index f86e30c..417843d 100644 --- a/HealBot_Options_Buffs.lua +++ b/HealBot_Options_Buffs.lua @@ -1,6 +1,7 @@ -- HealBot Options panel file: HealBot_Options_Buffs.lua -- Split from original HealBot_Options.lua +-- HealBot_Options_BuffWatch_OnClick: UI handler for OnClick options panel. function HealBot_Options_BuffWatch_OnClick(self) local frame = self or this HealBot_Config.BuffWatch = frame:GetChecked() or 0; @@ -11,11 +12,13 @@ function HealBot_Options_BuffWatch_OnClick(self) end HealBot_RecalcParty(); end +-- HealBot_Options_BuffWatchInCombat_OnClick: UI handler for OnClick options panel. function HealBot_Options_BuffWatchInCombat_OnClick(self) local frame = self or this HealBot_Config.BuffWatchInCombat = frame:GetChecked() or 0; HealBot_RecalcParty(); end +-- HealBot_Options_BuffSelf_OnLoad: UI handler for OnLoad options panel. function HealBot_Options_BuffSelf_OnLoad(self) local frame = self or this getglobal(this:GetName().."Text"):SetText("Self Only") @@ -27,6 +30,7 @@ function HealBot_Options_BuffSelf_OnLoad(self) this:SetChecked(nil) end end +-- HealBot_Options_BuffSelf_OnClick: UI handler for OnClick options panel. function HealBot_Options_BuffSelf_OnClick(self) local frame = self or this local id = this:GetID() @@ -40,11 +44,13 @@ function HealBot_Options_BuffSelf_OnClick(self) end HealBot_RecalcParty(); end +-- HealBot_Options_Buff_OnLoad: UI handler for OnLoad options panel. function HealBot_Options_Buff_OnLoad(self) local frame = self or this UIDropDownMenu_Initialize(frame, HealBot_Options_Buff_Initialize) UIDropDownMenu_SetWidth(110, frame) end +-- HealBot_Options_Buff_Initialize: UI handler for Initialize options panel. function HealBot_Options_Buff_Initialize() local myClass = UnitClass("player") local info @@ -63,6 +69,7 @@ function HealBot_Options_Buff_Initialize() end end end +-- HealBot_Options_Buff_OnClick: UI handler for OnClick options panel. function HealBot_Options_Buff_OnClick() local frameName = UIDROPDOWNMENU_OPEN_MENU local frame = getglobal(frameName) @@ -82,6 +89,7 @@ function HealBot_Options_Buff_OnClick() UIDropDownMenu_SetText(text, frame) HealBot_RecalcParty(); end +-- HealBot_Options_SetBuffs: UI handler for SetBuffs options panel. function HealBot_Options_SetBuffs() local myClass = UnitClass("player") if HealBot_Options_BuffWatch then diff --git a/HealBot_Options_CDC.lua b/HealBot_Options_CDC.lua index 854bc9f..23dbf09 100644 --- a/HealBot_Options_CDC.lua +++ b/HealBot_Options_CDC.lua @@ -1,15 +1,19 @@ -- HealBot Options panel file: HealBot_Options_CDC.lua -- Split from original HealBot_Options.lua +-- HealBot_Options_ShowDebuffWarning_OnLoad: UI handler for OnLoad options panel. function HealBot_Options_ShowDebuffWarning_OnLoad(this,text) getglobal(this:GetName().."Text"):SetText(text); end +-- HealBot_Options_ShowDebuffWarning_OnClick: UI handler for OnClick options panel. function HealBot_Options_ShowDebuffWarning_OnClick(this) HealBot_Config.ShowDebuffWarning = this:GetChecked() or 0; end +-- HealBot_Options_SoundDebuffWarning_OnLoad: UI handler for OnLoad options panel. function HealBot_Options_SoundDebuffWarning_OnLoad(this,text) getglobal(this:GetName().."Text"):SetText(text); end +-- HealBot_Options_SoundDebuffWarning_OnClick: UI handler for OnClick options panel. function HealBot_Options_SoundDebuffWarning_OnClick(this) HealBot_Config.SoundDebuffWarning = this:GetChecked() or 0; if HealBot_Config.SoundDebuffWarning==0 then @@ -22,9 +26,11 @@ function HealBot_Options_SoundDebuffWarning_OnClick(this) HealBot_WarningSound3:Enable(); end end +-- HealBot_WarningSound_OnLoad: Internal utility: HealBot_WarningSound_OnLoad function HealBot_WarningSound_OnLoad(this,text) getglobal(this:GetName().."Text"):SetText(text); end +-- HealBot_WarningSound_OnClick: Click event handler. function HealBot_WarningSound_OnClick(this,id) if HealBot_Config.SoundDebuffPlay>0 then getglobal("HealBot_WarningSound"..HealBot_Config.SoundDebuffPlay):SetChecked(nil); @@ -37,6 +43,7 @@ function HealBot_WarningSound_OnClick(this,id) end end end +-- HealBot_Options_CDCMonitor_DropDown: UI handler for DropDown options panel. function HealBot_Options_CDCMonitor_DropDown() for i=1, getn(HealBot_Options_EmergencyFilter_List), 1 do local info = {}; @@ -45,23 +52,28 @@ function HealBot_Options_CDCMonitor_DropDown() UIDropDownMenu_AddButton(info); end end +-- HealBot_Options_CDCMonitor_Initialize: UI handler for Initialize options panel. function HealBot_Options_CDCMonitor_Initialize() UIDropDownMenu_Initialize(HealBot_Options_CDCMonitor,HealBot_Options_CDCMonitor_DropDown) end +-- HealBot_Options_CDCMonitor_Refresh: UI handler for Refresh options panel. function HealBot_Options_CDCMonitor_Refresh(onselect) if not HealBot_Config.CDCMonitor then return end if not onselect then HealBot_Options_CDCMonitor_Initialize() end -- or wrong menu may be used ! HealBot_UIDropDownMenu_SetSelectedID(HealBot_Options_CDCMonitor,HealBot_Config.CDCMonitor) end +-- HealBot_Options_CDCMonitor_OnLoad: UI handler for OnLoad options panel. function HealBot_Options_CDCMonitor_OnLoad() UIDropDownMenu_Initialize(this, HealBot_Options_CDCMonitor_DropDown) UIDropDownMenu_SetWidth(100, this) end +-- HealBot_Options_CDCMonitor_OnSelect: UI handler for OnSelect options panel. function HealBot_Options_CDCMonitor_OnSelect() HealBot_Config.CDCMonitor = this:GetID() HealBot_Options_CDCMonitor_Refresh(true) HealBot_Options_CDCMonitor_Reset() end +-- HealBot_Options_CDCMonitor_Reset: UI handler for Reset options panel. function HealBot_Options_CDCMonitor_Reset() HealBot_CDCInc[HEALBOT_DRUID] = 0; @@ -145,10 +157,12 @@ function HealBot_Options_CDCMonitor_Reset() HealBot_Action_PartyChanged() end +-- HealBot_Options_GetDebuffSpells_List: UI handler for List options panel. function HealBot_Options_GetDebuffSpells_List(class) local DebuffSpells = HealBot_Debuff_Spells[class]; return DebuffSpells; end +-- HealBot_Options_CDCButLeft_DropDown: UI handler for DropDown options panel. function HealBot_Options_CDCButLeft_DropDown() local classEN=HealBot_UnitClass("player") if classEN=="PRIEST" or classEN=="DRUID" or classEN=="PALADIN" or classEN=="SHAMAN" then @@ -169,6 +183,7 @@ function HealBot_Options_CDCButLeft_DropDown() end end end +-- HealBot_Options_CDCButRight_DropDown: UI handler for DropDown options panel. function HealBot_Options_CDCButRight_DropDown() local classEN=HealBot_UnitClass("player") if classEN=="PRIEST" or classEN=="DRUID" or classEN=="PALADIN" or classEN=="SHAMAN" then @@ -189,12 +204,15 @@ function HealBot_Options_CDCButRight_DropDown() end end end +-- HealBot_Options_CDCButLeft_Initialize: UI handler for Initialize options panel. function HealBot_Options_CDCButLeft_Initialize() UIDropDownMenu_Initialize(HealBot_Options_CDCButLeft,HealBot_Options_CDCButLeft_DropDown) end +-- HealBot_Options_CDCButRight_Initialize: UI handler for Initialize options panel. function HealBot_Options_CDCButRight_Initialize() UIDropDownMenu_Initialize(HealBot_Options_CDCButRight,HealBot_Options_CDCButRight_DropDown) end +-- HealBot_Options_CDCButLeft_Refresh: UI handler for Refresh options panel. function HealBot_Options_CDCButLeft_Refresh(onselect) local set_id=1; local class=UnitClass("Player"); @@ -202,6 +220,7 @@ function HealBot_Options_CDCButLeft_Refresh(onselect) set_id = HealBot_Config.Debuff_Left[class]; HealBot_UIDropDownMenu_SetSelectedID(HealBot_Options_CDCButLeft,set_id) end +-- HealBot_Options_CDCButRight_Refresh: UI handler for Refresh options panel. function HealBot_Options_CDCButRight_Refresh(onselect) local set_id; local class=UnitClass("Player"); @@ -209,14 +228,17 @@ function HealBot_Options_CDCButRight_Refresh(onselect) set_id = HealBot_Config.Debuff_Right[class]; HealBot_UIDropDownMenu_SetSelectedID(HealBot_Options_CDCButRight,set_id) end +-- HealBot_Options_CDCButLeft_OnLoad: UI handler for OnLoad options panel. function HealBot_Options_CDCButLeft_OnLoad() UIDropDownMenu_Initialize(this, HealBot_Options_CDCButLeft_DropDown) UIDropDownMenu_SetWidth(140, this) end +-- HealBot_Options_CDCButRight_OnLoad: UI handler for OnLoad options panel. function HealBot_Options_CDCButRight_OnLoad() UIDropDownMenu_Initialize(this, HealBot_Options_CDCButRight_DropDown) UIDropDownMenu_SetWidth(140, this) end +-- HealBot_Options_CDCButLeft_OnSelect: UI handler for OnSelect options panel. function HealBot_Options_CDCButLeft_OnSelect() local class=UnitClass("Player"); HealBot_Config.Debuff_Left[class] = this:GetID(); @@ -228,6 +250,7 @@ function HealBot_Options_CDCButLeft_OnSelect() HealBot_DebuffPriority = HealBot_Debuff_Types[HealBot_Options_CDCButLeftText:GetText()]; HealBot_Options_Debuff_Reset() end +-- HealBot_Options_CDCButRight_OnSelect: UI handler for OnSelect options panel. function HealBot_Options_CDCButRight_OnSelect() local class=UnitClass("Player"); HealBot_Config.Debuff_Right[class] = this:GetID(); @@ -238,11 +261,13 @@ function HealBot_Options_CDCButRight_OnSelect() end HealBot_Options_Debuff_Reset() end +-- HealBot_Options_CDC_SetCombo: UI handler for SetCombo options panel. function HealBot_Options_CDC_SetCombo(spell, button, class) local combo = HealBot_Config.KeyCombo[class] combo["Alt"..button] = spell HealBot_Options_KeyCombo_Change() end +-- HealBot_Options_Debuff_Reset: Restores default debuff tracking options. function HealBot_Options_Debuff_Reset() HealBot_DebuffWatch = { [HEALBOT_DISEASE_en] = true, @@ -251,10 +276,12 @@ function HealBot_Options_Debuff_Reset() [HEALBOT_CURSE_en] = true } end +-- HealBot_Colorpick_OnClick: Opens color picker for debuff colors. function HealBot_Colorpick_OnClick(CDCType) HealBot_ColourObjWaiting=CDCType; HealBot_UseColourPick(HealBot_Config.CDCBarColour[CDCType].R,HealBot_Config.CDCBarColour[CDCType].G,HealBot_Config.CDCBarColour[CDCType].B, nil) end +-- HealBot_SetCDCBarColours: Internal utility: HealBot_SetCDCBarColours function HealBot_SetCDCBarColours() HealBot_DiseaseColorpick:SetStatusBarColor(HealBot_Config.CDCBarColour[HEALBOT_DISEASE_en].R, HealBot_Config.CDCBarColour[HEALBOT_DISEASE_en].G, diff --git a/HealBot_Options_Chat.lua b/HealBot_Options_Chat.lua index 7e49fa3..a97ad4c 100644 --- a/HealBot_Options_Chat.lua +++ b/HealBot_Options_Chat.lua @@ -1,6 +1,7 @@ -- HealBot Options panel file: HealBot_Options_Chat.lua -- Split from original HealBot_Options.lua +-- HealBot_Options_ChatMsg_Channel_OnClick: UI handler for OnClick options panel. function HealBot_Options_ChatMsg_Channel_OnClick(id, buttonFrame) if not HealBot_Config.ChatMessages then HealBot_Config.ChatMessages = {} end if not HealBot_Config.ChatMessages[id] then @@ -26,6 +27,7 @@ function HealBot_Options_ChatMsg_Channel_OnClick(id, buttonFrame) buttonFrame:SetText(nextChan) end +-- HealBot_Options_SetChatMessages: UI handler for SetChatMessages options panel. function HealBot_Options_SetChatMessages() if not HealBot_Config.ChatMessages then HealBot_Config.ChatMessages = {} diff --git a/HealBot_Options_General.lua b/HealBot_Options_General.lua index 89eb156..2a4def1 100644 --- a/HealBot_Options_General.lua +++ b/HealBot_Options_General.lua @@ -1,75 +1,91 @@ -- HealBot Options panel file: HealBot_Options_General.lua -- Split from original HealBot_Options.lua +-- HealBot_Options_ShowHeaders_OnLoad: UI handler for OnLoad options panel. function HealBot_Options_ShowHeaders_OnLoad(this) getglobal(this:GetName().."Text"):SetText(HEALBOT_OPTIONS_SHOWHEADERS); end +-- HealBot_Options_ShowHeaders_OnClick: UI handler for OnClick options panel. function HealBot_Options_ShowHeaders_OnClick(this) local isChecked = this:GetChecked() HealBot_Config.ShowHeader[HealBot_Config.Current_Skin] = isChecked and 1 or 0; HealBot_Action_ResetSkin() end +-- HealBot_Options_BarTextureS_OnValueChanged: UI handler for OnValueChanged options panel. function HealBot_Options_BarTextureS_OnValueChanged(this) HealBot_Config.btexture[HealBot_Config.Current_Skin] = this:GetValue(); getglobal(this:GetName().."Text"):SetText(this.text .. ": " .. this:GetValue()); HealBot_Action_ResetSkin() end +-- HealBot_Options_BarHeightS_OnValueChanged: UI handler for OnValueChanged options panel. function HealBot_Options_BarHeightS_OnValueChanged(this) HealBot_Config.bheight[HealBot_Config.Current_Skin] = this:GetValue(); getglobal(this:GetName().."Text"):SetText(this.text .. ": " .. this:GetValue()); HealBot_Action_ResetSkin() end +-- HealBot_Options_BarWidthS_OnValueChanged: UI handler for OnValueChanged options panel. function HealBot_Options_BarWidthS_OnValueChanged(this) HealBot_Config.bwidth[HealBot_Config.Current_Skin] = this:GetValue(); getglobal(this:GetName().."Text"):SetText(this.text .. ": " .. this:GetValue()); HealBot_Action_ResetSkin() end +-- HealBot_Options_BarNumColsS_OnValueChanged: UI handler for OnValueChanged options panel. function HealBot_Options_BarNumColsS_OnValueChanged(this) HealBot_Config.numcols[HealBot_Config.Current_Skin] = this:GetValue(); getglobal(this:GetName().."Text"):SetText(this.text .. ": " .. this:GetValue()); HealBot_Action_ResetSkin() end +-- HealBot_Options_BarBRSpaceS_OnValueChanged: UI handler for OnValueChanged options panel. function HealBot_Options_BarBRSpaceS_OnValueChanged(this) HealBot_Config.brspace[HealBot_Config.Current_Skin] = this:GetValue(); getglobal(this:GetName().."Text"):SetText(this.text .. ": " .. this:GetValue()); HealBot_Action_ResetSkin() end +-- HealBot_Options_BarBCSpaceS_OnValueChanged: UI handler for OnValueChanged options panel. function HealBot_Options_BarBCSpaceS_OnValueChanged(this) HealBot_Config.bcspace[HealBot_Config.Current_Skin] = this:GetValue(); getglobal(this:GetName().."Text"):SetText(this.text .. ": " .. this:GetValue()); HealBot_Action_ResetSkin() end +-- HealBot_Options_FontHeight_OnValueChanged: UI handler for OnValueChanged options panel. function HealBot_Options_FontHeight_OnValueChanged(this) HealBot_Config.btextheight[HealBot_Config.Current_Skin] = this:GetValue(); getglobal(this:GetName().."Text"):SetText(this.text .. ": " .. this:GetValue()); HealBot_Action_ResetSkin() end +-- HealBot_Options_IconSizeS_OnValueChanged: UI handler for OnValueChanged options panel. function HealBot_Options_IconSizeS_OnValueChanged(this) HealBot_Config.biconsize[HealBot_Config.Current_Skin] = this:GetValue(); getglobal(this:GetName().."Text"):SetText(this.text .. ": " .. this:GetValue()); HealBot_Action_ResetSkin() end +-- HealBot_Options_AbortBarSize_OnValueChanged: UI handler for OnValueChanged options panel. function HealBot_Options_AbortBarSize_OnValueChanged(this) HealBot_Config.abortsize[HealBot_Config.Current_Skin] = this:GetValue(); getglobal(this:GetName().."Text"):SetText(this.text .. ": " .. this:GetValue()); HealBot_Action_ResetSkin() end +-- HealBot_Options_ActionAlpha_OnValueChanged: UI handler for OnValueChanged options panel. function HealBot_Options_ActionAlpha_OnValueChanged(this) HealBot_Config.backcola[HealBot_Config.Current_Skin] = HealBot_Options_Pct_OnValueChanged(this); HealBot_Action_ResetSkin() end +-- HealBot_Options_BarAlpha_OnValueChanged: UI handler for OnValueChanged options panel. function HealBot_Options_BarAlpha_OnValueChanged(this) HealBot_Config.Barcola[HealBot_Config.Current_Skin] = HealBot_Options_Pct_OnValueChanged(this); HealBot_Action_ResetSkin() end +-- HealBot_Options_BarAlphaInHeal_OnValueChanged: UI handler for OnValueChanged options panel. function HealBot_Options_BarAlphaInHeal_OnValueChanged(this) HealBot_Config.BarcolaInHeal[HealBot_Config.Current_Skin] = HealBot_Options_Pct_OnValueChanged(this); HealBot_Action_ResetSkin() end +-- HealBot_Options_BarAlphaDis_OnValueChanged: UI handler for OnValueChanged options panel. function HealBot_Options_BarAlphaDis_OnValueChanged(this) HealBot_Config.bardisa[HealBot_Config.Current_Skin] = HealBot_Options_Pct_OnValueChanged(this); HealBot_Action_ResetSkin() end +-- HealBot_SkinColorpick_OnClick: Opens color picker for skin customization. function HealBot_SkinColorpick_OnClick(SkinType) HealBot_ColourObjWaiting=SkinType; @@ -105,6 +121,7 @@ function HealBot_SkinColorpick_OnClick(SkinType) HealBot_Config.babortcola[HealBot_Config.Current_Skin]) end end +-- HealBot_SetSkinColours: Applies skin configuration to UI elements. function HealBot_SetSkinColours() -- Cache the current skin configuration for performance and readability local skin = HealBot_Config.Current_Skin @@ -202,76 +219,97 @@ function HealBot_SetSkinColours() HealBot_Action_PartyChanged() end +-- HealBot_Options_AlertLevel_OnValueChanged: UI handler for OnValueChanged options panel. function HealBot_Options_AlertLevel_OnValueChanged(this) HealBot_Config.AlertLevel = HealBot_Options_Pct_OnValueChanged(this); HealBot_Action_Refresh(); end +-- HealBot_Options_AutoShow_OnLoad: UI handler for OnLoad options panel. function HealBot_Options_AutoShow_OnLoad(this) getglobal(this:GetName().."Text"):SetText(HEALBOT_OPTIONS_AUTOSHOW); end +-- HealBot_Options_AutoShow_OnClick: UI handler for OnClick options panel. function HealBot_Options_AutoShow_OnClick(this) HealBot_Config.AutoClose = this:GetChecked() or 0; HealBot_Action_Refresh(); end +-- HealBot_Options_PanelSounds_OnLoad: UI handler for OnLoad options panel. function HealBot_Options_PanelSounds_OnLoad(this) getglobal(this:GetName().."Text"):SetText(HEALBOT_OPTIONS_PANELSOUNDS); end +-- HealBot_Options_PanelSounds_OnClick: UI handler for OnClick options panel. function HealBot_Options_PanelSounds_OnClick(this) HealBot_Config.PanelSounds = this:GetChecked() or 0; end +-- HealBot_Options_ActionMouseover_OnLoad: UI handler for OnLoad options panel. function HealBot_Options_ActionMouseover_OnLoad(this, text) getglobal(this:GetName().."Text"):SetText(text); end +-- HealBot_Options_ActionMouseover_OnClick: UI handler for OnClick options panel. function HealBot_Options_ActionMouseover_OnClick(this) HealBot_Config.ActionMouseover = this:GetChecked() or 0; end +-- HealBot_Options_ActionLocked_OnLoad: UI handler for OnLoad options panel. function HealBot_Options_ActionLocked_OnLoad(this) getglobal(this:GetName().."Text"):SetText(HEALBOT_OPTIONS_ACTIONLOCKED); end +-- HealBot_Options_ActionLocked_OnClick: UI handler for OnClick options panel. function HealBot_Options_ActionLocked_OnClick(this) HealBot_Config.ActionLocked = this:GetChecked() or 0; end +-- HealBot_Options_HideOptions_OnLoad: UI handler for OnLoad options panel. function HealBot_Options_HideOptions_OnLoad(this,text) getglobal(this:GetName().."Text"):SetText(text); end +-- HealBot_Options_HideOptions_OnClick: UI handler for OnClick options panel. function HealBot_Options_HideOptions_OnClick(this) HealBot_Config.HideOptions = this:GetChecked() or 0; HealBot_Action_PartyChanged(); end +-- HealBot_Options_HideAbort_OnLoad: UI handler for OnLoad options panel. function HealBot_Options_HideAbort_OnLoad(this,text) getglobal(this:GetName().."Text"):SetText(text); end +-- HealBot_Options_HideAbort_OnClick: UI handler for OnClick options panel. function HealBot_Options_HideAbort_OnClick(this) HealBot_Config.HideAbort = this:GetChecked() or 0; HealBot_Action_PartyChanged(); end +-- HealBot_Options_GrowUpwards_OnLoad: UI handler for OnLoad options panel. function HealBot_Options_GrowUpwards_OnLoad(this,text) getglobal(this:GetName().."Text"):SetText(text); end +-- HealBot_Options_GrowUpwards_OnClick: UI handler for OnClick options panel. function HealBot_Options_GrowUpwards_OnClick(this) HealBot_Config.GrowUpwards = this:GetChecked() or 0; HealBot_Action_PartyChanged(); end +-- HealBot_Options_QualityRange_OnLoad: UI handler for OnLoad options panel. function HealBot_Options_QualityRange_OnLoad(this,text) getglobal(this:GetName().."Text"):SetText(text); end +-- HealBot_Options_QualityRange_OnClick: UI handler for OnClick options panel. function HealBot_Options_QualityRange_OnClick(this) HealBot_Config.QualityRange = this:GetChecked() or 0; HealBot_Action_PartyChanged(); end +-- HealBot_Options_ProtectPvP_OnLoad: UI handler for OnLoad options panel. function HealBot_Options_ProtectPvP_OnLoad(this,text) getglobal(this:GetName().."Text"):SetText(text); end +-- HealBot_Options_ProtectPvP_OnClick: UI handler for OnClick options panel. function HealBot_Options_ProtectPvP_OnClick(this) HealBot_Config.ProtectPvP = this:GetChecked() or 0; HealBot_Action_Refresh(); end +-- HealBot_Options_FramePaddingS_OnValueChanged: UI handler for OnValueChanged options panel. function HealBot_Options_FramePaddingS_OnValueChanged(this) if not HealBot_Config.bpadding then HealBot_Config.bpadding = {} end HealBot_Config.bpadding[HealBot_Config.Current_Skin] = this:GetValue(); getglobal(this:GetName().."Text"):SetText(this.text .. ": " .. this:GetValue()); HealBot_Action_ResetSkin() end +-- HealBot_Options_BorderThicknessS_OnValueChanged: UI handler for OnValueChanged options panel. function HealBot_Options_BorderThicknessS_OnValueChanged(this) if not HealBot_Config.bboffset then HealBot_Config.bboffset = {} end HealBot_Config.bboffset[HealBot_Config.Current_Skin] = this:GetValue(); @@ -279,15 +317,18 @@ function HealBot_Options_BorderThicknessS_OnValueChanged(this) HealBot_Action_ResetSkin() end +-- HealBot_Options_HideParty_OnLoad: UI handler for OnLoad options panel. function HealBot_Options_HideParty_OnLoad(this, text) getglobal(this:GetName().."Text"):SetText(text); end +-- HealBot_Options_HideParty_OnClick: UI handler for OnClick options panel. function HealBot_Options_HideParty_OnClick(this) HealBot_Config.HideParty = this:GetChecked() or 0; HealBot_Options_TogglePartyFrames(); end +-- HealBot_Options_TogglePartyFrames: UI handler for TogglePartyFrames options panel. function HealBot_Options_TogglePartyFrames() if HealBot_Config.HideParty == 1 then if HidePartyFrame then HidePartyFrame(); end diff --git a/HealBot_Options_Healing.lua b/HealBot_Options_Healing.lua index 772f17b..83fe512 100644 --- a/HealBot_Options_Healing.lua +++ b/HealBot_Options_Healing.lua @@ -1,52 +1,65 @@ -- HealBot Options panel file: HealBot_Options_Healing.lua -- Split from original HealBot_Options.lua +-- HealBot_Options_GroupHeals_OnLoad: UI handler for OnLoad options panel. function HealBot_Options_GroupHeals_OnLoad(this,text) this.text = text getglobal(this:GetName().."Text"):SetText(text); end +-- HealBot_Options_GroupHeals_OnClick: UI handler for OnClick options panel. function HealBot_Options_GroupHeals_OnClick(this) HealBot_Config.GroupHeals = this:GetChecked() or 0; HealBot_RecalcParty(); end +-- HealBot_Options_TankHeals_OnLoad: UI handler for OnLoad options panel. function HealBot_Options_TankHeals_OnLoad(this,text) this.text = text getglobal(this:GetName().."Text"):SetText(text); end +-- HealBot_Options_TankHeals_OnClick: UI handler for OnClick options panel. function HealBot_Options_TankHeals_OnClick(this) HealBot_Config.TankHeals = this:GetChecked() or 0; HealBot_RecalcParty(); end +-- HealBot_Options_TargetHeals_OnLoad: UI handler for OnLoad options panel. function HealBot_Options_TargetHeals_OnLoad(this,text) this.text = text getglobal(this:GetName().."Text"):SetText(text); end +-- HealBot_Options_TargetHeals_OnClick: UI handler for OnClick options panel. function HealBot_Options_TargetHeals_OnClick(this) HealBot_Config.TargetHeals = this:GetChecked() or 0; HealBot_RecalcParty(); end +-- HealBot_Options_EmergencyHeals_OnLoad: UI handler for OnLoad options panel. function HealBot_Options_EmergencyHeals_OnLoad(this,text) this.text = text getglobal(this:GetName().."Text"):SetText(text); end +-- HealBot_Options_EmergencyHeals_OnClick: UI handler for OnClick options panel. function HealBot_Options_EmergencyHeals_OnClick(this) HealBot_Config.EmergencyHeals = this:GetChecked() or 0; HealBot_RecalcParty(); end +-- HealBot_Options_PetHeals_OnLoad: UI handler for OnLoad options panel. function HealBot_Options_PetHeals_OnLoad(this,text) this.text = text getglobal(this:GetName().."Text"):SetText(text); end +-- HealBot_Options_PetHeals_OnClick: UI handler for OnClick options panel. function HealBot_Options_PetHeals_OnClick(this) HealBot_Config.PetHeals = this:GetChecked() or 0; HealBot_RecalcParty(); end +-- HealBot_Options_OverHeal_OnValueChanged: UI handler for OnValueChanged options panel. function HealBot_Options_OverHeal_OnValueChanged(this) HealBot_Config.OverHeal = HealBot_Options_Pct_OnValueChanged(this); end +-- HealBot_Options_EFClass_OnLoad: UI handler for OnLoad options panel. function HealBot_Options_EFClass_OnLoad(this,text) getglobal(this:GetName().."Text"):SetText(text); end +-- HealBot_Options_EFClass_OnClick: UI handler for OnClick options panel. function HealBot_Options_EFClass_OnClick(this) if HealBot_Config.EmergencyFClass==1 then HealBot_Config.EmergIncMelee[HEALBOT_DRUID] = HealBot_Options_EFClassDruid:GetChecked() or 0; @@ -100,6 +113,7 @@ HealBot_Options_HealthText_List = { "Health Deficit", } +-- HealBot_Options_HealthText_DropDown: UI handler for DropDown options panel. function HealBot_Options_HealthText_DropDown() for i=1, getn(HealBot_Options_HealthText_List), 1 do local info = {}; @@ -109,11 +123,13 @@ function HealBot_Options_HealthText_DropDown() end end +-- HealBot_Options_HealthText_OnLoad: UI handler for OnLoad options panel. function HealBot_Options_HealthText_OnLoad(this) UIDropDownMenu_Initialize(this, HealBot_Options_HealthText_DropDown); UIDropDownMenu_SetWidth(110, this); end +-- HealBot_Options_HealthText_OnSelect: UI handler for OnSelect options panel. function HealBot_Options_HealthText_OnSelect() HealBot_Config.ShowHealthText = this:GetID() - 1; HealBot_UIDropDownMenu_SetSelectedID(HealBot_Options_HealthText, this:GetID()) @@ -127,6 +143,7 @@ local HealBot_Options_EmergencyFClass_List = { HEALBOT_CLASSES_CUSTOM, } +-- HealBot_Options_EmergencyFClass_DropDown: UI handler for DropDown options panel. function HealBot_Options_EmergencyFClass_DropDown() for i=1, getn(HealBot_Options_EmergencyFClass_List), 1 do local info = {}; @@ -136,27 +153,32 @@ function HealBot_Options_EmergencyFClass_DropDown() end end +-- HealBot_Options_EmergencyFClass_Initialize: UI handler for Initialize options panel. function HealBot_Options_EmergencyFClass_Initialize() UIDropDownMenu_Initialize(HealBot_Options_EmergencyFClass,HealBot_Options_EmergencyFClass_DropDown) end +-- HealBot_Options_EmergencyFClass_Refresh: UI handler for Refresh options panel. function HealBot_Options_EmergencyFClass_Refresh(onselect) if not HealBot_Config.EmergencyFClass then return end if not onselect then HealBot_Options_EmergencyFClass_Initialize() end -- or wrong menu may be used ! HealBot_UIDropDownMenu_SetSelectedID(HealBot_Options_EmergencyFClass,HealBot_Config.EmergencyFClass) end +-- HealBot_Options_EmergencyFClass_OnLoad: UI handler for OnLoad options panel. function HealBot_Options_EmergencyFClass_OnLoad() UIDropDownMenu_Initialize(this, HealBot_Options_EmergencyFClass_DropDown) UIDropDownMenu_SetWidth(100, this) end +-- HealBot_Options_EmergencyFClass_OnSelect: UI handler for OnSelect options panel. function HealBot_Options_EmergencyFClass_OnSelect() HealBot_Config.EmergencyFClass = this:GetID() HealBot_Options_EmergencyFClass_Refresh(true) HealBot_Options_EFClass_Reset() end +-- HealBot_Options_EFClass_Reset: UI handler for Reset options panel. function HealBot_Options_EFClass_Reset() if HealBot_Config.EmergencyFClass==1 then HealBot_Options_EFClassDruid:SetChecked(HealBot_Config.EmergIncMelee[HEALBOT_DRUID]); @@ -210,6 +232,7 @@ local HealBot_Options_ExtraSort_List = { HEALBOT_SORTBY_MAXHEALTH, } +-- HealBot_Options_ExtraSort_DropDown: UI handler for DropDown options panel. function HealBot_Options_ExtraSort_DropDown() for i=1, getn(HealBot_Options_ExtraSort_List), 1 do local info = {}; @@ -219,21 +242,25 @@ function HealBot_Options_ExtraSort_DropDown() end end +-- HealBot_Options_ExtraSort_Initialize: UI handler for Initialize options panel. function HealBot_Options_ExtraSort_Initialize() UIDropDownMenu_Initialize(HealBot_Options_ExtraSort,HealBot_Options_ExtraSort_DropDown) end +-- HealBot_Options_ExtraSort_Refresh: UI handler for Refresh options panel. function HealBot_Options_ExtraSort_Refresh(onselect) if not HealBot_Config.ExtraOrder then return end if not onselect then HealBot_Options_ExtraSort_Initialize() end -- or wrong menu may be used ! HealBot_UIDropDownMenu_SetSelectedID(HealBot_Options_ExtraSort,HealBot_Config.ExtraOrder) end +-- HealBot_Options_ExtraSort_OnLoad: UI handler for OnLoad options panel. function HealBot_Options_ExtraSort_OnLoad() UIDropDownMenu_Initialize(this, HealBot_Options_ExtraSort_DropDown) UIDropDownMenu_SetWidth(100, this) end +-- HealBot_Options_ExtraSort_OnSelect: UI handler for OnSelect options panel. function HealBot_Options_ExtraSort_OnSelect() HealBot_Config.ExtraOrder = this:GetID() HealBot_Options_ExtraSort_Refresh(true) @@ -242,6 +269,7 @@ end -------------------------------------------------------------------------------- +-- HealBot_Options_EmergencyFilter_DropDown: UI handler for DropDown options panel. function HealBot_Options_EmergencyFilter_DropDown() for i=1, getn(HealBot_Options_EmergencyFilter_List), 1 do local info = {}; @@ -252,11 +280,13 @@ function HealBot_Options_EmergencyFilter_DropDown() end +-- HealBot_Options_EmergencyFilter_Initialize: UI handler for Initialize options panel. function HealBot_Options_EmergencyFilter_Initialize() UIDropDownMenu_Initialize(HealBot_Options_EmergencyFilter,HealBot_Options_EmergencyFilter_DropDown) end +-- HealBot_Options_EmergencyFilter_Refresh: UI handler for Refresh options panel. function HealBot_Options_EmergencyFilter_Refresh(onselect) if not HealBot_Config.EmergIncMonitor then return end if not onselect then HealBot_Options_EmergencyFilter_Initialize() end -- or wrong menu may be used ! @@ -264,18 +294,21 @@ function HealBot_Options_EmergencyFilter_Refresh(onselect) end +-- HealBot_Options_EmergencyFilter_OnLoad: UI handler for OnLoad options panel. function HealBot_Options_EmergencyFilter_OnLoad() UIDropDownMenu_Initialize(this, HealBot_Options_EmergencyFilter_DropDown) UIDropDownMenu_SetWidth(100, this) end +-- HealBot_Options_EmergencyFilter_OnSelect: UI handler for OnSelect options panel. function HealBot_Options_EmergencyFilter_OnSelect() HealBot_Config.EmergIncMonitor = this:GetID() HealBot_Options_EmergencyFilter_Refresh(true) HealBot_Options_EmergencyFilter_Reset() end +-- HealBot_Options_EmergencyFilter_Reset: UI handler for Reset options panel. function HealBot_Options_EmergencyFilter_Reset() HealBot_EmergInc[HEALBOT_DRUID] = 0; @@ -341,15 +374,3 @@ function HealBot_Options_EmergencyFilter_Reset() HealBot_Action_PartyChanged() end - - - --------------------------------------------------------------------------------- - - - - - - --------------------------------------------------------------------------------- - diff --git a/HealBot_Options_Integrations.lua b/HealBot_Options_Integrations.lua index e8a6ecd..41cb703 100644 --- a/HealBot_Options_Integrations.lua +++ b/HealBot_Options_Integrations.lua @@ -1,3 +1,4 @@ +-- HealBot_Options_Integrations_OnShow: UI handler for OnShow options panel. function HealBot_Options_Integrations_OnShow(this) HealBot_Options_Integrations_UnitXP:SetChecked(HealBot_Config.HealBot_Integrations_UnitXP); HealBot_Options_Integrations_Nampower:SetChecked(HealBot_Config.HealBot_Integrations_Nampower); diff --git a/HealBot_Options_Skins.lua b/HealBot_Options_Skins.lua index 9a0e2a5..0c81e1d 100644 --- a/HealBot_Options_Skins.lua +++ b/HealBot_Options_Skins.lua @@ -1,12 +1,14 @@ -- HealBot Options panel file: HealBot_Options_Skins.lua -- Split from original HealBot_Options.lua +-- HealBot_Options_BarMaxRowsS_OnValueChanged: UI handler for OnValueChanged options panel. function HealBot_Options_BarMaxRowsS_OnValueChanged(this) if not HealBot_Config.bmaxrows then HealBot_Config.bmaxrows = {} end HealBot_Config.bmaxrows[HealBot_Config.Current_Skin] = this:GetValue() HealBot_Action_PartyChanged() end +-- HealBot_Options_GridOrientation_OnClick: UI handler for OnClick options panel. function HealBot_Options_GridOrientation_OnClick(this) if not HealBot_Config.GridOrientation then HealBot_Config.GridOrientation = {} end if this:GetChecked() then @@ -17,6 +19,7 @@ function HealBot_Options_GridOrientation_OnClick(this) HealBot_Action_PartyChanged() end +-- HealBot_Options_NewSkin_OnTextChanged: UI handler for OnTextChanged options panel. function HealBot_Options_NewSkin_OnTextChanged(this) local text= this:GetText() if string.len(text)>0 then @@ -25,6 +28,7 @@ function HealBot_Options_NewSkin_OnTextChanged(this) HealBot_Options_NewSkinb:Disable(); end end +-- HealBot_Options_NewSkinb_OnClick: UI handler for OnClick options panel. function HealBot_Options_NewSkinb_OnClick(this) HealBot_Config.numcols[HealBot_Options_NewSkin:GetText()] = HealBot_Config.numcols[HealBot_Config.Current_Skin] if not HealBot_Config.bmaxrows then HealBot_Config.bmaxrows = {} end @@ -73,6 +77,7 @@ function HealBot_Options_NewSkinb_OnClick(this) HealBot_Options_SetSkins() HealBot_Options_NewSkin:SetText("") end +-- HealBot_Options_DeleteSkin_OnClick: UI handler for OnClick options panel. function HealBot_Options_DeleteSkin_OnClick(this) if HealBot_Config.Current_Skin~=HEALBOT_SKINS_STD then HealBot_Config.numcols[HealBot_Options_SkinsText:GetText()] = nil @@ -120,6 +125,7 @@ function HealBot_Options_DeleteSkin_OnClick(this) HealBot_Options_SetSkins() end end +-- HealBot_Options_Skins_DropDown: UI handler for DropDown options panel. function HealBot_Options_Skins_DropDown() for i=1, getn(HealBot_Skins), 1 do local info = {}; @@ -128,18 +134,22 @@ function HealBot_Options_Skins_DropDown() UIDropDownMenu_AddButton(info); end end +-- HealBot_Options_Skins_Initialize: UI handler for Initialize options panel. function HealBot_Options_Skins_Initialize() UIDropDownMenu_Initialize(HealBot_Options_Skins,HealBot_Options_Skins_DropDown) end +-- HealBot_Options_Skins_Refresh: UI handler for Refresh options panel. function HealBot_Options_Skins_Refresh(onselect) if not HealBot_Config.Skin_ID then return end if not onselect then HealBot_Options_Skins_Initialize() end -- or wrong menu may be used ! HealBot_UIDropDownMenu_SetSelectedID(HealBot_Options_Skins,HealBot_Config.Skin_ID) end +-- HealBot_Options_Skins_OnLoad: UI handler for OnLoad options panel. function HealBot_Options_Skins_OnLoad() UIDropDownMenu_Initialize(this, HealBot_Options_Skins_DropDown) UIDropDownMenu_SetWidth(100, this) end +-- HealBot_Options_Skins_OnSelect: UI handler for OnSelect options panel. function HealBot_Options_Skins_OnSelect() HealBot_Config.Skin_ID = this:GetID() HealBot_Options_Skins_Refresh(true) diff --git a/HealBot_Options_Spells.lua b/HealBot_Options_Spells.lua index 4c63e8b..c8f962c 100644 --- a/HealBot_Options_Spells.lua +++ b/HealBot_Options_Spells.lua @@ -1,9 +1,11 @@ -- HealBot Options panel file: HealBot_Options_Spells.lua -- Split from original HealBot_Options.lua +-- HealBot_ComboButtons_Button_OnLoad: UI handler for dropdown combo box. function HealBot_ComboButtons_Button_OnLoad(this,text) getglobal(this:GetName().."Text"):SetText(text); end +-- HealBot_ComboButtons_Button_OnClick: Click event handler. function HealBot_ComboButtons_Button_OnClick(this,id) if HealBot_Options_ComboButtons_Button>0 then getglobal("HealBot_ComboButtons_Button"..HealBot_Options_ComboButtons_Button):SetChecked(nil); @@ -14,27 +16,35 @@ function HealBot_ComboButtons_Button_OnClick(this,id) end HealBot_Options_ComboClass_Text() end +-- HealBot_Options_ShowTooltip_OnLoad: UI handler for OnLoad options panel. function HealBot_Options_ShowTooltip_OnLoad(this,text) getglobal(this:GetName().."Text"):SetText(text); end +-- HealBot_Options_ShowTooltip_OnClick: UI handler for OnClick options panel. function HealBot_Options_ShowTooltip_OnClick(this) HealBot_Config.ShowTooltip = this:GetChecked() or 0; end +-- HealBot_Options_ShowTooltipTarget_OnLoad: UI handler for OnLoad options panel. function HealBot_Options_ShowTooltipTarget_OnLoad(this,text) getglobal(this:GetName().."Text"):SetText(text); end +-- HealBot_Options_ShowTooltipTarget_OnClick: UI handler for OnClick options panel. function HealBot_Options_ShowTooltipTarget_OnClick(this) HealBot_Config.Tooltip_ShowTarget = this:GetChecked() or 0; end +-- HealBot_Options_ShowTooltipSpellDetail_OnLoad: UI handler for OnLoad options panel. function HealBot_Options_ShowTooltipSpellDetail_OnLoad(this,text) getglobal(this:GetName().."Text"):SetText(text); end +-- HealBot_Options_ShowTooltipSpellDetail_OnClick: UI handler for OnClick options panel. function HealBot_Options_ShowTooltipSpellDetail_OnClick(this) HealBot_Config.Tooltip_ShowSpellDetail = this:GetChecked() or 0; end +-- HealBot_Options_ShowTooltipInstant_OnLoad: UI handler for OnLoad options panel. function HealBot_Options_ShowTooltipInstant_OnLoad(this,text) getglobal(this:GetName().."Text"):SetText(text); end +-- HealBot_Options_ShowTooltipInstant_OnClick: UI handler for OnClick options panel. function HealBot_Options_ShowTooltipInstant_OnClick(this) HealBot_Config.Tooltip_Recommend = this:GetChecked() or 0; end @@ -46,6 +56,7 @@ local HealBot_Options_TooltipPos_List = { HEALBOT_TOOLTIP_POSBELOW, } +-- HealBot_Options_TooltipPos_DropDown: UI handler for DropDown options panel. function HealBot_Options_TooltipPos_DropDown() for i=1, getn(HealBot_Options_TooltipPos_List), 1 do local info = {}; @@ -55,21 +66,25 @@ function HealBot_Options_TooltipPos_DropDown() end end +-- HealBot_Options_TooltipPos_Initialize: UI handler for Initialize options panel. function HealBot_Options_TooltipPos_Initialize() UIDropDownMenu_Initialize(HealBot_Options_TooltipPos,HealBot_Options_TooltipPos_DropDown) end +-- HealBot_Options_TooltipPos_Refresh: UI handler for Refresh options panel. function HealBot_Options_TooltipPos_Refresh(onselect) if not HealBot_Config.TooltipPos then return end if not onselect then HealBot_Options_TooltipPos_Initialize() end -- or wrong menu may be used ! HealBot_UIDropDownMenu_SetSelectedID(HealBot_Options_TooltipPos,HealBot_Config.TooltipPos) end +-- HealBot_Options_TooltipPos_OnLoad: UI handler for OnLoad options panel. function HealBot_Options_TooltipPos_OnLoad() UIDropDownMenu_Initialize(this, HealBot_Options_TooltipPos_DropDown) UIDropDownMenu_SetWidth(128, this) end +-- HealBot_Options_TooltipPos_OnSelect: UI handler for OnSelect options panel. function HealBot_Options_TooltipPos_OnSelect() HealBot_Config.TooltipPos = this:GetID() HealBot_Options_TooltipPos_Refresh(true) @@ -91,6 +106,7 @@ local HealBot_Options_ComboClass_List = { +-- HealBot_Options_ComboClass_Text: UI handler for Text options panel. function HealBot_Options_ComboClass_Text() local class=UnitClass("Player"); local combo = HealBot_Config.KeyCombo[class] @@ -108,6 +124,7 @@ end +-- HealBot_Options_ComboClass_Button: UI handler for Button options panel. function HealBot_Options_ComboClass_Button() local button = "Left" if HealBot_Options_ComboButtons_Button==2 then button = "Middle"; end @@ -128,10 +145,12 @@ ColorPickerFrame.func = HealBot_Returned_Colours -------------------------------------------------------------------------------- +-- HealBot_Options_EditBox_OnLoad: UI handler for OnLoad options panel. function HealBot_Options_EditBox_OnLoad(this,text) getglobal(this:GetName().."Text"):SetText(text); end +-- HealBot_Options_Click_OnTextChanged: UI handler for OnTextChanged options panel. function HealBot_Options_Click_OnTextChanged(this) local class=UnitClass("Player"); if not HealBot_Config.KeyCombo[class] then HealBot_Config.KeyCombo[class] = {} end @@ -141,6 +160,7 @@ function HealBot_Options_Click_OnTextChanged(this) HealBot_Options_KeyCombo_Change() end +-- HealBot_Options_Shift_OnTextChanged: UI handler for OnTextChanged options panel. function HealBot_Options_Shift_OnTextChanged(this) local class=UnitClass("Player"); if not HealBot_Config.KeyCombo[class] then HealBot_Config.KeyCombo[class] = {} end @@ -150,6 +170,7 @@ function HealBot_Options_Shift_OnTextChanged(this) HealBot_Options_KeyCombo_Change() end +-- HealBot_Options_Ctrl_OnTextChanged: UI handler for OnTextChanged options panel. function HealBot_Options_Ctrl_OnTextChanged(this) local class=UnitClass("Player"); if not HealBot_Config.KeyCombo[class] then HealBot_Config.KeyCombo[class] = {} end @@ -159,6 +180,7 @@ function HealBot_Options_Ctrl_OnTextChanged(this) HealBot_Options_KeyCombo_Change() end +-- HealBot_Options_ShiftCtrl_OnTextChanged: UI handler for OnTextChanged options panel. function HealBot_Options_ShiftCtrl_OnTextChanged(this) local class=UnitClass("Player"); if not HealBot_Config.KeyCombo[class] then HealBot_Config.KeyCombo[class] = {} end @@ -168,32 +190,20 @@ function HealBot_Options_ShiftCtrl_OnTextChanged(this) HealBot_Options_KeyCombo_Change() end +-- HealBot_Options_KeyCombo_Change: Applies binding combo updates. function HealBot_Options_KeyCombo_Change() local class=UnitClass("Player"); HealBot_Config.KeyCombo[class]=HealBot_Config.KeyCombo[class]; end +-- HealBot_Options_EnableHealthy_OnLoad: UI handler for OnLoad options panel. function HealBot_Options_EnableHealthy_OnLoad(this,text) getglobal(this:GetName().."Text"):SetText(text); end +-- HealBot_Options_EnableHealthy_OnClick: UI handler for OnClick options panel. function HealBot_Options_EnableHealthy_OnClick(this) HealBot_Config.EnableHealthy = this:GetChecked() or 0; HealBot_Action_EnableButtons(); end - --------------------------------------------------------------------------------- - - - - - - - - - --------------------------------------------------------------------------------- --- Chat Custom Messages UI Logic --------------------------------------------------------------------------------- - diff --git a/HealBot_View_Layout.lua b/HealBot_View_Layout.lua index 4283859..f53d49d 100644 --- a/HealBot_View_Layout.lua +++ b/HealBot_View_Layout.lua @@ -17,6 +17,7 @@ HealBot_Action_HealFocus = {}; HealBot_Action_HealButtons = {}; HealBot_Action_UnitButtons = {}; +-- HealBot_Action_SetTexture: Internal utility: HealBot_Action_SetTexture function HealBot_Action_SetTexture(bar, btexture) if not bar then return end if btexture == 10 then @@ -26,6 +27,7 @@ function HealBot_Action_SetTexture(bar, btexture) end end +-- HealBot_HealthColor: Computes health bar RGBA based on debuffs and class. function HealBot_HealthColor(unit, hlth, maxhlth) if HealBot_UnitDebuff[unit] then local debuff_type = HealBot_UnitDebuff[unit] @@ -85,6 +87,7 @@ function HealBot_HealthColor(unit, hlth, maxhlth) return r, g, b, a; end +-- HealBot_Action_HealthBar: Internal utility: HealBot_Action_HealthBar function HealBot_Action_HealthBar(button) if not button.bar then button.bar = getglobal(button:GetName() .. "Bar") @@ -92,6 +95,7 @@ function HealBot_Action_HealthBar(button) return button.bar; end +-- HealBot_Action_HealthBar2: Internal utility: HealBot_Action_HealthBar2 function HealBot_Action_HealthBar2(button) if not button.bar2 then button.bar2 = getglobal(button:GetName() .. "Bar2") @@ -99,6 +103,7 @@ function HealBot_Action_HealthBar2(button) return button.bar2; end +-- HealBot_Action_EnableButton: Updates a button's health, color, text, and debuffs. function HealBot_Action_EnableButton(button) local unit = button.unit; local state = HealBot_Model.units[unit] @@ -270,12 +275,14 @@ function HealBot_Action_EnableButton(button) end end +-- HealBot_Action_EnableButtons: Internal utility: HealBot_Action_EnableButtons function HealBot_Action_EnableButtons() for index, button in pairs(HealBot_Action_HealButtons) do HealBot_Action_EnableButton(button) end end +-- HealBot_Action_RefreshButton: Calls EnableButton if unit is valid. function HealBot_Action_RefreshButton(button) if not button then return end local unit = button.unit; @@ -284,6 +291,7 @@ function HealBot_Action_RefreshButton(button) end end +-- HealBot_Action_ResetSkin: Internal utility: HealBot_Action_ResetSkin function HealBot_Action_ResetSkin() HealBot_Action_PartyChanged() if HealBot_Options:IsVisible() then @@ -299,6 +307,7 @@ function HealBot_Action_ResetSkin() end end +-- HealBot_Action_RefreshButtons: Refreshes all active unit buttons. function HealBot_Action_RefreshButtons(unit) if unit and HealBot_Action_UnitButtons[unit] then for index, button in pairs(HealBot_Action_UnitButtons[unit]) do @@ -311,6 +320,7 @@ function HealBot_Action_RefreshButtons(unit) end end +-- HealBot_Action_RefreshPower: Fast path: updates only mana bar textures. function HealBot_Action_RefreshPower(unit) if not unit or not HealBot_Action_UnitButtons[unit] then return end local state = HealBot_Model.units[unit] @@ -326,6 +336,7 @@ function HealBot_Action_RefreshPower(unit) end end +-- HealBot_Action_PositionButton: Positions a button element within the grid. function HealBot_Action_PositionButton(button, OsetX, OsetY, bwidth, bheight, checked, header) local brspace = HealBot_Config.brspace[HealBot_Config.Current_Skin] or 3; if header then @@ -361,6 +372,7 @@ function HealBot_Action_PositionButton(button, OsetX, OsetY, bwidth, bheight, ch return OsetY; end +-- HealBot_Action_PositionButtonHorizontal: Internal utility: HealBot_Action_PositionButtonHorizontal function HealBot_Action_PositionButtonHorizontal(button, OsetX, OsetY, bwidth, bheight, checked, header) local bcspace = HealBot_Config.bcspace[HealBot_Config.Current_Skin] or 3; if header then @@ -396,6 +408,7 @@ function HealBot_Action_PositionButtonHorizontal(button, OsetX, OsetY, bwidth, b return OsetX; end +-- HealBot_Action_SetHeightWidth: Resizes the main panel frame to fit content. function HealBot_Action_SetHeightWidth(width, height, bwidth) if HealBot_ActionHeight then HealBot_Action:SetHeight(HealBot_ActionHeight); @@ -421,6 +434,7 @@ function HealBot_Action_SetHeightWidth(width, height, bwidth) HealBot_Action:SetWidth(width + bwidth + bpadding) end +-- HealBot_Action_SetHealButton: Assigns a unit string to a grid button slot. function HealBot_Action_SetHealButton(index, unit) if not index then HealBot_Action_HealButtons = {}; @@ -440,6 +454,7 @@ function HealBot_Action_SetHealButton(index, unit) return button; end +-- HealBot_Action_PartyChanged: Rebuilds the entire grid layout based on roster. function HealBot_Action_PartyChanged() if HealBot_IsFighting then HealBot_Action_AppendNewUnits() @@ -1018,6 +1033,7 @@ function HealBot_Action_PartyChanged() HealBot_Action_ShowFrame(); end +-- HealBot_Action_ShowFrame: Internal utility: HealBot_Action_ShowFrame function HealBot_Action_ShowFrame() if HealBot_Config.ActionVisible == 1 then if HealBot_Config.HideSolo == 1 and GetNumPartyMembers() == 0 and GetNumRaidMembers() == 0 then @@ -1030,6 +1046,7 @@ function HealBot_Action_ShowFrame() end end +-- HealBot_Action_Reset: Resets action panel position and rebuilds layout. function HealBot_Action_Reset() HealBot_Action:ClearAllPoints(); HealBot_Action:SetPoint("TOP", "MinimapCluster", "BOTTOM", 7, 10); @@ -1038,6 +1055,7 @@ function HealBot_Action_Reset() HealBot_Action_PartyChanged(); end +-- HealBot_Action_Refresh: Alias for refreshing a unit button. function HealBot_Action_Refresh(unit) if (UnitIsDeadOrGhost("player")) or (UnitOnTaxi("player")) then if HealBot_Config.AutoClose == 1 and HealBot_Config.ActionVisible ~= 0 then @@ -1064,6 +1082,7 @@ function HealBot_Action_Refresh(unit) end end end +-- HealBot_Action_AppendUnit: Internal utility: HealBot_Action_AppendUnit function HealBot_Action_AppendUnit(unit) if not HealBot_Grid_LastI then return end if HealBot_Grid_LastI >= 100 then return end @@ -1126,6 +1145,7 @@ function HealBot_Action_AppendUnit(unit) HealBot_Action_SetHeightWidth(totalOffsetX, totalOffsetY + bpadding, bwidth) end +-- HealBot_Action_AppendNewUnits: Internal utility: HealBot_Action_AppendNewUnits function HealBot_Action_AppendNewUnits() if not HealBot_Grid_LastI then return end diff --git a/HealBot_View_Tooltip.lua b/HealBot_View_Tooltip.lua index 7c1dd11..4c09515 100644 --- a/HealBot_View_Tooltip.lua +++ b/HealBot_View_Tooltip.lua @@ -3,6 +3,7 @@ HealBot_Action_TooltipUnit = nil +-- HealBot_Tooltip_GetSpellColor: Internal utility: HealBot_Tooltip_GetSpellColor function HealBot_Tooltip_GetSpellColor(spell) local r, g, b = 1, 1, 0 -- default yellow if spell and HealBot_Spells and HealBot_Spells[spell] and HealBot_Spells[spell].Mana then @@ -13,6 +14,7 @@ function HealBot_Tooltip_GetSpellColor(spell) return r, g, b end +-- HealBot_Action_RefreshTooltip: Builds and displays spell tooltip on hover. function HealBot_Action_RefreshTooltip(unit) if HealBot_Config.ShowTooltip==0 then return end if not unit then unit = HealBot_Action_TooltipUnit end @@ -149,6 +151,7 @@ function HealBot_Action_RefreshTooltip(unit) HealBot_Tooltip:Show(); end +-- HealBot_Action_Tooltip_SpellInfo: Internal utility: HealBot_Action_Tooltip_SpellInfo function HealBot_Action_Tooltip_SpellInfo(spell,linenum) local text if HealBot_Spells[spell] then @@ -184,6 +187,7 @@ function HealBot_Action_Tooltip_SpellInfo(spell,linenum) return linenum end +-- HealBot_Action_Tooltip_SpellSummary: Internal utility: HealBot_Action_Tooltip_SpellSummary function HealBot_Action_Tooltip_SpellSummary(spell) local ret_val = " "; if HealBot_Spells[spell] then @@ -211,6 +215,7 @@ function HealBot_Action_Tooltip_SpellSummary(spell) return ret_val end +-- HealBot_Action_Tooltip_CheckForInstant: Internal utility: HealBot_Action_Tooltip_CheckForInstant function HealBot_Action_Tooltip_CheckForInstant(unit,spell,upd,linenum,check) if HealBot_Spells[spell] then if HealBot_Spells[spell].CastTime == 0 then @@ -229,6 +234,7 @@ function HealBot_Action_Tooltip_CheckForInstant(unit,spell,upd,linenum,check) return check+1,linenum; end +-- HealBot_Action_Tooltip_SetLineLeft: Internal utility: HealBot_Action_Tooltip_SetLineLeft function HealBot_Action_Tooltip_SetLineLeft(Text,R,G,B,linenum) local txtL = getglobal("HealBot_TooltipTextL" .. linenum) txtL:SetTextColor(R,G,B) @@ -236,6 +242,7 @@ function HealBot_Action_Tooltip_SetLineLeft(Text,R,G,B,linenum) txtL:Show() end +-- HealBot_Action_Tooltip_SetLineRight: Internal utility: HealBot_Action_Tooltip_SetLineRight function HealBot_Action_Tooltip_SetLineRight(Text,R,G,B,linenum) local txtR = getglobal("HealBot_TooltipTextR" .. linenum) txtR:SetTextColor(R,G,B) @@ -243,6 +250,7 @@ function HealBot_Action_Tooltip_SetLineRight(Text,R,G,B,linenum) txtR:Show() end +-- HealBot_Action_Tooltip_ClearLines: Internal utility: HealBot_Action_Tooltip_ClearLines function HealBot_Action_Tooltip_ClearLines() for j=1,30 do local txtL = getglobal("HealBot_TooltipTextL" .. j) @@ -254,6 +262,7 @@ function HealBot_Action_Tooltip_ClearLines() end end +-- HealBot_Action_ShowTooltip: Internal utility: HealBot_Action_ShowTooltip function HealBot_Action_ShowTooltip(this) if HealBot_Config.ShowTooltip==0 then return end if not this.unit then return end; @@ -263,6 +272,7 @@ function HealBot_Action_ShowTooltip(this) HealBot_Action_RefreshTooltip(this.unit); end +-- HealBot_Action_HideTooltip: Internal utility: HealBot_Action_HideTooltip function HealBot_Action_HideTooltip(this) if HealBot_Config.ShowTooltip==0 then return end HealBot_Tooltip:Hide();