WoWInterface

WoWInterface (https://www.wowinterface.com/forums/index.php)
-   Lua/XML Help (https://www.wowinterface.com/forums/forumdisplay.php?f=16)
-   -   How does SetActionUIButton work? (https://www.wowinterface.com/forums/showthread.php?t=57020)

Ethly 02-12-19 02:08 PM

How does SetActionUIButton work?
 
I was analyzing ActionButton.lua and I've found that Blizzard uses something different for handling their action bar cooldowns instead of events (event code is there, but the following code suggests that they rewrote it):
Code:

        --self:RegisterEvent("ACTIONBAR_UPDATE_COOLDOWN");                not updating cooldown from lua anymore, see SetActionUIButton
I tried to find any information about that function but did not find anything. Is it possible to use this function for my own frames? I understand that I can inherit from ActionButtonTemplate, but there's a lot of stuff there that I don't need so instead of disabling it, I'd prefer just to cut it all. Basically I want to display icon with radial cooldown and nothing else.

Fizzlemizz 02-12-19 04:49 PM

ActionButton.lua ~line 337
Code:

SetActionUIButton(self, action, self.cooldown);

Ethly 02-15-19 05:49 PM

Here's my code and it does not work:
Code:

<CheckButton parent="UIParent">
                <Size x="28" y="28"/>
                <Anchors>
                        <Anchor point="BOTTOMLEFT" relativeTo="PlayerFrame" relativePoint="TOPLEFT" x="108" y="-16"/>
                </Anchors>
                <Layers>
                        <Layer level="BACKGROUND">
                                <Texture parentKey="myicon"/>
                        </Layer>
                </Layers>
                <Frames>
                        <Cooldown inherits="CooldownFrameTemplate" parentKey="mycooldown"/>
                </Frames>
                <Scripts>
                        <OnLoad function="MUShieldSlam_OnLoad"/>
                </Scripts>
        </CheckButton>

Code:

function MUShieldSlam_OnLoad(self)
        local texture = GetActionTexture(2);
        self.myicon:SetTexture(texture);
        SetActionUIButton(self, 2, self.mycooldown);
end

I have shield slam ability on action button 2.


All times are GMT -6. The time now is 09:25 PM.

vBulletin © 2020, Jelsoft Enterprises Ltd
© 2004 - 2019 MMOUI