mirror of
https://github.com/Bluewhale1337/HealBotBlue.git
synced 2026-07-27 09:44:44 +00:00
Re
factor: fix UI layout overlaps and anchor constraints in options menu and update changelog
This commit is contained in:
+7
-5
@@ -391,7 +391,8 @@ function HealBot_Action_SetHeightWidth(width,height,bwidth)
|
||||
end
|
||||
HealBot_Action:SetHeight(height);
|
||||
HealBot_ActionHeight = height;
|
||||
HealBot_Action:SetWidth(width+bwidth+10)
|
||||
local bpadding = (HealBot_Config.bpadding and HealBot_Config.bpadding[HealBot_Config.Current_Skin]) or 10
|
||||
HealBot_Action:SetWidth(width+bwidth+bpadding)
|
||||
end
|
||||
|
||||
function HealBot_Action_SetHealButton(index,unit)
|
||||
@@ -776,7 +777,7 @@ if not HealBot_IsFighting then
|
||||
if HealBot_Config.HideOptions==1 then
|
||||
HealBot_Action_OptionsButton:Hide();
|
||||
else
|
||||
HealBot_Action_OptionsButton:SetPoint("BOTTOM","HealBot_Action","BOTTOM",0,10);
|
||||
HealBot_Action_OptionsButton:SetPoint("BOTTOM","HealBot_Action","BOTTOM",0,bpadding);
|
||||
HealBot_Action_OptionsButton:Show();
|
||||
MaxOffsetY = MaxOffsetY+30;
|
||||
end
|
||||
@@ -804,8 +805,8 @@ if not HealBot_IsFighting then
|
||||
HealBot_Action_AbortButton:SetWidth(width)
|
||||
HealBot_Action_AbortButton:SetHeight(bheight+abortsize);
|
||||
if HealBot_Config.HideOptions==1 then
|
||||
HealBot_Action_AbortButton:SetPoint("BOTTOM","HealBot_Action","BOTTOM",0,10);
|
||||
bar:SetPoint("BOTTOM","HealBot_Action","BOTTOM",0,10);
|
||||
HealBot_Action_AbortButton:SetPoint("BOTTOM","HealBot_Action","BOTTOM",0,bpadding);
|
||||
bar:SetPoint("BOTTOM","HealBot_Action","BOTTOM",0,bpadding);
|
||||
else
|
||||
HealBot_Action_AbortButton:SetPoint("BOTTOM","HealBot_Action_OptionsButton","TOP",0,10);
|
||||
bar:SetPoint("BOTTOM","HealBot_Action_OptionsButton","TOP",0,10);
|
||||
@@ -815,7 +816,7 @@ if not HealBot_IsFighting then
|
||||
|
||||
|
||||
|
||||
HealBot_Action_SetHeightWidth(OffsetX, MaxOffsetY+10, bwidth);
|
||||
HealBot_Action_SetHeightWidth(OffsetX, MaxOffsetY+bpadding, bwidth);
|
||||
end
|
||||
HealBot_Action_RefreshButtons();
|
||||
end
|
||||
@@ -1304,3 +1305,4 @@ end
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
+10
-4
@@ -1706,6 +1706,7 @@ function HealBot_Options_Buff_Initialize()
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
function HealBot_Options_Buff_OnClick()
|
||||
local frameName = UIDROPDOWNMENU_OPEN_MENU
|
||||
local frame = getglobal(frameName)
|
||||
@@ -1747,12 +1748,17 @@ function HealBot_Options_SetBuffs()
|
||||
UIDropDownMenu_Initialize(dropDown, HealBot_Options_Buff_Initialize)
|
||||
UIDropDownMenu_SetSelectedID(dropDown, val + 1)
|
||||
end
|
||||
|
||||
local selfCheck = getglobal("HealBot_Options_BuffSelf" .. i)
|
||||
if selfCheck then
|
||||
if HealBot_Config.BuffWatchSelf and HealBot_Config.BuffWatchSelf[i] then
|
||||
selfCheck:SetChecked(HealBot_Config.BuffWatchSelf[i])
|
||||
else
|
||||
selfCheck:SetChecked(0)
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
+33
-28
@@ -242,7 +242,7 @@
|
||||
<Anchors>
|
||||
<Anchor point="TOPLEFT" relativeTo="HealBot_Options_ShowManaBars" relativePoint="BOTTOMLEFT">
|
||||
<Offset>
|
||||
<AbsDimension x="20" y="5" />
|
||||
<AbsDimension x="20" y="-2" />
|
||||
</Offset>
|
||||
</Anchor>
|
||||
</Anchors>
|
||||
@@ -307,9 +307,9 @@
|
||||
|
||||
<CheckButton name="HealBot_Options_HideOptions" inherits="OptionsCheckButtonTemplate">
|
||||
<Anchors>
|
||||
<Anchor point="TOPLEFT" relativeTo="HealBot_Options_ShowManaBars" relativePoint="BOTTOMLEFT">
|
||||
<Anchor point="TOPLEFT" relativeTo="HealBot_Options_ManaBarsHealersOnly" relativePoint="BOTTOMLEFT">
|
||||
<Offset>
|
||||
<AbsDimension x="20" y="-10" />
|
||||
<AbsDimension x="-20" y="-2" />
|
||||
</Offset>
|
||||
</Anchor>
|
||||
</Anchors>
|
||||
@@ -323,7 +323,7 @@
|
||||
<Anchors>
|
||||
<Anchor point="TOPLEFT" relativeTo="HealBot_Options_HideOptions" relativePoint="BOTTOMLEFT">
|
||||
<Offset>
|
||||
<AbsDimension x="0" y="5" />
|
||||
<AbsDimension x="0" y="-2" />
|
||||
</Offset>
|
||||
</Anchor>
|
||||
</Anchors>
|
||||
@@ -336,7 +336,7 @@
|
||||
<Anchors>
|
||||
<Anchor point="TOPLEFT" relativeTo="HealBot_Options_HideAbort" relativePoint="BOTTOMLEFT">
|
||||
<Offset>
|
||||
<AbsDimension x="0" y="5" />
|
||||
<AbsDimension x="0" y="-2" />
|
||||
</Offset>
|
||||
</Anchor>
|
||||
</Anchors>
|
||||
@@ -349,7 +349,7 @@
|
||||
<Anchors>
|
||||
<Anchor point="TOPLEFT" relativeTo="HealBot_Options_QualityRange" relativePoint="BOTTOMLEFT">
|
||||
<Offset>
|
||||
<AbsDimension x="0" y="5" />
|
||||
<AbsDimension x="0" y="-2" />
|
||||
</Offset>
|
||||
</Anchor>
|
||||
</Anchors>
|
||||
@@ -1739,9 +1739,9 @@
|
||||
<AbsDimension x="123" y="17" />
|
||||
</Size>
|
||||
<Anchors>
|
||||
<Anchor point="TOPLEFT" relativeTo="HealBot_Options_FramePaddingS" relativePoint="TOPLEFT">
|
||||
<Anchor point="TOPLEFT" relativeTo="HealBot_Options_BarBRSpaceS" relativePoint="TOPLEFT">
|
||||
<Offset>
|
||||
<AbsDimension x="10" y="-35" />
|
||||
<AbsDimension x="0" y="-35" />
|
||||
</Offset>
|
||||
</Anchor>
|
||||
</Anchors>
|
||||
@@ -1843,9 +1843,9 @@
|
||||
<AbsDimension x="87" y="20"/>
|
||||
</Size>
|
||||
<Anchors>
|
||||
<Anchor point="BOTTOM" relativeTo="HealBot_Options_FontHeight" relativePoint="TOPLEFT">
|
||||
<Anchor point="TOPLEFT" relativeTo="HealBot_Options_FontHeight" relativePoint="BOTTOMLEFT">
|
||||
<Offset>
|
||||
<AbsDimension x="19" y="-50"/>
|
||||
<AbsDimension x="0" y="-15"/>
|
||||
</Offset>
|
||||
</Anchor>
|
||||
</Anchors>
|
||||
@@ -1858,9 +1858,9 @@
|
||||
<AbsDimension x="87" y="20"/>
|
||||
</Size>
|
||||
<Anchors>
|
||||
<Anchor point="BOTTOM" relativeTo="HealBot_Options_FontHeight" relativePoint="TOPLEFT">
|
||||
<Anchor point="TOPLEFT" relativeTo="HealBot_Options_FontHeight" relativePoint="BOTTOMLEFT">
|
||||
<Offset>
|
||||
<AbsDimension x="37" y="-50"/>
|
||||
<AbsDimension x="0" y="-15"/>
|
||||
</Offset>
|
||||
</Anchor>
|
||||
</Anchors>
|
||||
@@ -1888,9 +1888,9 @@
|
||||
<AbsDimension x="87" y="20"/>
|
||||
</Size>
|
||||
<Anchors>
|
||||
<Anchor point="BOTTOM" relativeTo="HealBot_Options_FontHeight" relativePoint="TOPLEFT">
|
||||
<Anchor point="TOPLEFT" relativeTo="HealBot_Options_FontHeight" relativePoint="BOTTOMLEFT">
|
||||
<Offset>
|
||||
<AbsDimension x="37" y="-50"/>
|
||||
<AbsDimension x="0" y="-15"/>
|
||||
</Offset>
|
||||
</Anchor>
|
||||
</Anchors>
|
||||
@@ -2575,9 +2575,9 @@
|
||||
<AbsDimension x="80" y="22"/>
|
||||
</Size>
|
||||
<Anchors>
|
||||
<Anchor point="LEFT" relativeTo="HealBot_Options_ChatMsg1_Text" relativePoint="RIGHT">
|
||||
<Anchor point="TOPLEFT" relativeTo="HealBot_Options_ChatMsg1_Text" relativePoint="BOTTOMLEFT">
|
||||
<Offset>
|
||||
<AbsDimension x="10" y="0"/>
|
||||
<AbsDimension x="0" y="-5"/>
|
||||
</Offset>
|
||||
</Anchor>
|
||||
</Anchors>
|
||||
@@ -2592,7 +2592,7 @@
|
||||
<Anchors>
|
||||
<Anchor point="TOPLEFT">
|
||||
<Offset>
|
||||
<AbsDimension x="0" y="-70" />
|
||||
<AbsDimension x="0" y="-90" />
|
||||
</Offset>
|
||||
</Anchor>
|
||||
</Anchors>
|
||||
@@ -2621,9 +2621,9 @@
|
||||
<AbsDimension x="80" y="22"/>
|
||||
</Size>
|
||||
<Anchors>
|
||||
<Anchor point="LEFT" relativeTo="HealBot_Options_ChatMsg2_Text" relativePoint="RIGHT">
|
||||
<Anchor point="TOPLEFT" relativeTo="HealBot_Options_ChatMsg2_Text" relativePoint="BOTTOMLEFT">
|
||||
<Offset>
|
||||
<AbsDimension x="10" y="0"/>
|
||||
<AbsDimension x="0" y="-5"/>
|
||||
</Offset>
|
||||
</Anchor>
|
||||
</Anchors>
|
||||
@@ -2638,7 +2638,7 @@
|
||||
<Anchors>
|
||||
<Anchor point="TOPLEFT">
|
||||
<Offset>
|
||||
<AbsDimension x="0" y="-110" />
|
||||
<AbsDimension x="0" y="-150" />
|
||||
</Offset>
|
||||
</Anchor>
|
||||
</Anchors>
|
||||
@@ -2667,9 +2667,9 @@
|
||||
<AbsDimension x="80" y="22"/>
|
||||
</Size>
|
||||
<Anchors>
|
||||
<Anchor point="LEFT" relativeTo="HealBot_Options_ChatMsg3_Text" relativePoint="RIGHT">
|
||||
<Anchor point="TOPLEFT" relativeTo="HealBot_Options_ChatMsg3_Text" relativePoint="BOTTOMLEFT">
|
||||
<Offset>
|
||||
<AbsDimension x="10" y="0"/>
|
||||
<AbsDimension x="0" y="-5"/>
|
||||
</Offset>
|
||||
</Anchor>
|
||||
</Anchors>
|
||||
@@ -2684,7 +2684,7 @@
|
||||
<Anchors>
|
||||
<Anchor point="TOPLEFT">
|
||||
<Offset>
|
||||
<AbsDimension x="0" y="-150" />
|
||||
<AbsDimension x="0" y="-210" />
|
||||
</Offset>
|
||||
</Anchor>
|
||||
</Anchors>
|
||||
@@ -2713,9 +2713,9 @@
|
||||
<AbsDimension x="80" y="22"/>
|
||||
</Size>
|
||||
<Anchors>
|
||||
<Anchor point="LEFT" relativeTo="HealBot_Options_ChatMsg4_Text" relativePoint="RIGHT">
|
||||
<Anchor point="TOPLEFT" relativeTo="HealBot_Options_ChatMsg4_Text" relativePoint="BOTTOMLEFT">
|
||||
<Offset>
|
||||
<AbsDimension x="10" y="0"/>
|
||||
<AbsDimension x="0" y="-5"/>
|
||||
</Offset>
|
||||
</Anchor>
|
||||
</Anchors>
|
||||
@@ -2730,7 +2730,7 @@
|
||||
<Anchors>
|
||||
<Anchor point="TOPLEFT">
|
||||
<Offset>
|
||||
<AbsDimension x="0" y="-190" />
|
||||
<AbsDimension x="0" y="-270" />
|
||||
</Offset>
|
||||
</Anchor>
|
||||
</Anchors>
|
||||
@@ -2759,9 +2759,9 @@
|
||||
<AbsDimension x="80" y="22"/>
|
||||
</Size>
|
||||
<Anchors>
|
||||
<Anchor point="LEFT" relativeTo="HealBot_Options_ChatMsg5_Text" relativePoint="RIGHT">
|
||||
<Anchor point="TOPLEFT" relativeTo="HealBot_Options_ChatMsg5_Text" relativePoint="BOTTOMLEFT">
|
||||
<Offset>
|
||||
<AbsDimension x="10" y="0"/>
|
||||
<AbsDimension x="0" y="-5"/>
|
||||
</Offset>
|
||||
</Anchor>
|
||||
</Anchors>
|
||||
@@ -2857,3 +2857,8 @@
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -1,6 +1,9 @@
|
||||
**HealBotBlue**
|
||||
By Bluewhale.
|
||||
|
||||
Original Vanilla HealBot, while being a staple healing addon in Wrath and later expansions, was in its infancy during Vanilla WoW. It was a memory and CPU hog that ate up resources, featured a clunky UI, and offered limited functions. To fix all of the above while still using it as a base framework, I refactored the entire codebase. The monolithic code structure was split to follow a more modern approach (MVC design pattern), making it more stable and easily editable. Additionally, the inefficient AURA scanning was replaced with lightweight (Observer Pattern) reactive programming. It now updates only what is necessary when a trigger fires, rather than performing clumsy, continuous scans of a 40-man raid. By doing so, I managed to throttle down CPU and memory usage significantly, placing it on par with modern addons. Additional functionalities are being added over time to provide a holistic, healer-centered raid frame.
|
||||
|
||||
|
||||
> **NOTE:** For HealBot to work correctly, the **Selfcast** feature in WoW options needs to be disabled.
|
||||
|
||||
### Reporting Errors
|
||||
@@ -19,6 +22,10 @@ Default installation path: `C:\Program Files\World of Warcraft\Interface\AddOns\
|
||||
|
||||
### Change Log
|
||||
|
||||
**v1.2.1**
|
||||
* **UI Layout Fixes:** Fixed slider width constraints in the Skin menu causing layout overlaps. Realigned Chat tab buttons to ensure they do not exceed the window bounds. Fixed Color Picker anchors.
|
||||
* **Menu Cleanup:** Fixed Options panel checkboxes overlapping due to incorrect vertical spacing offsets.
|
||||
|
||||
**v1.2**
|
||||
* **Class Colors & Dimming:** Frame text now inherits class colors with black outline for better visibility. Missing buffs intelligently dim the class color and turn the text yellow.
|
||||
* **Modern Skin Updates:** Fixed white background bugs in modern skins and brightened debuff indicators.
|
||||
@@ -33,11 +40,12 @@ Default installation path: `C:\Program Files\World of Warcraft\Interface\AddOns\
|
||||
* **Bug Fix:** Fixed division-by-zero math errors during UI scaling that caused the addon to crash.
|
||||
|
||||
**v1.0**
|
||||
* **Buff tracking** - Added submenu for tracking buffs on element
|
||||
* ***Hot tracking with icons** - Hots and DoTs display on player bars
|
||||
* **Incoming heals use newer protocol**
|
||||
* **Chat functionalities** - modified chat functionalities for spellcast announcements
|
||||
* **Mana Bars** - Mana bars for healers in the grid added togglable from options menu.
|
||||
* **Buff tracking:** Added a submenu for tracking buffs on elements.
|
||||
* **HoT tracking with icons:** HoTs and DoTs display on player bars.
|
||||
* **Incoming heals:** Now using a newer protocol.
|
||||
* **Chat functionalities:** Modified chat functionalities for spellcast announcements.
|
||||
* **Mana Bars:** Mana bars for healers in the grid added, toggleable from the options menu.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user